From f51430ed7aa820f0c77e0095a5b7a1a7846fc345 Mon Sep 17 00:00:00 2001 From: Mike Stump Date: Fri, 16 May 1997 00:58:40 +0000 Subject: [PATCH] except.c (expand_start_all_catch): If the machine needs to perform any actions at the start of an expcetion... * except.c (expand_start_all_catch): If the machine needs to perform any actions at the start of an expcetion handler that hasn't already been done, use gen_exception_receiver to emit it. (expand_leftover_cleanups): Likewise. * alpha/alpha.md (exception_receiver): Use it. * pa/pa.h (exception_receiver): Use it. Fix -fpic on hppa when excetpions are throw across shared libraries. From-SVN: r14070 --- gcc/except.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gcc/except.c b/gcc/except.c index 225b656c519..7fcce82668a 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -1159,6 +1159,12 @@ expand_leftover_cleanups () /* Output the label for the start of the exception handler. */ emit_label (entry->exception_handler_label); +#ifdef HAVE_exception_receiver + if (! exceptions_via_longjmp) + if (HAVE_exception_receiver) + emit_insn (gen_exception_receiver ()); +#endif + #ifdef HAVE_nonlocal_goto_receiver if (! exceptions_via_longjmp) if (HAVE_nonlocal_goto_receiver) @@ -1258,6 +1264,12 @@ expand_start_all_catch () end up being the handler. */ emit_label (entry->exception_handler_label); +#ifdef HAVE_exception_receiver + if (! exceptions_via_longjmp) + if (HAVE_exception_receiver) + emit_insn (gen_exception_receiver ()); +#endif + #ifdef HAVE_nonlocal_goto_receiver if (! exceptions_via_longjmp) if (HAVE_nonlocal_goto_receiver) -- 2.30.2