diff options
author | Alan Modra <amodra@gmail.com> | 2022-01-19 13:28:04 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2022-01-19 16:45:45 +1030 |
commit | edca615ac1901ddab9beec51a4bcf8395c307109 (patch) | |
tree | 674ea073aac0ccf46b9bf9a3f8614b10e9698e5c /bfd | |
parent | 8f22c9532b0a568046b8d05aa90631be822bba5f (diff) | |
download | gdb-edca615ac1901ddab9beec51a4bcf8395c307109.zip gdb-edca615ac1901ddab9beec51a4bcf8395c307109.tar.gz gdb-edca615ac1901ddab9beec51a4bcf8395c307109.tar.bz2 |
PowerPC64 DT_RELR local PLT
Similarly to the local GOT case.
* elf64-ppc.c (ppc64_elf_size_dynamic_sections): Don't allocate
space for PLT relocs against local syms when enable_dt_relr.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/elf64-ppc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c index 0ac96af..dccd535 100644 --- a/bfd/elf64-ppc.c +++ b/bfd/elf64-ppc.c @@ -10356,7 +10356,8 @@ ppc64_elf_size_dynamic_sections (bfd *output_bfd, s = htab->pltlocal; ent->plt.offset = s->size; s->size += LOCAL_PLT_ENTRY_SIZE (htab); - if (bfd_link_pic (info)) + if (bfd_link_pic (info) + && !(info->enable_dt_relr && !htab->opd_abi)) htab->relpltlocal->size += sizeof (Elf64_External_Rela); } } |