OSDN Git Service

* except.c (output_function_exception_table): Do not reference the
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 20 Mar 2007 03:16:25 +0000 (03:16 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 20 Mar 2007 03:16:25 +0000 (03:16 +0000)
EH personality routine for functions that do not require an
exception table.

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

gcc/ChangeLog
gcc/except.c

index 849ab90..4589400 100644 (file)
@@ -1,3 +1,9 @@
+2007-03-19  Mark Mitchell  <mark@codesourcery.com>
+
+       * except.c (output_function_exception_table): Do not reference the
+       EH personality routine for functions that do not require an
+       exception table.
+
 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
 
        PR c/30762
index 915059c..e6c1b48 100644 (file)
@@ -3633,13 +3633,13 @@ output_function_exception_table (const char * ARG_UNUSED (fnname))
   int have_tt_data;
   int tt_format_size = 0;
 
-  if (eh_personality_libfunc)
-    assemble_external_libcall (eh_personality_libfunc);
-
   /* Not all functions need anything.  */
   if (! cfun->uses_eh_lsda)
     return;
 
+  if (eh_personality_libfunc)
+    assemble_external_libcall (eh_personality_libfunc);
+
 #ifdef TARGET_UNWIND_INFO
   /* TODO: Move this into target file.  */
   fputs ("\t.personality\t", asm_out_file);