From 771a9c5fb3110647de627abeba91c909b254ef12 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 14 Mar 2008 04:42:44 +0000 Subject: [PATCH] * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect spu_elf_build_stubs with is_spu_target. --- ld/ChangeLog | 5 +++++ ld/emultempl/spuelf.em | 23 +++++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 179f7a7..9850e52 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2008-03-14 Alan Modra + + * emultempl/spuelf.em (gld${EMULATION_NAME}_finish): Protect + spu_elf_build_stubs with is_spu_target. + 2008-03-13 Alan Modra * Makefile.am: Run "make dep-am". diff --git a/ld/emultempl/spuelf.em b/ld/emultempl/spuelf.em index 14d1d9e..fa28212 100644 --- a/ld/emultempl/spuelf.em +++ b/ld/emultempl/spuelf.em @@ -229,20 +229,23 @@ gld${EMULATION_NAME}_finish (void) gld${EMULATION_NAME}_map_segments (need_laying_out); - if (is_spu_target () && local_store_lo < local_store_hi) + if (is_spu_target ()) { - asection *s; + if (local_store_lo < local_store_hi) + { + asection *s; + + s = spu_elf_check_vma (link_info.output_bfd, + local_store_lo, local_store_hi); + if (s != NULL) + einfo ("%X%P: %A exceeds local store range\n", s); + } - s = spu_elf_check_vma (link_info.output_bfd, - local_store_lo, local_store_hi); - if (s != NULL) - einfo ("%X%P: %A exceeds local store range\n", s); + if (!spu_elf_build_stubs (&link_info, + emit_stub_syms || link_info.emitrelocations)) + einfo ("%X%P: can not build overlay stubs: %E\n"); } - if (!spu_elf_build_stubs (&link_info, - emit_stub_syms || link_info.emitrelocations)) - einfo ("%X%P: can not build overlay stubs: %E\n"); - finish_default (); } -- 2.7.4