From 182a0c1121794e8785a8401f6e1409a62d5e9ebb Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Tue, 7 Sep 2010 14:45:00 -0700 Subject: [PATCH] Always do output_function_exception_table before assemble_end_function. From-SVN: r163974 --- gcc/ChangeLog | 5 +++++ gcc/final.c | 12 +++--------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3f027bd2e15..3b2acced8db 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2010-09-07 Richard Henderson + + * final.c (rest_of_handle_final): Unconditionally do + output_function_exception_table before assemble_end_function. + 2010-09-07 Jan Hubicka * tree-inline.c (tree_inlinable_function_p): Do not test DECL_REPLACEABLE_P. diff --git a/gcc/final.c b/gcc/final.c index 06ebc17dade..79cd85e735c 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -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. */