]> sourceware.org Git - newlib-cygwin.git/commitdiff
include/elf:
authorZack Weinberg <zack@codesourcery.com>
Wed, 18 May 2005 05:40:10 +0000 (05:40 +0000)
committerZack Weinberg <zack@codesourcery.com>
Wed, 18 May 2005 05:40:10 +0000 (05:40 +0000)
* arm.h: Import complete list of official relocation names
and numbers from AAELF.  Define FAKE_RELOCs for old names.
Remove a few old names no longer used anywhere.

bfd:
* elf32-arm.c: Wherever possible, use official reloc names
from AAELF.
(elf32_arm_howto_table, elf32_arm_tls_gd32_howto)
(elf32_arm_tls_ldo32_howto, elf32_arm_tls_ldm32_howto)
(elf32_arm_tls_le32_howto, elf32_arm_tls_ie32_howto)
(elf32_arm_vtinherit_howto, elf32_arm_vtentry_howto)
(elf32_arm_pc11_howto, elf32_arm_thm_pc9_howto, elf32_arm_got_prel)
(elf32_arm_r_howto): Replace with elf32_arm_howto_table_1,
elf32_arm_howto_table_2, and elf32_arm_howto_table_3.
Add many new relocations from AAELF.
(elf32_arm_howto_from_type): Update to match.
(elf32_arm_reloc_map): Add entries for R_ARM_THM_JUMP24,
R_ARM_THM_JUMP11, R_ARM_THM_JUMP19, R_ARM_THM_JUMP8,
R_ARM_THM_JUMP6, R_ARM_GNU_VTINHERIT, and R_ARM_GNU_VTENTRY.
(elf32_arm_reloc_type_lookup): Use elf32_arm_howto_from_type.
(elf32_arm_final_link_relocate): Add support for
R_ARM_THM_JUMP24, R_ARM_THM_JUMP19, R_ARM_THM_JUMP6.  Remove
case entries redundant with default.

* reloc.c: Reorganize ARM relocations.  Add Thumb
assembler-internal relocations BFD_RELOC_ARM_T32_OFFSET_U8,
BFD_RELOC_ARM_T32_OFFSET_IMM, BFD_RELOC_ARM_T32_IMMEDIATE.
Add visible relocations BFD_RELOC_THUMB_PCREL_BRANCH7,
BFD_RELOC_THUMB_BRANCH20, BFD_RELOC_THUMB_BRANCH25.
Delete unused relocations BFD_RELOC_ARM_GOT12, BFD_RELOC_ARM_COPY.
* bfd-in2.h, libbfd.h: Regenerate.

opcodes:
* arm-dis.c (thumb_opcodes): Add disassembly for V6T2 16-bit
instructions.  Adjust disassembly of some opcodes to match
unified syntax.
(thumb32_opcodes): New table.
(print_insn_thumb): Rename print_insn_thumb16; don't handle
two-halfword branches here.
(print_insn_thumb32): New function.
(print_insn): Choose among print_insn_arm, print_insn_thumb16,
and print_insn_thumb32.  Be consistent about order of
halfwords when printing 32-bit instructions.

gas:
* hash.c (hash_lookup): Add len parameter.  All callers changed.
(hash_find_n): New interface.
* hash.h: Prototype hash_find_n.
* sb.c: Include as.h.
(scrub_from_sb, sb_to_scrub, scrub_position): New statics.
(sb_scrub_and_add_sb): New interface.
* sb.h: Prototype sb_scrub_and_add_sb.
* input-scrub.c (input_scrub_include_sb): Use sb_scrub_and_add_sb.

* config/tc-arm.h (TC_FORCE_RELOCATION_LOCAL): Remove
reference to BFD_RELOC_ARM_GOT12 which is never generated.
* config/tc-arm.c: Rewrite, adding Thumb-2 support.

