OSDN Git Service

* function.c (expand_function_end): Revert part of 2005-06-27
authorkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Jul 2005 23:13:51 +0000 (23:13 +0000)
committerkkojima <kkojima@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Jul 2005 23:13:51 +0000 (23:13 +0000)
patch.  Do sjlj_emit_function_exit_after after return_label.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101673 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/function.c

index 8b502b6..d5159ab 100644 (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.
index ae8f7fd..1979185 100644 (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 ();