From: Tristan Gingold Date: Mon, 12 Nov 2012 09:04:13 +0000 (+0000) Subject: bfd/ X-Git-Tag: binutils-2_23_1~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9bb099b6914cd290e0914c9f1e098922b18fb4b4;p=thirdparty%2Fbinutils-gdb.git bfd/ 2012-11-05 Andreas Krebbel PR target/14788 * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for local ifunc symbols. * elf64-s390.c (elf_s390_relocate_section): Likewise. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index fd717c96f73..62988801d96 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2012-11-05 Andreas Krebbel + + PR target/14788 + * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for + local ifunc symbols. + * elf64-s390.c (elf_s390_relocate_section): Likewise. + 2012-11-05 Alan Modra * configure.in: Apply 2012-09-10 change to config.in here. diff --git a/bfd/elf32-s390.c b/bfd/elf32-s390.c index 8d654d54867..92a1e6f657a 100644 --- a/bfd/elf32-s390.c +++ b/bfd/elf32-s390.c @@ -1013,6 +1013,9 @@ elf_s390_check_relocs (bfd *abfd, { struct plt_entry *plt; + if (htab->elf.dynobj == NULL) + htab->elf.dynobj = abfd; + if (!s390_elf_create_ifunc_sections (htab->elf.dynobj, info)) return FALSE; diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c index 8512fc0700b..62ce6dd5394 100644 --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -937,6 +937,9 @@ elf_s390_check_relocs (bfd *abfd, { struct plt_entry *plt; + if (htab->elf.dynobj == NULL) + htab->elf.dynobj = abfd; + if (!s390_elf_create_ifunc_sections (htab->elf.dynobj, info)) return FALSE;