aboutsummaryrefslogtreecommitdiff
path: root/ld/emultempl/ppc64elf.em
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2014-08-18 09:33:35 +0930
committerAlan Modra <amodra@gmail.com>2014-08-18 09:33:35 +0930
commit759388538d1339f6a634b2777e24f46427dd9c96 (patch)
tree7476c5a31a0fe3ebf289411c3b02897a4f6d6211 /ld/emultempl/ppc64elf.em
parent1e53931944810798e6741f664bd3ec727272fe11 (diff)
downloadgdb-759388538d1339f6a634b2777e24f46427dd9c96.zip
gdb-759388538d1339f6a634b2777e24f46427dd9c96.tar.gz
gdb-759388538d1339f6a634b2777e24f46427dd9c96.tar.bz2
Return error status from bfd_elf_discard_info.
bfd/ * elflink.c (bfd_elf_discard_info): Return int error status. * stabs.c (_bfd_discard_section_stabs): Comment typo fix. * bfd-in.h (bfd_elf_discard_info): Updata prototype. * bfd-in2.h: Regenerate. ld/ * emultempl/aarch64elf.em (gld${EMULATION_NAME}_after_allocation): Handle error status from bfd_elf_discard_info. * emultempl/armelf.em: Likewise. * emultempl/elf32.em: Likewise. * emultempl/hppaelf.em: Likewise. * emultempl/metagelf.em: Likewise. * emultempl/nios2elf.em: Likewise. * emultempl/ppc64elf.em: Likewise. * emultempl/tic6xdsbt.em: Likewise. * emultempl/vms.em: Likewise.
Diffstat (limited to 'ld/emultempl/ppc64elf.em')
-rw-r--r--ld/emultempl/ppc64elf.em12
1 files changed, 10 insertions, 2 deletions
diff --git a/ld/emultempl/ppc64elf.em b/ld/emultempl/ppc64elf.em
index d45fdac..3e316af 100644
--- a/ld/emultempl/ppc64elf.em
+++ b/ld/emultempl/ppc64elf.em
@@ -458,18 +458,26 @@ build_section_lists (lang_statement_union_type *statement)
static void
gld${EMULATION_NAME}_after_allocation (void)
{
+ int ret;
+
/* bfd_elf_discard_info just plays with data and debugging sections,
ie. doesn't affect code size, so we can delay resizing the
sections. It's likely we'll resize everything in the process of
adding stubs. */
- if (bfd_elf_discard_info (link_info.output_bfd, &link_info))
+ ret = bfd_elf_discard_info (link_info.output_bfd, &link_info);
+ if (ret < 0)
+ {
+ einfo ("%X%P: .eh_frame/.stab edit: %E\n");
+ return;
+ }
+ else if (ret > 0)
need_laying_out = 1;
/* If generating a relocatable output file, then we don't have any
stubs. */
if (stub_file != NULL && !link_info.relocatable)
{
- int ret = ppc64_elf_setup_section_lists (&link_info);
+ ret = ppc64_elf_setup_section_lists (&link_info);
if (ret < 0)
einfo ("%X%P: can not size stub section: %E\n");
else if (ret > 0)