aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2009-12-17 05:45:25 +0000
committerAlan Modra <amodra@gmail.com>2009-12-17 05:45:25 +0000
commit32af9f6e558c4f6bb55d36a317d2ec43b29d4bb6 (patch)
tree91477636c62b52a063ca51498d2e07b4f5c86ffe /bfd/ChangeLog
parent7c6c17221fc394471ce7e793ad4a636a55a80f16 (diff)
downloadgdb-32af9f6e558c4f6bb55d36a317d2ec43b29d4bb6.zip
gdb-32af9f6e558c4f6bb55d36a317d2ec43b29d4bb6.tar.gz
gdb-32af9f6e558c4f6bb55d36a317d2ec43b29d4bb6.tar.bz2
PR ld/11088
include/elf/ * ppc.h (R_PPC_RELAX32, R_PPC_RELAX32PC, R_PPC_RELAX32_PLT, R_PPC_RELAX32PC_PLT): Delete. (R_PPC_RELAX, R_PPC_RELAX_PLT, R_PPC_RELAX_PLTREL24): Define. bfd/ * elf32-ppc.c (update_plt_info): Clear sec here when addend is less than 32768.. (ppc_elf_check_relocs): ..rather than doing so here. Ignore new relax relocs. (ppc_elf_gc_sweep_hook): Don't segfault when symbol hiding has removed plt_entry records. (ppc_elf_tls_setup): Handle PIE calls to __tls_get_addr correctly. (ppc_elf_tls_optimize): Likewise. Also dec __tls_get_addr refcount when optimizing code using new tlsgd and tlsld marker relocs. (ppc_elf_relax_section): Differentiate relaxed PLTREL24 relocs from ADDR24 relocs using plt or glink. Don't clear the addend for R_PPC_RELAX_PLTREL24. (ppc_elf_relocate_section): Correctly handle addends on relaxed PLTREL24 relocs.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog18
1 files changed, 18 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1d430e3..1c4412a 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,6 +1,24 @@
2009-12-17 Alan Modra <amodra@bigpond.net.au>
PR ld/11088
+ * elf32-ppc.c (update_plt_info): Clear sec here when addend is
+ less than 32768..
+ (ppc_elf_check_relocs): ..rather than doing so here. Ignore new
+ relax relocs.
+ (ppc_elf_gc_sweep_hook): Don't segfault when symbol hiding has
+ removed plt_entry records.
+ (ppc_elf_tls_setup): Handle PIE calls to __tls_get_addr correctly.
+ (ppc_elf_tls_optimize): Likewise. Also dec __tls_get_addr refcount
+ when optimizing code using new tlsgd and tlsld marker relocs.
+ (ppc_elf_relax_section): Differentiate relaxed PLTREL24 relocs
+ from ADDR24 relocs using plt or glink. Don't clear the addend
+ for R_PPC_RELAX_PLTREL24.
+ (ppc_elf_relocate_section): Correctly handle addends on relaxed
+ PLTREL24 relocs.
+
+2009-12-17 Alan Modra <amodra@bigpond.net.au>
+
+ PR ld/11088
* elf64-ppc.c (ppc64_elf_gc_sweep_hook): Don't abort if symbol
hiding has nulled out plt.plist.