The elflint self test now also checks ET_REL files. Update the list of
relocation types to include all known relocations from elf.h.
R_ARM_SWI24 was obsolete and is now named R_ARM_TLS_DESC. The only other
relocation used in the dynamic linker is R_ARM_IRELATIVE.

Signed-off-by: Mark Wielaard <[email protected]>
---
 backends/ChangeLog     |  4 +++
 backends/arm_reloc.def | 81 ++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 83 insertions(+), 2 deletions(-)

diff --git a/backends/ChangeLog b/backends/ChangeLog
index 0df6819..045fa9d 100644
--- a/backends/ChangeLog
+++ b/backends/ChangeLog
@@ -1,3 +1,7 @@
+2014-01-24  Mark Wielaard  <[email protected]>
+
+       * arm_reloc.def: Update list.
+
 2014-01-22  Mark Wielaard  <[email protected]>
 
        * Makefile.am (aarch64_regs_no_Wformat): Removed.
diff --git a/backends/arm_reloc.def b/backends/arm_reloc.def
index eeb2160..4b7894b 100644
--- a/backends/arm_reloc.def
+++ b/backends/arm_reloc.def
@@ -1,5 +1,5 @@
 /* List the relocation types for arm.  -*- C -*-
-   Copyright (C) 2005-2010 Red Hat, Inc.
+   Copyright (C) 2005-2010, 2014 Red Hat, Inc.
    This file is part of elfutils.
 
    This file is free software; you can redistribute it and/or modify
@@ -41,7 +41,7 @@ RELOC_TYPE (SBREL32,          REL)
 RELOC_TYPE (THM_PC22,          REL)
 RELOC_TYPE (THM_PC8,           REL)
 RELOC_TYPE (AMP_VCALL9,                REL)
-RELOC_TYPE (SWI24,             REL)
+RELOC_TYPE (TLS_DESC,          EXEC|DYN)
 RELOC_TYPE (THM_SWI8,          REL)
 RELOC_TYPE (XPC25,             REL)
 RELOC_TYPE (THM_XPC22,         REL)
@@ -56,12 +56,78 @@ RELOC_TYPE (GOTOFF,         REL)
 RELOC_TYPE (GOTPC,             REL)
 RELOC_TYPE (GOT32,             REL)
 RELOC_TYPE (PLT32,             REL)
+RELOC_TYPE (CALL,              REL)
+RELOC_TYPE (JUMP24,            REL)
+RELOC_TYPE (THM_JUMP24,                REL)
+RELOC_TYPE (BASE_ABS,          REL)
 RELOC_TYPE (ALU_PCREL_7_0,     REL)
 RELOC_TYPE (ALU_PCREL_15_8,    REL)
 RELOC_TYPE (ALU_PCREL_23_15,   REL)
 RELOC_TYPE (LDR_SBREL_11_0,    REL)
 RELOC_TYPE (ALU_SBREL_19_12,   REL)
 RELOC_TYPE (ALU_SBREL_27_20,   REL)
+RELOC_TYPE (TARGET1,           REL)
+RELOC_TYPE (SBREL31,           REL)
+RELOC_TYPE (V4BX,              REL)
+RELOC_TYPE (TARGET2,           REL)
+RELOC_TYPE (PREL31,            REL)
+RELOC_TYPE (MOVW_ABS_NC,       REL)
+RELOC_TYPE (MOVT_ABS,          REL)
+RELOC_TYPE (MOVW_PREL_NC,      REL)
+RELOC_TYPE (MOVT_PREL,         REL)
+RELOC_TYPE (THM_MOVW_ABS_NC,   REL)
+RELOC_TYPE (THM_MOVT_ABS,      REL)
+RELOC_TYPE (THM_MOVW_PREL_NC,  REL)
+RELOC_TYPE (THM_MOVT_PREL,     REL)
+RELOC_TYPE (THM_JUMP19,                REL)
+RELOC_TYPE (THM_JUMP6,         REL)
+RELOC_TYPE (THM_ALU_PREL_11_0, REL)
+RELOC_TYPE (THM_PC12,          REL)
+RELOC_TYPE (ABS32_NOI,         REL)
+RELOC_TYPE (REL32_NOI,         REL)
+RELOC_TYPE (ALU_PC_G0_NC,      REL)
+RELOC_TYPE (ALU_PC_G0,         REL)
+RELOC_TYPE (ALU_PC_G1_NC,      REL)
+RELOC_TYPE (ALU_PC_G1,         REL)
+RELOC_TYPE (ALU_PC_G2,         REL)
+RELOC_TYPE (LDR_PC_G1,         REL)
+RELOC_TYPE (LDR_PC_G2,         REL)
+RELOC_TYPE (LDRS_PC_G0,                REL)
+RELOC_TYPE (LDRS_PC_G1,                REL)
+RELOC_TYPE (LDRS_PC_G2,                REL)
+RELOC_TYPE (LDC_PC_G0,         REL)
+RELOC_TYPE (LDC_PC_G1,         REL)
+RELOC_TYPE (LDC_PC_G2,         REL)
+RELOC_TYPE (ALU_SB_G0_NC,      REL)
+RELOC_TYPE (ALU_SB_G0,         REL)
+RELOC_TYPE (ALU_SB_G1_NC,      REL)
+RELOC_TYPE (ALU_SB_G1,         REL)
+RELOC_TYPE (ALU_SB_G2,         REL)
+RELOC_TYPE (LDR_SB_G0,         REL)
+RELOC_TYPE (LDR_SB_G1,         REL)
+RELOC_TYPE (LDR_SB_G2,         REL)
+RELOC_TYPE (LDRS_SB_G0,                REL)
+RELOC_TYPE (LDRS_SB_G1,                REL)
+RELOC_TYPE (LDRS_SB_G2,                REL)
+RELOC_TYPE (LDC_SB_G0,         REL)
+RELOC_TYPE (LDC_SB_G1,         REL)
+RELOC_TYPE (LDC_SB_G2,         REL)
+RELOC_TYPE (MOVW_BREL_NC,      REL)
+RELOC_TYPE (MOVT_BREL,         REL)
+RELOC_TYPE (MOVW_BREL,         REL)
+RELOC_TYPE (THM_MOVW_BREL_NC,  REL)
+RELOC_TYPE (THM_MOVT_BREL,     REL)
+RELOC_TYPE (THM_MOVW_BREL,     REL)
+RELOC_TYPE (TLS_GOTDESC,       REL)
+RELOC_TYPE (TLS_CALL,          REL)
+RELOC_TYPE (TLS_DESCSEQ,       REL)
+RELOC_TYPE (THM_TLS_CALL,      REL)
+RELOC_TYPE (PLT32_ABS,         REL)
+RELOC_TYPE (GOT_ABS,           REL)
+RELOC_TYPE (GOT_PREL,          REL)
+RELOC_TYPE (GOT_BREL12,                REL)
+RELOC_TYPE (GOTOFF12,          REL)
+RELOC_TYPE (GOTRELAX,          REL)
 RELOC_TYPE (GNU_VTENTRY,       REL)
 RELOC_TYPE (GNU_VTINHERIT,     REL)
 RELOC_TYPE (THM_PC11,          REL)
@@ -71,6 +137,17 @@ RELOC_TYPE (TLS_LDM32,              REL)
 RELOC_TYPE (TLS_LDO32,         REL)
 RELOC_TYPE (TLS_IE32,          REL)
 RELOC_TYPE (TLS_LE32,          REL)
+RELOC_TYPE (TLS_LDO12,         REL)
+RELOC_TYPE (TLS_LE12,          REL)
+RELOC_TYPE (TLS_IE12GP,                REL)
+
+RELOC_TYPE (ME_TOO,            REL)
+RELOC_TYPE (THM_TLS_DESCSEQ16, REL)
+RELOC_TYPE (THM_TLS_DESCSEQ32, REL)
+RELOC_TYPE (THM_GOT_BREL12,    REL)
+
+RELOC_TYPE (IRELATIVE,         EXEC|DYN)
+
 RELOC_TYPE (RXPC25,            REL)
 RELOC_TYPE (RSBREL32,          REL)
 RELOC_TYPE (THM_RPC22,         REL)
-- 
1.8.4.2

Reply via email to