Exception causing insns in delay slots
David S. Miller
davem@redhat.com
Fri Apr 26 03:52:00 GMT 2002
From: Jason Merrill <jason@redhat.com>
Date: Fri, 26 Apr 2002 11:43:39 +0100
context->ra - 1 isn't supposed to be the previous instruction; it's
supposed to point somewhere inside the throwing instruction.
Aha, that makes sense.
> Basically, for signal frame dwarf2 unwind to work in the current
> framework the signal handler advances the program counter past
> the exception causing instruction and that value minus one has to
> be within the exception causing instruction.
Sounds right to me. What's the problem?
No problem, just didn't understand how it was supposed
to work I guess.
The dwarf2 unwind information does not know about delay slots; it assumes
that code is executed linearly, so it's important that the shuffling of
instructions for delay slot scheduling doesn't affect register save
information. Other than that, it should be fine.
Ok, this seems to doubly confirm the need for my reorg fix.
More information about the Gcc-patches
mailing list