summaryrefslogtreecommitdiff
path: root/gcc/unwind-sjlj.c
diff options
context:
space:
mode:
authordrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-16 22:10:39 +0000
committerdrow <drow@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-16 22:10:39 +0000
commit3dd1860b1097091a5822260cf1698dd600554e87 (patch)
treeeee487b7c8a5cd39e5ffc9431300e3caa8c8935e /gcc/unwind-sjlj.c
parent3b975150186b30c6f78f6e0abbaec8c375c02e71 (diff)
downloadgcc-3dd1860b1097091a5822260cf1698dd600554e87.tar.gz
* config/ia64/unwind-ia64.c (uw_advance_context): New. Call
uw_update_context. * unwind-dw2.c (uw_advance_context): Likewise. * unwind-sjlj.c (uw_advance_context): Likewise. Also call _Unwind_SjLj_Unregister. * unwind.inc (_Unwind_ForcedUnwind_Phase2): Call uw_advance_context. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107103 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/unwind-sjlj.c')
-rw-r--r--gcc/unwind-sjlj.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/unwind-sjlj.c b/gcc/unwind-sjlj.c
index 9ea6d06c9a7..4c06aa1f894 100644
--- a/gcc/unwind-sjlj.c
+++ b/gcc/unwind-sjlj.c
@@ -276,6 +276,13 @@ uw_update_context (struct _Unwind_Context *context,
context->fc = context->fc->prev;
}
+static void
+uw_advance_context (struct _Unwind_Context *context, _Unwind_FrameState *fs)
+{
+ _Unwind_SjLj_Unregister (context->fc);
+ uw_update_context (context, fs);
+}
+
static inline void
uw_init_context (struct _Unwind_Context *context)
{