[Patch] MIPS: Simplify unwinding through signal frames.

David Daney ddaney@avtrex.com
Sun Nov 19 07:37:00 GMT 2006


This patch is similar to the fix for PR 26208.  MIPS does not suffer 
from the bug, but this simplifies and cleans up the code in libgcj that 
converts signals into exceptions.

The basic idea is to move all knowledge of unwinding through signal 
frames into the same place (config/mips/linux-unwind.h).  This allows 
libgcj's mips-signal.h greatly simplified.

Tested with a full bootstrap of c,c++, and java on mipsel-linux-gnu.  No 
regressions.

OK to commit?

gcc:
2006-11-18  David Daney  <ddaney@avtrex.com>

	* config/mips/linux-unwind.h (mips_fallback_frame_state): Adjust
	PC to point to following instruction.

libjava:
2006-11-18  David Daney  <ddaney@avtrex.com>

	* include/mips-signal.h (sys/syscall.h): Do not include.
	(sig_ucontext_t): Removed.
	(MAKE_THROW_FRAME): Changed to be a nop.
	(_INIT_SIG_HANDLER): New macro.
	(INIT_SEGV): Rewrote to use _INIT_SIG_HANDLER.
	(INIT_FPE): Same.



-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mips-unwind.diff.txt
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061119/aec3d5b1/attachment.txt>


More information about the Gcc-patches mailing list