gas/testsuite:
* gas/arm/arm.exp: Convert all existing "gas_test" tests to
"run_dump_test" tests.  Run more tests unconditionally.  Run new tests.
* gas/arm/arch4t.s, gas/arm/arch6zk.s, gas/arm/arm3.s, gas/arm/arm6.s
* gas/arm/arm7dm.s, gas/arm/bignum1.s, gas/arm/float.s
* gas/arm/immed.s, gas/arm/iwmmxt.s, gas/arm/offset.s, gas/arm/thumb.s:
Adjust to work as a dump test.
* gas/arm/arch4t.d, gas/arm/arch6zk.d, gas/arm/arm3.d, gas/arm/arm6.d
* gas/arm/arm7dm.d, gas/arm/bignum1.d, gas/arm/float.d
* gas/arm/immed.d, gas/arm/iwmmxt.d, gas/arm/offset.d, gas/arm/thumb.d:
New files.

* gas/arm/armv1-bad.l, gas/arm/armv1-bad.s: Remove tests for
diagnostics that don't happen in the first pass anymore.

* gas/arm/iwmmxt-bad.l, gas/arm/r15-bad.l, gas/arm/req.l
* gas/arm/vfp-bad.l:
Update expected diagnostics.
* gas/arm/pic.d: Update expected reloc name.
* gas/arm/thumbv6.d: CPY no longer appears in disassembly.
* gas/arm/r15-bad.s: Avoid two-argument mul.
* gas/arm/req.s: Adjust comments.
* gas/arm/maverick.d, gas/arm/maverick.s: Avoid inappropriate
use of PC.

* gas/arm/macro-1.d, gas/arm/macro1.s
* gas/arm/t16-bad.l, gas/arm/t16-bad.s
* gas/arm/tcompat.d, gas/arm/tcompat.s
* gas/arm/tcompat2.d, gas/arm/tcompat2.s
* gas/arm/thumb32.d, gas/arm/thumb32.s
New test pair.

ld/testsuite:
* ld-arm/mixed-app.d: Adjust expected disassembly a little.

include/elf/ChangeLog
include/elf/arm.h

index ab6c3c8dc6fcfa0775f47853db847fcd7166d841..0e6598872d4ea2c7f6cb8092a1b0f18580a336f5 100644 (file)
@@ -1,3 +1,9 @@
+2005-05-17  Zack Weinberg  <zack@codesourcery.com>
+
+       * arm.h: Import complete list of official relocation names
+       and numbers from AAELF.  Define FAKE_RELOCs for old names.
+       Remove a few old names no longer used anywhere.
+
 2005-05-14  Alan Modra  <amodra@bigpond.net.au>
 
        * ppc.h (DT_PPC_GOT): Rename from DT_PPC_GLINK.
index 5e4d03764cfbaeeeffec5dda7713dbcd3e023149..738ed8393190bd668e6bfa58fa38620a8e32653c 100644 (file)
@@ -38,7 +38,7 @@
 #define EF_ARM_MAVERICK_FLOAT 0x800
 
 /* Frame unwind information */
-#define PT_ARM_EXIDX (PT_LOPROC + 1) 
+#define PT_ARM_EXIDX (PT_LOPROC + 1)
 
 /* Other constants defined in the ARM ELF spec. version B-01.  */
 #define EF_ARM_SYMSARESORTED 0x04      /* NB conflicts with EF_INTERWORK */
 /* Relocation types.  */
 
 START_RELOC_NUMBERS (elf_arm_reloc_type)
