aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2015-12-07 13:52:01 +1030
committerAlan Modra <amodra@gmail.com>2015-12-07 13:52:01 +1030
commitcbf959729423640e28a0d571338d3c8045cbb1e1 (patch)
treeeffa35927d0b86145a691ea37273431d55460df8 /bfd/ChangeLog
parentc20f6f63eda61348326a861a155716b8d9073307 (diff)
downloadgdb-cbf959729423640e28a0d571338d3c8045cbb1e1.zip
gdb-cbf959729423640e28a0d571338d3c8045cbb1e1.tar.gz
gdb-cbf959729423640e28a0d571338d3c8045cbb1e1.tar.bz2
PowerPC ifunc with local symbols
This fixes some cases where the linker would incorrectly error on plt relocs to local ifunc symbols. I've also tidied plt and ifunc handling for ppc64, where check_relocs was allowing for the possibility of plt calls via addr14/addr24 relocs but relocate_section was not. * elf32-ppc.c (ppc_elf_check_relocs): Don't error on local ifunc plt call. Wrap long lines. (ppc_elf_relocate_section): Wrap long lines. * elf64-ppc.c (ppc64_elf_check_relocs): Don't error on local ifunc plt calls. Move __tls_get_addr checks later. Don't create plt for addr14/addr24 relocs. (ppc64_elf_gc_sweep_hook): Adjust to suit check_relocs changes. (ppc64_elf_relocate_section): Correct local ifunc handling for PLT64, PLT32 and PLT16 relocs.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog12
1 files changed, 12 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 710b790..db48e4b 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,17 @@
2015-12-07 Alan Modra <amodra@gmail.com>
+ * elf32-ppc.c (ppc_elf_check_relocs): Don't error on local ifunc
+ plt call. Wrap long lines.
+ (ppc_elf_relocate_section): Wrap long lines.
+ * elf64-ppc.c (ppc64_elf_check_relocs): Don't error on local ifunc
+ plt calls. Move __tls_get_addr checks later. Don't create plt
+ for addr14/addr24 relocs.
+ (ppc64_elf_gc_sweep_hook): Adjust to suit check_relocs changes.
+ (ppc64_elf_relocate_section): Correct local ifunc handling for
+ PLT64, PLT32 and PLT16 relocs.
+
+2015-12-07 Alan Modra <amodra@gmail.com>
+
PR19323
* elfcode.h (elf_object_p): Check for ridiculous e_shnum and
e_phnum values.