https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113803

--- Comment #6 from Florian Weimer <fw at gcc dot gnu.org> ---
I we knew that the last successfully executed instruction was an indirect call
or branch (assumed to be tail call), we could use the return address at the top
of the stack, for architectures where call instructions push the return address
onto the stack. This is probably what GDB is doing.

The issue is of course that if the fault was caused by something else, we
should instead the program counter in the signal frame to continue unwinding.
Maybe we could special-case this for PC == 0, which is obviously invalid.

Reply via email to