aboutsummaryrefslogtreecommitdiff
path: root/bfd/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2019-04-30 16:33:25 +0930
committerAlan Modra <amodra@gmail.com>2019-05-24 10:27:53 +0930
commit4a421c53cf609d68fe956c2e7270d34c0ab8500f (patch)
tree8a241a9458a01b131577c6eaf6b5ca98d91d4421 /bfd/ChangeLog
parent5663e321848545857a690f30a780187e3366bd2d (diff)
downloadgdb-4a421c53cf609d68fe956c2e7270d34c0ab8500f.zip
gdb-4a421c53cf609d68fe956c2e7270d34c0ab8500f.tar.gz
gdb-4a421c53cf609d68fe956c2e7270d34c0ab8500f.tar.bz2
PowerPC GOT_PCREL34 optimisation
bfd/ * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for R_PPC64_GOT_PCREL34. (xlate_pcrel_opt): New function. (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34. (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation. ld/ * testsuite/ld-powerpc/pcrelopt.s, * testsuite/ld-powerpc/pcrelopt.d, * testsuite/ld-powerpc/pcrelopt.sec: New test. * testsuite/ld-powerpc/powerpc.exp: Run it.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r--bfd/ChangeLog9
1 files changed, 9 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 9091df0..0e21664 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,14 @@
2019-05-24 Alan Modra <amodra@gmail.com>
+ * elf64-ppc.c (ppc64_elf_check_relocs): Set has_gotrel for
+ R_PPC64_GOT_PCREL34.
+ (xlate_pcrel_opt): New function.
+ (ppc64_elf_edit_toc): Handle R_PPC64_GOT_PCREL34.
+ (ppc64_elf_relocate_section): Edit GOT indirect to GOT relative
+ for R_PPC64_GOT_PCREL34. Implement R_PPC64_PCREL_OPT optimisation.
+
+2019-05-24 Alan Modra <amodra@gmail.com>
+
* reloc.c (BFD_RELOC_PPC64_D34, BFD_RELOC_PPC64_D34_LO),
(BFD_RELOC_PPC64_D34_HI30, BFD_RELOC_PPC64_D34_HA30),
(BFD_RELOC_PPC64_PCREL34, BFD_RELOC_PPC64_GOT_PCREL34),