diff options
author | Alan Modra <modra@gmail.com> | 2011-10-25 03:01:42 +0000 |
---|---|---|
committer | Alan Modra <modra@gmail.com> | 2011-10-25 03:01:42 +0000 |
commit | 679b81920092904f8231f43939ffb88c05b03cf5 (patch) | |
tree | 09eba2722b0f623c4156055e88731dd24593173f | |
parent | ac084d188eb2eb70085665b6bb189af7b3840844 (diff) | |
download | newlib-679b81920092904f8231f43939ffb88c05b03cf5.zip newlib-679b81920092904f8231f43939ffb88c05b03cf5.tar.gz newlib-679b81920092904f8231f43939ffb88c05b03cf5.tar.bz2 |
bfd/
2011-10-10 Alan Modra <amodra@gmail.com>
* elf64-ppc.c (ppc64_elf_howto_table): Add R_PPC64_TOCSAVE entry.
(struct ppc_link_hash_table): Add tocsave_htab.
(struct tocsave_entry): New.
(tocsave_htab_hash, tocsave_htab_eq, tocsave_find): New functions.
(ppc64_elf_link_hash_table_create): Create tocsave_htab..
(ppc64_elf_link_hash_table_free): ..and delete it.
(build_plt_stub): Always put STD_R2_40R1 first.
(ppc64_elf_size_stubs): Check for R_PPC64_TOCSAVE following reloc
on plt call. If present add prologue nop location to tocsave_htab.
(ppc64_elf_relocate_section): Convert prologue nop to std. Skip
first insn of plt call stub when R_PPC64_TOCSAVE present.
include/elf/
2011-10-10 Alan Modra <amodra@gmail.com>
* ppc64.h (R_PPC64_TOCSAVE): Add.
-rw-r--r-- | include/elf/ChangeLog | 6 | ||||
-rw-r--r-- | include/elf/ppc64.h | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index e04b26d..3b2c88b 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -1,3 +1,9 @@ +2011-10-25 Alan Modra <amodra@gmail.com> + + Apply mainline patches + 2011-10-10 Alan Modra <amodra@gmail.com> + * ppc64.h (R_PPC64_TOCSAVE): Add. + 2011-09-21 David S. Miller <davem@davemloft.net> * sparc.h (Tag_GNU_Sparc_HWCAPS): New object attribute. diff --git a/include/elf/ppc64.h b/include/elf/ppc64.h index a18edd6..f1c80f1 100644 --- a/include/elf/ppc64.h +++ b/include/elf/ppc64.h @@ -1,5 +1,5 @@ /* PPC64 ELF support for BFD. - Copyright 2003, 2005, 2009, 2010 Free Software Foundation, Inc. + Copyright 2003, 2005, 2009, 2010, 2011 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -139,6 +139,7 @@ START_RELOC_NUMBERS (elf_ppc64_reloc_type) RELOC_NUMBER (R_PPC64_DTPREL16_HIGHESTA, 106) RELOC_NUMBER (R_PPC64_TLSGD, 107) RELOC_NUMBER (R_PPC64_TLSLD, 108) + RELOC_NUMBER (R_PPC64_TOCSAVE, 109) #ifndef RELOC_MACROS_GEN_FUNC /* Fake relocation only used internally by ld. */ |