-  RELOC_NUMBER (R_ARM_NONE,             0)
-  RELOC_NUMBER (R_ARM_PC24,             1)
-  RELOC_NUMBER (R_ARM_ABS32,            2)
-  RELOC_NUMBER (R_ARM_REL32,            3)
-#ifdef OLD_ARM_ABI
-  RELOC_NUMBER (R_ARM_ABS8,             4)
-  RELOC_NUMBER (R_ARM_ABS16,            5)
-  RELOC_NUMBER (R_ARM_ABS12,            6)
-  RELOC_NUMBER (R_ARM_THM_ABS5,         7)
-  RELOC_NUMBER (R_ARM_THM_PC22,         8)
-  RELOC_NUMBER (R_ARM_SBREL32,          9)
-  RELOC_NUMBER (R_ARM_AMP_VCALL9,      10)
-  RELOC_NUMBER (R_ARM_THM_PC11,        11)   /* Cygnus extension to abi: Thumb unconditional branch.  */
-  RELOC_NUMBER (R_ARM_THM_PC9,         12)   /* Cygnus extension to abi: Thumb conditional branch.  */
-  RELOC_NUMBER (R_ARM_GNU_VTINHERIT,   13)  
-  RELOC_NUMBER (R_ARM_GNU_VTENTRY,     14)  
-#else /* not OLD_ARM_ABI */
-  RELOC_NUMBER (R_ARM_PC13,             4)
-  RELOC_NUMBER (R_ARM_ABS16,            5)
-  RELOC_NUMBER (R_ARM_ABS12,            6)
-  RELOC_NUMBER (R_ARM_THM_ABS5,         7)
-  RELOC_NUMBER (R_ARM_ABS8,             8)
-  RELOC_NUMBER (R_ARM_SBREL32,          9)
-  RELOC_NUMBER (R_ARM_THM_PC22,        10)
-  RELOC_NUMBER (R_ARM_THM_PC8,         11)
-  RELOC_NUMBER (R_ARM_AMP_VCALL9,      12)
-  RELOC_NUMBER (R_ARM_SWI24,           13)
-  RELOC_NUMBER (R_ARM_THM_SWI8,        14)
-  RELOC_NUMBER (R_ARM_XPC25,           15)
-  RELOC_NUMBER (R_ARM_THM_XPC22,       16)
-  RELOC_NUMBER (R_ARM_TLS_DTPMOD32,    17)
-  RELOC_NUMBER (R_ARM_TLS_DTPOFF32,    18)
-  RELOC_NUMBER (R_ARM_TLS_TPOFF32,     19)
-#endif /* not OLD_ARM_ABI */
-  RELOC_NUMBER (R_ARM_COPY,            20)   /* Copy symbol at runtime.  */
-  RELOC_NUMBER (R_ARM_GLOB_DAT,        21)   /* Create GOT entry.  */
-  RELOC_NUMBER (R_ARM_JUMP_SLOT,       22)   /* Create PLT entry.  */
-  RELOC_NUMBER (R_ARM_RELATIVE,        23)   /* Adjust by program base.  */
-  RELOC_NUMBER (R_ARM_GOTOFF,          24)   /* 32 bit offset to GOT.  */
-  RELOC_NUMBER (R_ARM_GOTPC,           25)   /* 32 bit PC relative offset to GOT.  */
-  RELOC_NUMBER (R_ARM_GOT32,           26)   /* 32 bit GOT entry.  */
-  RELOC_NUMBER (R_ARM_PLT32,           27)   /* 32 bit PLT address.  */
-#ifdef OLD_ARM_ABI
-  FAKE_RELOC   (FIRST_INVALID_RELOC,   28)
-  FAKE_RELOC   (LAST_INVALID_RELOC,   249)
-#else /* not OLD_ARM_ABI */
-  RELOC_NUMBER (R_ARM_CALL,            28)
-  RELOC_NUMBER (R_ARM_JUMP24,          29)
-  FAKE_RELOC   (FIRST_INVALID_RELOC1,  30)
-  FAKE_RELOC   (LAST_INVALID_RELOC1,   31)
-  RELOC_NUMBER (R_ARM_ALU_PCREL7_0,    32)
-  RELOC_NUMBER (R_ARM_ALU_PCREL15_8,   33)
-  RELOC_NUMBER (R_ARM_ALU_PCREL23_15,  34)
-  RELOC_NUMBER (R_ARM_LDR_SBREL_11_0,  35)
-  RELOC_NUMBER (R_ARM_ALU_SBREL_19_12, 36)
-  RELOC_NUMBER (R_ARM_ALU_SBREL_27_20, 37)
-  RELOC_NUMBER (R_ARM_TARGET1,         38)
-  RELOC_NUMBER (R_ARM_ROSEGREL32,      39)
-  RELOC_NUMBER (R_ARM_V4BX,            40)
-  RELOC_NUMBER (R_ARM_TARGET2,        41)
-  RELOC_NUMBER (R_ARM_PREL31,         42)
-  FAKE_RELOC   (FIRST_INVALID_RELOC2,  43)
-  FAKE_RELOC   (LAST_INVALID_RELOC2,   94)
-  RELOC_NUMBER (R_ARM_GOT_ABS,        95)
-  RELOC_NUMBER (R_ARM_GOT_PREL,               96)
-  RELOC_NUMBER (R_ARM_GOT_BREL12,      97)
-  RELOC_NUMBER (R_ARM_GOTOFF12,               98)
-  RELOC_NUMBER (R_ARM_GOTRELAX,               99)
-  RELOC_NUMBER (R_ARM_GNU_VTENTRY,    100)
-  RELOC_NUMBER (R_ARM_GNU_VTINHERIT,  101)
-  RELOC_NUMBER (R_ARM_THM_PC11,       102)   /* Cygnus extension to abi: Thumb unconditional branch.  */
-  RELOC_NUMBER (R_ARM_THM_PC9,        103)   /* Cygnus extension to abi: Thumb conditional branch.  */
-  RELOC_NUMBER (R_ARM_TLS_GD32,              104)
-  RELOC_NUMBER (R_ARM_TLS_LDM32,      105)
-  RELOC_NUMBER (R_ARM_TLS_LDO32,      106)
-  RELOC_NUMBER (R_ARM_TLS_IE32,       107)
-  RELOC_NUMBER (R_ARM_TLS_LE32,              108)
-  FAKE_RELOC   (FIRST_INVALID_RELOC3, 109)
-  FAKE_RELOC   (LAST_INVALID_RELOC3,  248)
-  RELOC_NUMBER (R_ARM_RXPC25,         249)
-#endif /* not OLD_ARM_ABI */
-  RELOC_NUMBER (R_ARM_RSBREL32,       250)
-  RELOC_NUMBER (R_ARM_THM_RPC22,      251)
-  RELOC_NUMBER (R_ARM_RREL32,         252)
-  RELOC_NUMBER (R_ARM_RABS32,         253)
-  RELOC_NUMBER (R_ARM_RPC24,          254)
-  RELOC_NUMBER (R_ARM_RBASE,          255)
+/* AAELF official names and numbers.  */
+  RELOC_NUMBER (R_ARM_NONE,                      0)
+  RELOC_NUMBER (R_ARM_PC24,                      1)   /* deprecated */
+  RELOC_NUMBER (R_ARM_ABS32,                     2)
+  RELOC_NUMBER (R_ARM_REL32,                     3)
+#ifndef OLD_ARM_ABI
+  RELOC_NUMBER (R_ARM_LDR_PC_G0,                 4)
+  RELOC_NUMBER (R_ARM_ABS16,                     5)
+  RELOC_NUMBER (R_ARM_ABS12,                     6)
+  RELOC_NUMBER (R_ARM_THM_ABS5,                  7)
+  RELOC_NUMBER (R_ARM_ABS8,                      8)
+  RELOC_NUMBER (R_ARM_SBREL32,                   9)
+  RELOC_NUMBER (R_ARM_THM_CALL,                 10)
+  RELOC_NUMBER (R_ARM_THM_PC8,                  11)
+  RELOC_NUMBER (R_ARM_BREL_ADJ,                 12)
+  RELOC_NUMBER (R_ARM_SWI24,                    13)   /* obsolete */
+  RELOC_NUMBER (R_ARM_THM_SWI8,                 14)   /* obsolete */
+#else
+  RELOC_NUMBER (R_ARM_ABS8,                      4)
+  RELOC_NUMBER (R_ARM_ABS16,                     5)
+  RELOC_NUMBER (R_ARM_ABS12,                     6)
+  RELOC_NUMBER (R_ARM_THM_ABS5,                  7)
+  RELOC_NUMBER (R_ARM_THM_CALL,                  8)
+  RELOC_NUMBER (R_ARM_SBREL32,                   9)
+  RELOC_NUMBER (R_ARM_BREL_ADJ,                 10)
+  RELOC_NUMBER (R_ARM_THM_JUMP11,               11)
+  RELOC_NUMBER (R_ARM_THM_JUMP8,                12)
+  RELOC_NUMBER (R_ARM_GNU_VTINHERIT,            13)
+  RELOC_NUMBER (R_ARM_GNU_VTENTRY,              14)
+#endif
+  RELOC_NUMBER (R_ARM_XPC25,                    15)   /* obsolete */
+  RELOC_NUMBER (R_ARM_THM_XPC22,                16)   /* obsolete */
+  RELOC_NUMBER (R_ARM_TLS_DTPMOD32,             17)
+  RELOC_NUMBER (R_ARM_TLS_DTPOFF32,             18)
+  RELOC_NUMBER (R_ARM_TLS_TPOFF32,              19)
+  RELOC_NUMBER (R_ARM_COPY,                     20)   /* Copy symbol at runtime.  */
+  RELOC_NUMBER (R_ARM_GLOB_DAT,                 21)   /* Create GOT entry.  */
+  RELOC_NUMBER (R_ARM_JUMP_SLOT,                22)   /* Create PLT entry.  */
+  RELOC_NUMBER (R_ARM_RELATIVE,                 23)   /* Adjust by program base.  */
+  RELOC_NUMBER (R_ARM_GOTOFF32,                 24)   /* 32 bit offset to GOT.  */
+  RELOC_NUMBER (R_ARM_BASE_PREL,                25)   /* 32 bit PC relative offset to GOT.  */
+  RELOC_NUMBER (R_ARM_GOT_BREL,                 26)   /* 32 bit GOT entry.  */
+  RELOC_NUMBER (R_ARM_PLT32,                    27)   /* deprecated - 32 bit PLT address.  */
+  RELOC_NUMBER (R_ARM_CALL,                     28)
+  RELOC_NUMBER (R_ARM_JUMP24,                   29)
+  RELOC_NUMBER (R_ARM_THM_JUMP24,               30)
+  RELOC_NUMBER (R_ARM_BASE_ABS,                 31)
+  RELOC_NUMBER (R_ARM_ALU_PCREL7_0,             32)   /* obsolete */
+  RELOC_NUMBER (R_ARM_ALU_PCREL15_8,            33)   /* obsolete */
+  RELOC_NUMBER (R_ARM_ALU_PCREL23_15,           34)   /* obsolete */
+  RELOC_NUMBER (R_ARM_LDR_SBREL_11_0,           35)   /* deprecated, should have _NC suffix */
+  RELOC_NUMBER (R_ARM_ALU_SBREL_19_12,          36)   /* deprecated, should have _NC suffix */
+  RELOC_NUMBER (R_ARM_ALU_SBREL_27_20,          37)   /* deprecated, should have _CK suffix */
+  RELOC_NUMBER (R_ARM_TARGET1,                  38)
+  RELOC_NUMBER (R_ARM_SBREL31,                  39)   /* deprecated */
+  RELOC_NUMBER (R_ARM_V4BX,                     40)
+  RELOC_NUMBER (R_ARM_TARGET2,          41)
+  RELOC_NUMBER (R_ARM_PREL31,           42)
+  RELOC_NUMBER (R_ARM_MOVW_ABS_NC,              43)
+  RELOC_NUMBER (R_ARM_MOVT_ABS,                 44)
+  RELOC_NUMBER (R_ARM_MOVW_PREL_NC,             45)
+  RELOC_NUMBER (R_ARM_MOVT_PREL,                46)
+  RELOC_NUMBER (R_ARM_THM_MOVW_ABS_NC,          47)
+  RELOC_NUMBER (R_ARM_THM_MOVT_ABS,             48)
+  RELOC_NUMBER (R_ARM_THM_MOVW_PREL_NC,         49)
+  RELOC_NUMBER (R_ARM_THM_MOVT_PREL,            50)
+  RELOC_NUMBER (R_ARM_THM_JUMP19,               51)
+  RELOC_NUMBER (R_ARM_THM_JUMP6,                52)
+  RELOC_NUMBER (R_ARM_THM_ALU_PREL_11_0, 53)
+  RELOC_NUMBER (R_ARM_THM_PC12,                 54)
+  RELOC_NUMBER (R_ARM_ABS32_NOI,                55)
+  RELOC_NUMBER (R_ARM_REL32_NOI,                56)
+  RELOC_NUMBER (R_ARM_ALU_PC_G0_NC,      57)
+  RELOC_NUMBER (R_ARM_ALU_PC_G0,         58)
+  RELOC_NUMBER (R_ARM_ALU_PC_G1_NC,      59)
+  RELOC_NUMBER (R_ARM_ALU_PC_G1,         60)
+  RELOC_NUMBER (R_ARM_ALU_PC_G2,         61)
+  RELOC_NUMBER (R_ARM_LDR_PC_G1,         62)
+  RELOC_NUMBER (R_ARM_LDR_PC_G2,         63)
+  RELOC_NUMBER (R_ARM_LDRS_PC_G0,        64)
+  RELOC_NUMBER (R_ARM_LDRS_PC_G1,        65)
+  RELOC_NUMBER (R_ARM_LDRS_PC_G2,        66)
+  RELOC_NUMBER (R_ARM_LDC_PC_G0,         67)
+  RELOC_NUMBER (R_ARM_LDC_PC_G1,         68)
+  RELOC_NUMBER (R_ARM_LDC_PC_G2,         69)
+  RELOC_NUMBER (R_ARM_ALU_SB_G0_NC,      70)
+  RELOC_NUMBER (R_ARM_ALU_SB_G0,         71)
+  RELOC_NUMBER (R_ARM_ALU_SB_G1_NC,      72)
+  RELOC_NUMBER (R_ARM_ALU_SB_G1,         73)
+  RELOC_NUMBER (R_ARM_ALU_SB_G2,         74)
+  RELOC_NUMBER (R_ARM_LDR_SB_G0,         75)
+  RELOC_NUMBER (R_ARM_LDR_SB_G1,         76)
+  RELOC_NUMBER (R_ARM_LDR_SB_G2,         77)
+  RELOC_NUMBER (R_ARM_LDRS_SB_G0,        78)
+  RELOC_NUMBER (R_ARM_LDRS_SB_G1,        79)
+  RELOC_NUMBER (R_ARM_LDRS_SB_G2,        80)
+  RELOC_NUMBER (R_ARM_LDC_G0,            81)
+  RELOC_NUMBER (R_ARM_LDC_G1,            82)
+  RELOC_NUMBER (R_ARM_LDC_G2,            83)
+  RELOC_NUMBER (R_ARM_MOVW_BREL_NC,             84)
+  RELOC_NUMBER (R_ARM_MOVT_BREL,                85)
+  RELOC_NUMBER (R_ARM_MOVW_BREL,                86)
+  RELOC_NUMBER (R_ARM_THM_MOVW_BREL_NC,         87)
+  RELOC_NUMBER (R_ARM_THM_MOVT_BREL,            88)
+  RELOC_NUMBER (R_ARM_THM_MOVW_BREL,            89)
+  /* 90-93 unallocated */
+  RELOC_NUMBER (R_ARM_PLT32_ABS,                94)
+  RELOC_NUMBER (R_ARM_GOT_ABS,          95)
+  RELOC_NUMBER (R_ARM_GOT_PREL,                 96)
+  RELOC_NUMBER (R_ARM_GOT_BREL12,               97)
+  RELOC_NUMBER (R_ARM_GOTOFF12,                 98)
+  RELOC_NUMBER (R_ARM_GOTRELAX,                 99)
+#ifndef OLD_ARM_ABI
+  RELOC_NUMBER (R_ARM_GNU_VTENTRY,     100)   /* deprecated - old C++ abi */
+  RELOC_NUMBER (R_ARM_GNU_VTINHERIT,   101)   /* deprecated - old C++ abi */
+  RELOC_NUMBER (R_ARM_THM_JUMP11,      102)
+  RELOC_NUMBER (R_ARM_THM_JUMP8,       103)
+#endif
+  RELOC_NUMBER (R_ARM_TLS_GD32,                104)
+  RELOC_NUMBER (R_ARM_TLS_LDM32,       105)
+  RELOC_NUMBER (R_ARM_TLS_LDO32,       106)
+  RELOC_NUMBER (R_ARM_TLS_IE32,        107)
+  RELOC_NUMBER (R_ARM_TLS_LE32,                108)
+  RELOC_NUMBER (R_ARM_TLS_LDO12,       109)
+  RELOC_NUMBER (R_ARM_TLS_LE12,                110)
+  RELOC_NUMBER (R_ARM_TLS_IE12GP,      111)
+  /* 112 - 127 private range */
+  RELOC_NUMBER (R_ARM_ME_TOO,          128)   /* obsolete */
+
+  /* Extensions?  R=read-only?  */
+  RELOC_NUMBER (R_ARM_RXPC25,          249)
+  RELOC_NUMBER (R_ARM_RSBREL32,        250)
+  RELOC_NUMBER (R_ARM_THM_RPC22,       251)
+  RELOC_NUMBER (R_ARM_RREL32,          252)
+  RELOC_NUMBER (R_ARM_RABS32,          253)
+  RELOC_NUMBER (R_ARM_RPC24,           254)
+  RELOC_NUMBER (R_ARM_RBASE,           255)
+
+  /* Unofficial names for some of the relocs.  */
+  FAKE_RELOC (R_ARM_GOTOFF,             R_ARM_GOTOFF32)   /* 32 bit offset to GOT.  */
+  FAKE_RELOC (R_ARM_THM_PC22,           R_ARM_THM_CALL)
+  FAKE_RELOC (R_ARM_THM_PC11,           R_ARM_THM_JUMP11)
+  FAKE_RELOC (R_ARM_THM_PC9,            R_ARM_THM_JUMP8)
+
+  /* Relocs with both a different name, and (apparently) different meaning in
+     GNU usage.  */
+  FAKE_RELOC (R_ARM_GOTPC,              R_ARM_BASE_PREL)  /* 32 bit PC relative offset to GOT.  */
+  FAKE_RELOC (R_ARM_GOT32,              R_ARM_GOT_BREL)   /* 32 bit GOT entry.  */
+  FAKE_RELOC (R_ARM_ROSEGREL32,         R_ARM_SBREL31)    /* ??? */
+  FAKE_RELOC (R_ARM_AMP_VCALL9,         R_ARM_BREL_ADJ)   /* Thumb-something.  Not used.  */
+#ifndef OLD_ARM_ABI
+  FAKE_RELOC (R_ARM_PC13,               R_ARM_LDR_PC_G0)  /* Unclear whether meaning is different.  */
+#endif
 END_RELOC_NUMBERS (R_ARM_max)
 
 /* The name of the note section used to identify arm variants.  */
This page took 0.035941 seconds and 5 git commands to generate.