aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgcc/ChangeLog7
-rw-r--r--libgcc/config/alpha/linux-unwind.h2
-rw-r--r--libjava/ChangeLog7
-rw-r--r--libjava/include/dwarf2-signal.h15
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 \