From 8a36d7d180fda6001941bd02b91ccf96db67e1c1 Mon Sep 17 00:00:00 2001 From: John David Anglin Date: Sun, 23 Oct 2005 18:43:30 +0000 Subject: [PATCH] re PR ada/23957 (ld terminated with signal 10 [Bus error] linking libgnat-4.0.sl) PR ada/23957 * except.c (output_function_exception_table): Call assemble_external_libcall if we need a personality function. From-SVN: r105819 --- gcc/ChangeLog | 6 ++++++ gcc/except.c | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ce0991ca769..2b8de766fbf 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-10-23 John David Anglin + + PR ada/23957 + * except.c (output_function_exception_table): Call + assemble_external_libcall if we need a personality function. + 2005-10-21 Eric Botcazou PR rtl-optimization/24460 diff --git a/gcc/except.c b/gcc/except.c index 4e51d3ef251..7f317625924 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -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);