[PATCH, alpha]: Fix PR target/50737, FAIL: Throw_3 -O3 execution
Uros Bizjak
ubizjak@gmail.com
Sun Oct 16 10:29:00 GMT 2011
Hello!
As explained in length in the PR [1], we fail to mark signal frames
correctly, leading to the abort in EH support library.
As suggested by Eric, attached patch marks fs->signal_frame in the
same way as other dwarf2 targets.
2011-10-16 Uros Bizjak <ubizjak@gmail.com>
Eric Botcazou <ebotcazou@adacore.com>
* config/alpha/linux-unwind.h (alpha_fallback_frame_state): Set
fs->signal_frame to 1.
Patch was bootstrapped and regression tested on alphaev68-pc-linux-gnu
where it fixes all libjava failures [2].
OK for mainline SVN and release branches?
[1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50737
[2] http://gcc.gnu.org/ml/gcc-testresults/2011-10/msg01333.html
Uros.
-------------- next part --------------
Index: config/alpha/linux-unwind.h
===================================================================
--- config/alpha/linux-unwind.h (revision 179788)
+++ config/alpha/linux-unwind.h (working copy)
@@ -74,5 +74,7 @@ alpha_fallback_frame_state (struct _Unwind_Context
fs->regs.reg[64].how = REG_SAVED_OFFSET;
fs->regs.reg[64].loc.offset = (long)&sc->sc_pc - new_cfa;
fs->retaddr_column = 64;
+ fs->signal_frame = 1;
+
return _URC_NO_REASON;
}
More information about the Gcc-patches
mailing list