aboutsummaryrefslogtreecommitdiff
path: root/include/elf
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2015-12-07 13:14:53 +1030
committerAlan Modra <amodra@gmail.com>2015-12-07 13:14:53 +1030
commit006589cfa144fc1efeea1d114943c0bd1624e930 (patch)
tree2656f7930163fbaf01cd72f71a0774b29992f5e1 /include/elf
parent487b24d8c244263ee99ed7c6a307161b1328decc (diff)
downloadgdb-006589cfa144fc1efeea1d114943c0bd1624e930.zip
gdb-006589cfa144fc1efeea1d114943c0bd1624e930.tar.gz
gdb-006589cfa144fc1efeea1d114943c0bd1624e930.tar.bz2
R_PPC64_ENTRY
Add a new relocation that marks large-model entry code, for edit back to medium-model. include/elf/ * ppc64.h (R_PPC64_ENTRY): Define. bfd/ * reloc.c (BFD_RELOC_PPC64_ENTRY): New. * elf64-ppc.c (reloc_howto_type ppc64_elf_howto_raw): Add entry for R_PPC64_ENTRY. (LD_R2_0R12, ADD_R2_R2_R12, LIS_R2, ADDIS_R2_R12): Define. (ppc64_elf_reloc_type_lookup): Handle R_PPC64_ENTRY. (ppc64_elf_relocate_section): Edit code at R_PPC64_ENTTY. Use new insn defines. * libbfd.h: Regenerate. * bfd-in2.h: Regenerate.
Diffstat (limited to 'include/elf')
-rw-r--r--include/elf/ChangeLog4
-rw-r--r--include/elf/ppc64.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index 22a25cb..e6e7af9 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,7 @@
+2015-12-07 Alan Modra <amodra@gmail.com>
+
+ * ppc64.h (R_PPC64_ENTRY): Define.
+
2015-11-11 Alan Modra <amodra@gmail.com>
Peter Bergner <bergner@vnet.ibm.com>
diff --git a/include/elf/ppc64.h b/include/elf/ppc64.h
index 2cc24cc..9b47b52 100644
--- a/include/elf/ppc64.h
+++ b/include/elf/ppc64.h
@@ -152,6 +152,7 @@ START_RELOC_NUMBERS (elf_ppc64_reloc_type)
/* Added for ELFv2. */
RELOC_NUMBER (R_PPC64_REL24_NOTOC, 116)
RELOC_NUMBER (R_PPC64_ADDR64_LOCAL, 117)
+ RELOC_NUMBER (R_PPC64_ENTRY, 118)
#ifndef RELOC_MACROS_GEN_FUNC
/* Fake relocation only used internally by ld. */