]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Always do output_function_exception_table before assemble_end_function.
authorRichard Henderson <rth@redhat.com>
Tue, 7 Sep 2010 21:45:00 +0000 (14:45 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Tue, 7 Sep 2010 21:45:00 +0000 (14:45 -0700)
From-SVN: r163974

gcc/ChangeLog
gcc/final.c

index 3f027bd2e1544fd49593e60220a16f9afbd8d410..3b2acced8db6c4c24a96668c7c512ed80d68eae4 100644 (file)
@@ -1,3 +1,8 @@
+2010-09-07  Richard Henderson  <rth@redhat.com>
+
+       * final.c (rest_of_handle_final): Unconditionally do 
+       output_function_exception_table before assemble_end_function.
+
 2010-09-07  Jan Hubicka  <jh@suse.cz>
 
        * tree-inline.c (tree_inlinable_function_p): Do not test DECL_REPLACEABLE_P.
index 06ebc17dadee941a11883316cf14d09a0b7378de..79cd85e735cfcf6d4e1074dfbda539f759966f8f 100644 (file)
@@ -4240,19 +4240,13 @@ rest_of_handle_final (void)
   final (get_insns (), asm_out_file, optimize);
   final_end_function ();
 
-#ifdef TARGET_UNWIND_INFO
-  /* ??? The IA-64 ".handlerdata" directive must be issued before
-     the ".endp" directive that closes the procedure descriptor.  */
+  /* The IA-64 ".handlerdata" directive must be issued before the ".endp"
+     directive that closes the procedure descriptor.  Similarly, for x64 SEH.
+     Otherwise it's not strictly necessary, but it doesn't hurt either.  */
   output_function_exception_table (fnname);
-#endif
 
   assemble_end_function (current_function_decl, fnname);
 
-#ifndef TARGET_UNWIND_INFO
-  /* Otherwise, it feels unclean to switch sections in the middle.  */
-  output_function_exception_table (fnname);
-#endif
-
   user_defined_section_attribute = false;
 
   /* Free up reg info memory.  */