aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/ChangeLog7
-rw-r--r--libgcc/unwind-seh.c5
2 files changed, 10 insertions, 2 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index c60d2fa..4c3ff91 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,10 @@
+2014-02-18 Kai Tietz <ktietz@redhat.com>
+ Jonathan Schleifer <js@webkeks.org>
+
+ PR objc/56870
+ * unwind-seh.c (_GCC_specific_handler): Pass proper
+ value to unwind-handler.
+
2014-02-12 Joseph Myers <joseph@codesourcery.com>
* soft-fp/adddf3.c: Update from glibc.
diff --git a/libgcc/unwind-seh.c b/libgcc/unwind-seh.c
index 125af97..b4a3ca1 100644
--- a/libgcc/unwind-seh.c
+++ b/libgcc/unwind-seh.c
@@ -313,8 +313,9 @@ _GCC_specific_handler (PEXCEPTION_RECORD ms_exc, void *this_frame,
ms_exc->ExceptionInformation[3] = gcc_context.reg[1];
/* Begin phase 2. Perform the unwinding. */
- RtlUnwindEx (this_frame, gcc_context.ra, ms_exc, gcc_exc,
- ms_orig_context, ms_disp->HistoryTable);
+ RtlUnwindEx (this_frame, gcc_context.ra, ms_exc,
+ (PVOID)gcc_context.reg[0], ms_orig_context,
+ ms_disp->HistoryTable);
}
/* In _Unwind_RaiseException we return _URC_FATAL_PHASE1_ERROR. */