Comment by kuroguro

5 years ago

Well it's not actually the function's start address, it's the instruction pointer's address for the top function (so it moves around while executing).

And going down the call tree, it's also not the start address, but the return address - so the place where in the previous function called this one.

Without debug symbols there's no way to tell if we're inside the same function block or not - it's all just addresses somewhere in the machine code.