xref: /aosp_15_r20/external/elfutils/backends/loongarch_reloc.def (revision 7304104da70ce23c86437a01be71edd1a2d7f37e)
1*7304104dSAndroid Build Coastguard Worker/* List the relocation types for LoongArch.  -*- C -*-
2*7304104dSAndroid Build Coastguard Worker   This file is part of elfutils.
3*7304104dSAndroid Build Coastguard Worker
4*7304104dSAndroid Build Coastguard Worker   This file is free software; you can redistribute it and/or modify
5*7304104dSAndroid Build Coastguard Worker   it under the terms of either
6*7304104dSAndroid Build Coastguard Worker
7*7304104dSAndroid Build Coastguard Worker     * the GNU Lesser General Public License as published by the Free
8*7304104dSAndroid Build Coastguard Worker       Software Foundation; either version 3 of the License, or (at
9*7304104dSAndroid Build Coastguard Worker       your option) any later version
10*7304104dSAndroid Build Coastguard Worker
11*7304104dSAndroid Build Coastguard Worker   or
12*7304104dSAndroid Build Coastguard Worker
13*7304104dSAndroid Build Coastguard Worker     * the GNU General Public License as published by the Free
14*7304104dSAndroid Build Coastguard Worker       Software Foundation; either version 2 of the License, or (at
15*7304104dSAndroid Build Coastguard Worker       your option) any later version
16*7304104dSAndroid Build Coastguard Worker
17*7304104dSAndroid Build Coastguard Worker   or both in parallel, as here.
18*7304104dSAndroid Build Coastguard Worker
19*7304104dSAndroid Build Coastguard Worker   elfutils is distributed in the hope that it will be useful, but
20*7304104dSAndroid Build Coastguard Worker   WITHOUT ANY WARRANTY; without even the implied warranty of
21*7304104dSAndroid Build Coastguard Worker   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22*7304104dSAndroid Build Coastguard Worker   General Public License for more details.
23*7304104dSAndroid Build Coastguard Worker
24*7304104dSAndroid Build Coastguard Worker   You should have received copies of the GNU General Public License and
25*7304104dSAndroid Build Coastguard Worker   the GNU Lesser General Public License along with this program.  If
26*7304104dSAndroid Build Coastguard Worker   not, see <http://www.gnu.org/licenses/>.  */
27*7304104dSAndroid Build Coastguard Worker
28*7304104dSAndroid Build Coastguard Worker/*	    NAME,			REL|EXEC|DYN	*/
29*7304104dSAndroid Build Coastguard Worker
30*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (NONE,			EXEC|DYN)
31*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (32,				REL|EXEC|DYN)
32*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (64,				REL|EXEC|DYN)
33*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (RELATIVE,			EXEC|DYN)
34*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (COPY,			EXEC|DYN)
35*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (JUMP_SLOT,			EXEC|DYN)
36*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DTPMOD32,		EXEC|DYN)
37*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DTPMOD64,		EXEC|DYN)
38*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DTPREL32,		EXEC|DYN)
39*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DTPREL64,		EXEC|DYN)
40*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_TPREL32,		EXEC|DYN)
41*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_TPREL64,		EXEC|DYN)
42*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (IRELATIVE,			EXEC|DYN)
43*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (MARK_LA,			REL)
44*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (MARK_PCREL,			REL)
45*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_PCREL,		REL)
46*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_ABSOLUTE,		REL)
47*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_DUP,		REL)
48*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_GPREL,		REL)
49*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_TLS_TPREL,		REL)
50*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_TLS_GOT,		REL)
51*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_TLS_GD,		REL)
52*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_PUSH_PLT_PCREL,		REL)
53*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_ASSERT,			REL)
54*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_NOT,			REL)
55*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_SUB,			REL)
56*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_SL,			REL)
57*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_SR,			REL)
58*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_ADD,			REL)
59*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_AND,			REL)
60*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_IF_ELSE,		REL)
61*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_10_5,		REL)
62*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_U_10_12,		REL)
63*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_10_12,		REL)
64*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_10_16,		REL)
65*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_10_16_S2,	REL)
66*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_5_20,		REL)
67*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_0_5_10_16_S2,	REL)
68*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_S_0_10_10_16_S2,	REL)
69*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SOP_POP_32_U,		REL)
70*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD8,			REL)
71*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD16,			REL)
72*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD24,			REL)
73*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD32,			REL)
74*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD64,			REL)
75*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB8,			REL)
76*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB16,			REL)
77*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB24,			REL)
78*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB32,			REL)
79*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB64,			REL)
80*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GNU_VTINHERIT,		REL)
81*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GNU_VTENTRY,		REL)
82*7304104dSAndroid Build Coastguard Worker
83*7304104dSAndroid Build Coastguard Worker/* reserved 59-63 */
84*7304104dSAndroid Build Coastguard Worker
85*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (B16,			REL)
86*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (B21,			REL)
87*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (B26,			REL)
88*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ABS_HI20,			REL)
89*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ABS_LO12,			REL)
90*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ABS64_LO20,			REL)
91*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ABS64_HI12,			REL)
92*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (PCALA_HI20,			REL)
93*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (PCALA_LO12,			REL)
94*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (PCALA64_LO20,		REL)
95*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (PCALA64_HI12,		REL)
96*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT_PC_HI20,		REL)
97*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT_PC_LO12,		REL)
98*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT64_PC_LO20,		REL)
99*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT64_PC_HI12,		REL)
100*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT_HI20,			REL)
101*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT_LO12,			REL)
102*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT64_LO20,			REL)
103*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (GOT64_HI12,			REL)
104*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE_HI20,		REL)
105*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE_LO12,		REL)
106*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE64_LO20,		REL)
107*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE64_HI12,		REL)
108*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE_PC_HI20,		REL)
109*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE_PC_LO12,		REL)
110*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE64_PC_LO20,		REL)
111*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE64_PC_HI12,		REL)
112*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE_HI20,		REL)
113*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE_LO12,		REL)
114*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE64_LO20,		REL)
115*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_IE64_HI12,		REL)
116*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LD_PC_HI20,		REL)
117*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LD_HI20,		REL)
118*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_GD_PC_HI20,		REL)
119*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_GD_HI20,		REL)
120*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (32_PCREL,			REL)
121*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (RELAX,			REL)
122*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (DELETE,			REL)
123*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ALIGN,			REL)
124*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (PCREL20_S2,			REL)
125*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (CFA,			REL)
126*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD6,			REL)
127*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB6,			REL)
128*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (ADD_ULEB128,		REL)
129*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (SUB_ULEB128,		REL)
130*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (64_PCREL,			REL)
131*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (CALL36,			REL)
132*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_PC_HI20,		REL)
133*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_PC_LO12,		REL)
134*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC64_PC_LO20,		REL)
135*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC64_PC_HI12,		REL)
136*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_HI20,		REL)
137*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_LO12,		REL)
138*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC64_LO20,		REL)
139*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC64_HI12,		REL)
140*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_LD,		REL)
141*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_CALL,		REL)
142*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE_HI20_R,		REL)
143*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE_ADD_R,		REL)
144*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LE_LO12_R,		REL)
145*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_LD_PCREL20_S2,		REL)
146*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_GD_PCREL20_S2,		REL)
147*7304104dSAndroid Build Coastguard WorkerRELOC_TYPE (TLS_DESC_PCREL20_S2,	REL)
148