diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/elf64-x86-64.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8abbfcb..11fbdab 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2017-04-19 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/21401 + * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Don't abort + on on undefined IFUNC symbol in the second PLT. + 2017-04-19 Wedson Almeida Filho <wedsonaf@gmail.com> * peXXigen.c (pe_print_reloc): Correct chunk_end. diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c index bf10893..746b847 100644 --- a/bfd/elf64-x86-64.c +++ b/bfd/elf64-x86-64.c @@ -6013,7 +6013,7 @@ elf_x86_64_finish_dynamic_symbol (bfd *output_bfd, got_offset = h->got.offset; if (got_offset == (bfd_vma) -1 - || h->type == STT_GNU_IFUNC + || (h->type == STT_GNU_IFUNC && h->def_regular) || plt == NULL || got == NULL) abort (); |