------- Comment #1 from daney at gcc dot gnu dot org 2007-11-11 06:29 ------- The problem is that $gp is clobbered at the nonlocal_goto_receiver but it is not being restored.
Currently the nonlocal_goto_receiver has a condition of TARGET_CALL_CLOBBERED_GP, but this is not correct. I think it should be unconditional. In: http://gcc.gnu.org/viewcvs?view=rev&revision=125941 I renamed this from exception_receiver. I wonder if the exception_receiver really should be conditional on TARGET_CALL_CLOBBERED_GP in which case there should be both an exception_receiver and nonlocal_goto_receiver. It would seem so as the unwinder should restore $gp making it redundant in the exception_receiver. Hmm. This is really the same as bug 32406 I will mark it as a duplicate and reopen 32406 *** This bug has been marked as a duplicate of 32406 *** -- daney at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |DUPLICATE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34062