diff options
author | Alan Modra <amodra@gmail.com> | 2019-04-30 16:33:25 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2019-05-24 10:27:53 +0930 |
commit | 4a421c53cf609d68fe956c2e7270d34c0ab8500f (patch) | |
tree | 8a241a9458a01b131577c6eaf6b5ca98d91d4421 /bfd/ChangeLog | |
parent | 5663e321848545857a690f30a780187e3366bd2d (diff) | |
download | gdb-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/ChangeLog | 9 |
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), |