diff options
author | Alan Modra <amodra@gmail.com> | 2009-08-10 06:14:04 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2009-08-10 06:14:04 +0000 |
commit | 91e21fb75f551371192d1138db38b0ee73d59b71 (patch) | |
tree | a3ed837bc51a279b5a7e424c2f70cfee9e29c675 /bfd/elflink.c | |
parent | 952b2d6368151e609e6312e2e83f3ac40433ba41 (diff) | |
download | gdb-91e21fb75f551371192d1138db38b0ee73d59b71.zip gdb-91e21fb75f551371192d1138db38b0ee73d59b71.tar.gz gdb-91e21fb75f551371192d1138db38b0ee73d59b71.tar.bz2 |
* elflink.c (_bfd_elf_adjust_dynamic_symbol): Don't clear plt
info for STT_GNU_IFUNC.
* elf32-ppc.c (ppc_elf_check_relocs): Count a needed plt entry
on got refs in case the symbol turns out to be ifunc.
(ppc_elf_gc_sweep_hook): Similarly.
(ppc_elf_adjust_dynamic_symbol): Adjust assertion.
(allocate_dynrelocs): Don't specially allocate got relocs for ifunc.
(ppc_elf_size_dynamic_sections): Likewise.
(ppc_elf_relocate_section): Likewise.
Diffstat (limited to 'bfd/elflink.c')
-rw-r--r-- | bfd/elflink.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/bfd/elflink.c b/bfd/elflink.c index a117063..5818912 100644 --- a/bfd/elflink.c +++ b/bfd/elflink.c @@ -2605,6 +2605,7 @@ _bfd_elf_adjust_dynamic_symbol (struct elf_link_hash_entry *h, void *data) about symbols which are defined by one dynamic object and referenced by another one? */ if (!h->needs_plt + && h->type != STT_GNU_IFUNC && (h->def_regular || !h->def_dynamic || (!h->ref_regular |