1 | |
2 | #ifndef ELF_RELOC |
3 | #error "ELF_RELOC must be defined" |
4 | #endif |
5 | |
6 | // Meets 2.09 ABI Specs. |
7 | ELF_RELOC(R_ARM_NONE, 0x00) |
8 | ELF_RELOC(R_ARM_PC24, 0x01) |
9 | ELF_RELOC(R_ARM_ABS32, 0x02) |
10 | ELF_RELOC(R_ARM_REL32, 0x03) |
11 | ELF_RELOC(R_ARM_LDR_PC_G0, 0x04) |
12 | ELF_RELOC(R_ARM_ABS16, 0x05) |
13 | ELF_RELOC(R_ARM_ABS12, 0x06) |
14 | ELF_RELOC(R_ARM_THM_ABS5, 0x07) |
15 | ELF_RELOC(R_ARM_ABS8, 0x08) |
16 | ELF_RELOC(R_ARM_SBREL32, 0x09) |
17 | ELF_RELOC(R_ARM_THM_CALL, 0x0a) |
18 | ELF_RELOC(R_ARM_THM_PC8, 0x0b) |
19 | ELF_RELOC(R_ARM_BREL_ADJ, 0x0c) |
20 | ELF_RELOC(R_ARM_TLS_DESC, 0x0d) |
21 | ELF_RELOC(R_ARM_THM_SWI8, 0x0e) |
22 | ELF_RELOC(R_ARM_XPC25, 0x0f) |
23 | ELF_RELOC(R_ARM_THM_XPC22, 0x10) |
24 | ELF_RELOC(R_ARM_TLS_DTPMOD32, 0x11) |
25 | ELF_RELOC(R_ARM_TLS_DTPOFF32, 0x12) |
26 | ELF_RELOC(R_ARM_TLS_TPOFF32, 0x13) |
27 | ELF_RELOC(R_ARM_COPY, 0x14) |
28 | ELF_RELOC(R_ARM_GLOB_DAT, 0x15) |
29 | ELF_RELOC(R_ARM_JUMP_SLOT, 0x16) |
30 | ELF_RELOC(R_ARM_RELATIVE, 0x17) |
31 | ELF_RELOC(R_ARM_GOTOFF32, 0x18) |
32 | ELF_RELOC(R_ARM_BASE_PREL, 0x19) |
33 | ELF_RELOC(R_ARM_GOT_BREL, 0x1a) |
34 | ELF_RELOC(R_ARM_PLT32, 0x1b) |
35 | ELF_RELOC(R_ARM_CALL, 0x1c) |
36 | ELF_RELOC(R_ARM_JUMP24, 0x1d) |
37 | ELF_RELOC(R_ARM_THM_JUMP24, 0x1e) |
38 | ELF_RELOC(R_ARM_BASE_ABS, 0x1f) |
39 | ELF_RELOC(R_ARM_ALU_PCREL_7_0, 0x20) |
40 | ELF_RELOC(R_ARM_ALU_PCREL_15_8, 0x21) |
41 | ELF_RELOC(R_ARM_ALU_PCREL_23_15, 0x22) |
42 | ELF_RELOC(R_ARM_LDR_SBREL_11_0_NC, 0x23) |
43 | ELF_RELOC(R_ARM_ALU_SBREL_19_12_NC, 0x24) |
44 | ELF_RELOC(R_ARM_ALU_SBREL_27_20_CK, 0x25) |
45 | ELF_RELOC(R_ARM_TARGET1, 0x26) |
46 | ELF_RELOC(R_ARM_SBREL31, 0x27) |
47 | ELF_RELOC(R_ARM_V4BX, 0x28) |
48 | ELF_RELOC(R_ARM_TARGET2, 0x29) |
49 | ELF_RELOC(R_ARM_PREL31, 0x2a) |
50 | ELF_RELOC(R_ARM_MOVW_ABS_NC, 0x2b) |
51 | ELF_RELOC(R_ARM_MOVT_ABS, 0x2c) |
52 | ELF_RELOC(R_ARM_MOVW_PREL_NC, 0x2d) |
53 | ELF_RELOC(R_ARM_MOVT_PREL, 0x2e) |
54 | ELF_RELOC(R_ARM_THM_MOVW_ABS_NC, 0x2f) |
55 | ELF_RELOC(R_ARM_THM_MOVT_ABS, 0x30) |
56 | ELF_RELOC(R_ARM_THM_MOVW_PREL_NC, 0x31) |
57 | ELF_RELOC(R_ARM_THM_MOVT_PREL, 0x32) |
58 | ELF_RELOC(R_ARM_THM_JUMP19, 0x33) |
59 | ELF_RELOC(R_ARM_THM_JUMP6, 0x34) |
60 | ELF_RELOC(R_ARM_THM_ALU_PREL_11_0, 0x35) |
61 | ELF_RELOC(R_ARM_THM_PC12, 0x36) |
62 | ELF_RELOC(R_ARM_ABS32_NOI, 0x37) |
63 | ELF_RELOC(R_ARM_REL32_NOI, 0x38) |
64 | ELF_RELOC(R_ARM_ALU_PC_G0_NC, 0x39) |
65 | ELF_RELOC(R_ARM_ALU_PC_G0, 0x3a) |
66 | ELF_RELOC(R_ARM_ALU_PC_G1_NC, 0x3b) |
67 | ELF_RELOC(R_ARM_ALU_PC_G1, 0x3c) |
68 | ELF_RELOC(R_ARM_ALU_PC_G2, 0x3d) |
69 | ELF_RELOC(R_ARM_LDR_PC_G1, 0x3e) |
70 | ELF_RELOC(R_ARM_LDR_PC_G2, 0x3f) |
71 | ELF_RELOC(R_ARM_LDRS_PC_G0, 0x40) |
72 | ELF_RELOC(R_ARM_LDRS_PC_G1, 0x41) |
73 | ELF_RELOC(R_ARM_LDRS_PC_G2, 0x42) |
74 | ELF_RELOC(R_ARM_LDC_PC_G0, 0x43) |
75 | ELF_RELOC(R_ARM_LDC_PC_G1, 0x44) |
76 | ELF_RELOC(R_ARM_LDC_PC_G2, 0x45) |
77 | ELF_RELOC(R_ARM_ALU_SB_G0_NC, 0x46) |
78 | ELF_RELOC(R_ARM_ALU_SB_G0, 0x47) |
79 | ELF_RELOC(R_ARM_ALU_SB_G1_NC, 0x48) |
80 | ELF_RELOC(R_ARM_ALU_SB_G1, 0x49) |
81 | ELF_RELOC(R_ARM_ALU_SB_G2, 0x4a) |
82 | ELF_RELOC(R_ARM_LDR_SB_G0, 0x4b) |
83 | ELF_RELOC(R_ARM_LDR_SB_G1, 0x4c) |
84 | ELF_RELOC(R_ARM_LDR_SB_G2, 0x4d) |
85 | ELF_RELOC(R_ARM_LDRS_SB_G0, 0x4e) |
86 | ELF_RELOC(R_ARM_LDRS_SB_G1, 0x4f) |
87 | ELF_RELOC(R_ARM_LDRS_SB_G2, 0x50) |
88 | ELF_RELOC(R_ARM_LDC_SB_G0, 0x51) |
89 | ELF_RELOC(R_ARM_LDC_SB_G1, 0x52) |
90 | ELF_RELOC(R_ARM_LDC_SB_G2, 0x53) |
91 | ELF_RELOC(R_ARM_MOVW_BREL_NC, 0x54) |
92 | ELF_RELOC(R_ARM_MOVT_BREL, 0x55) |
93 | ELF_RELOC(R_ARM_MOVW_BREL, 0x56) |
94 | ELF_RELOC(R_ARM_THM_MOVW_BREL_NC, 0x57) |
95 | ELF_RELOC(R_ARM_THM_MOVT_BREL, 0x58) |
96 | ELF_RELOC(R_ARM_THM_MOVW_BREL, 0x59) |
97 | ELF_RELOC(R_ARM_TLS_GOTDESC, 0x5a) |
98 | ELF_RELOC(R_ARM_TLS_CALL, 0x5b) |
99 | ELF_RELOC(R_ARM_TLS_DESCSEQ, 0x5c) |
100 | ELF_RELOC(R_ARM_THM_TLS_CALL, 0x5d) |
101 | ELF_RELOC(R_ARM_PLT32_ABS, 0x5e) |
102 | ELF_RELOC(R_ARM_GOT_ABS, 0x5f) |
103 | ELF_RELOC(R_ARM_GOT_PREL, 0x60) |
104 | ELF_RELOC(R_ARM_GOT_BREL12, 0x61) |
105 | ELF_RELOC(R_ARM_GOTOFF12, 0x62) |
106 | ELF_RELOC(R_ARM_GOTRELAX, 0x63) |
107 | ELF_RELOC(R_ARM_GNU_VTENTRY, 0x64) |
108 | ELF_RELOC(R_ARM_GNU_VTINHERIT, 0x65) |
109 | ELF_RELOC(R_ARM_THM_JUMP11, 0x66) |
110 | ELF_RELOC(R_ARM_THM_JUMP8, 0x67) |
111 | ELF_RELOC(R_ARM_TLS_GD32, 0x68) |
112 | ELF_RELOC(R_ARM_TLS_LDM32, 0x69) |
113 | ELF_RELOC(R_ARM_TLS_LDO32, 0x6a) |
114 | ELF_RELOC(R_ARM_TLS_IE32, 0x6b) |
115 | ELF_RELOC(R_ARM_TLS_LE32, 0x6c) |
116 | ELF_RELOC(R_ARM_TLS_LDO12, 0x6d) |
117 | ELF_RELOC(R_ARM_TLS_LE12, 0x6e) |
118 | ELF_RELOC(R_ARM_TLS_IE12GP, 0x6f) |
119 | ELF_RELOC(R_ARM_PRIVATE_0, 0x70) |
120 | ELF_RELOC(R_ARM_PRIVATE_1, 0x71) |
121 | ELF_RELOC(R_ARM_PRIVATE_2, 0x72) |
122 | ELF_RELOC(R_ARM_PRIVATE_3, 0x73) |
123 | ELF_RELOC(R_ARM_PRIVATE_4, 0x74) |
124 | ELF_RELOC(R_ARM_PRIVATE_5, 0x75) |
125 | ELF_RELOC(R_ARM_PRIVATE_6, 0x76) |
126 | ELF_RELOC(R_ARM_PRIVATE_7, 0x77) |
127 | ELF_RELOC(R_ARM_PRIVATE_8, 0x78) |
128 | ELF_RELOC(R_ARM_PRIVATE_9, 0x79) |
129 | ELF_RELOC(R_ARM_PRIVATE_10, 0x7a) |
130 | ELF_RELOC(R_ARM_PRIVATE_11, 0x7b) |
131 | ELF_RELOC(R_ARM_PRIVATE_12, 0x7c) |
132 | ELF_RELOC(R_ARM_PRIVATE_13, 0x7d) |
133 | ELF_RELOC(R_ARM_PRIVATE_14, 0x7e) |
134 | ELF_RELOC(R_ARM_PRIVATE_15, 0x7f) |
135 | ELF_RELOC(R_ARM_ME_TOO, 0x80) |
136 | ELF_RELOC(R_ARM_THM_TLS_DESCSEQ16, 0x81) |
137 | ELF_RELOC(R_ARM_THM_TLS_DESCSEQ32, 0x82) |
138 | ELF_RELOC(R_ARM_THM_ALU_ABS_G0_NC, 0x84) |
139 | ELF_RELOC(R_ARM_THM_ALU_ABS_G1_NC, 0x85) |
140 | ELF_RELOC(R_ARM_THM_ALU_ABS_G2_NC, 0x86) |
141 | ELF_RELOC(R_ARM_THM_ALU_ABS_G3, 0x87) |
142 | ELF_RELOC(R_ARM_THM_BF16, 0x88) |
143 | ELF_RELOC(R_ARM_THM_BF12, 0x89) |
144 | ELF_RELOC(R_ARM_THM_BF18, 0x8a) |
145 | ELF_RELOC(R_ARM_IRELATIVE, 0xa0) |
146 | |