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
This commit is contained in:
Kaz Kojima 2005-07-06 23:13:51 +00:00
parent 3c2d01f108
commit 0b59e81ecb
2 changed files with 10 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2005-07-06 Kaz Kojima <kkojima@gcc.gnu.org>
* 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 <kazu@codesourcery.com>
* doc/install.texi (--disable-libssp): New.

View File

@ -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 ();