diff options
author | Alan Modra <modra@gmail.com> | 2010-06-25 05:20:56 +0000 |
---|---|---|
committer | Alan Modra <modra@gmail.com> | 2010-06-25 05:20:56 +0000 |
commit | b5ed89158e7a28ec1b2f54fa1628d0a5b8b4d1ff (patch) | |
tree | beaeec12e413a0b4aeb97cb8d28947092860c26d | |
parent | 711d4704cc14f5324f41a156bd08ec1f321afbd5 (diff) | |
download | cygnal-b5ed89158e7a28ec1b2f54fa1628d0a5b8b4d1ff.tar.gz cygnal-b5ed89158e7a28ec1b2f54fa1628d0a5b8b4d1ff.tar.bz2 cygnal-b5ed89158e7a28ec1b2f54fa1628d0a5b8b4d1ff.zip |
include/elf/
* ppc64.h (R_PPC64_LO_DS_OPT): Define.
bfd/
* elf64-ppc.c (toc_skip_enum): Define.
(ppc64_elf_edit_toc): Use two low bits of skip array as markers.
Optimize largetoc sequences.
(adjust_toc_syms): Update for skip array change.
(ppc64_elf_relocate_section): Handle R_PPC64_LO_DS_OPT.
ld/
* emultempl/ppc64elf.em (prelim_size_sections): New function.
(ppc_before_allocation): Use it. Size sections before toc edit too.
-rw-r--r-- | include/elf/ChangeLog | 4 | ||||
-rw-r--r-- | include/elf/ppc64.h | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index 2442c5086..8a8e118ca 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,7 @@ +2010-06-25 Alan Modra <amodra@gmail.com> + + * ppc64.h (R_PPC64_LO_DS_OPT): Define. + 2010-06-15 Joseph Myers <joseph@codesourcery.com> * tic6x-attrs.h: New. diff --git a/include/elf/ppc64.h b/include/elf/ppc64.h index dfd775da1..a18edd68f 100644 --- a/include/elf/ppc64.h +++ b/include/elf/ppc64.h @@ -140,6 +140,10 @@ START_RELOC_NUMBERS (elf_ppc64_reloc_type) RELOC_NUMBER (R_PPC64_TLSGD, 107) RELOC_NUMBER (R_PPC64_TLSLD, 108) +#ifndef RELOC_MACROS_GEN_FUNC +/* Fake relocation only used internally by ld. */ + RELOC_NUMBER (R_PPC64_LO_DS_OPT, 128) +#endif /* Support STT_GNU_IFUNC plt calls. */ RELOC_NUMBER (R_PPC64_JMP_IREL, 247) RELOC_NUMBER (R_PPC64_IRELATIVE, 248) |