From 0b59e81ecb8de59520e6f8c908b6747ad9d46ee1 Mon Sep 17 00:00:00 2001 From: Kaz Kojima Date: Wed, 6 Jul 2005 23:13:51 +0000 Subject: [PATCH] function.c (expand_function_end): Revert part of 2005-06-27 patch. * function.c (expand_function_end): Revert part of 2005-06-27 patch. Do sjlj_emit_function_exit_after after return_label. From-SVN: r101673 --- gcc/ChangeLog | 5 +++++ gcc/function.c | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8b502b676b2..d5159ab9dd6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-07-06 Kaz Kojima + + * function.c (expand_function_end): Revert part of 2005-06-27 + patch. Do sjlj_emit_function_exit_after after return_label. + 2005-07-06 Kazu Hirata * doc/install.texi (--disable-libssp): New. diff --git a/gcc/function.c b/gcc/function.c index ae8f7fd978b..1979185fd74 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4403,6 +4403,11 @@ expand_function_end (void) /* Output the label for the actual return from the function. */ emit_label (return_label); + /* Let except.c know where it should emit the call to unregister + the function context for sjlj exceptions. */ + if (flag_exceptions && USING_SJLJ_EXCEPTIONS) + sjlj_emit_function_exit_after (get_last_insn ()); + /* If scalar return value was computed in a pseudo-reg, or was a named return value that got dumped to the stack, copy that to the hard return register. */ @@ -4530,11 +4535,6 @@ expand_function_end (void) /* Output the label for the naked return from the function. */ emit_label (naked_return_label); - /* Let except.c know where it should emit the call to unregister - the function context for sjlj exceptions. */ - if (flag_exceptions && USING_SJLJ_EXCEPTIONS) - sjlj_emit_function_exit_after (get_last_insn ()); - /* If stack protection is enabled for this function, check the guard. */ if (cfun->stack_protect_guard) stack_protect_epilogue (); -- 2.30.2