diff options
-rw-r--r-- | libgcc/ChangeLog | 7 | ||||
-rw-r--r-- | libgcc/config/alpha/linux-unwind.h | 2 | ||||
-rw-r--r-- | libjava/ChangeLog | 7 | ||||
-rw-r--r-- | libjava/include/dwarf2-signal.h | 15 |
4 files changed, 17 insertions, 14 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 87ba1ca..54287b4 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,10 @@ +2011-10-16 Uros Bizjak <ubizjak@gmail.com> + Eric Botcazou <ebotcazou@adacore.com> + + PR target/50737 + * config/alpha/linux-unwind.h (alpha_fallback_frame_state): Set + fs->signal_frame to 1. + 2011-10-07 Ian Lance Taylor <iant@google.com> * generic-morestack-thread.c: #include <errno.h>. diff --git a/libgcc/config/alpha/linux-unwind.h b/libgcc/config/alpha/linux-unwind.h index e43aacf..629d557 100644 --- a/libgcc/config/alpha/linux-unwind.h +++ b/libgcc/config/alpha/linux-unwind.h @@ -74,5 +74,7 @@ alpha_fallback_frame_state (struct _Unwind_Context *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; } diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 53adfd4..efbf855 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,10 @@ +2011-10-16 Uros Bizjak <ubizjak@gmail.com> + Eric Botcazou <ebotcazou@adacore.com> + + PR target/50737 + * include/dwarf2-signal.h [__alpha__]: Remove MAKE_THROW_FRAME + definition. + 2011-08-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> * exception.cc (std::abort): Remove static. diff --git a/libjava/include/dwarf2-signal.h b/libjava/include/dwarf2-signal.h index 949bcc0..8129682 100644 --- a/libjava/include/dwarf2-signal.h +++ b/libjava/include/dwarf2-signal.h @@ -29,20 +29,7 @@ class java::lang::Throwable; // then throw an exception. With the dwarf2 unwinder we don't usually // need to do anything, with some minor exceptions. -#ifdef __alpha__ -#define MAKE_THROW_FRAME(_exception) \ -do \ -{ \ - /* Alpha either leaves PC pointing at a faulting instruction or the \ - following instruction, depending on the signal. SEGV always does \ - the former, so we adjust the saved PC to point to the following \ - instruction; this is what the handler in libgcc expects. */ \ - struct sigcontext *_sc = (struct sigcontext *)_p; \ - _sc->sc_pc += 4; \ -} \ -while (0) - -#elif defined(__ia64__) +#ifdef __ia64__ #define MAKE_THROW_FRAME(_exception) \ do \ |