re PR ada/23957 (ld terminated with signal 10 [Bus error] linking libgnat-4.0.sl)
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Sun, 23 Oct 2005 18:43:30 +0000 (18:43 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Sun, 23 Oct 2005 18:43:30 +0000 (18:43 +0000)
PR ada/23957
* except.c (output_function_exception_table): Call
assemble_external_libcall if we need a personality function.

From-SVN: r105819

gcc/ChangeLog
gcc/except.c

index ce0991c..2b8de76 100644 (file)
@@ -1,3 +1,9 @@
+2005-10-23  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       PR ada/23957
+       * except.c (output_function_exception_table): Call
+       assemble_external_libcall if we need a personality function.
+
 2005-10-21  Eric Botcazou  <ebotcazou@libertysurf.fr>
 
        PR rtl-optimization/24460
index 4e51d3e..7f31762 100644 (file)
@@ -3516,13 +3516,15 @@ output_function_exception_table (void)
   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;
 
 #ifdef TARGET_UNWIND_INFO
   /* TODO: Move this into target file.  */
-  assemble_external_libcall (eh_personality_libfunc);
   fputs ("\t.personality\t", asm_out_file);
   output_addr_const (asm_out_file, eh_personality_libfunc);
   fputs ("\n\t.handlerdata\n", asm_out_file);