aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/llvm12/include/llvm/BinaryFormat/ELFRelocs/PowerPC.def
blob: 28036889cca6bb46e64672e0ccbec187b3de81ce (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#ifndef ELF_RELOC
#error "ELF_RELOC must be defined"
#endif

// glibc's PowerPC asm/sigcontext.h, when compiling for PPC64, has the
// unfortunate behavior of including asm/elf.h, which defines R_PPC_NONE, etc.
// to their corresponding integer values. As a result, we need to undef them
// here before continuing.

#undef R_PPC_NONE
#undef R_PPC_ADDR32
#undef R_PPC_ADDR24
#undef R_PPC_ADDR16
#undef R_PPC_ADDR16_LO
#undef R_PPC_ADDR16_HI
#undef R_PPC_ADDR16_HA
#undef R_PPC_ADDR14
#undef R_PPC_ADDR14_BRTAKEN
#undef R_PPC_ADDR14_BRNTAKEN
#undef R_PPC_REL24
#undef R_PPC_REL14
#undef R_PPC_REL14_BRTAKEN
#undef R_PPC_REL14_BRNTAKEN
#undef R_PPC_GOT16
#undef R_PPC_GOT16_LO
#undef R_PPC_GOT16_HI
#undef R_PPC_GOT16_HA
#undef R_PPC_PLTREL24
#undef R_PPC_COPY
#undef R_PPC_GLOB_DAT
#undef R_PPC_JMP_SLOT
#undef R_PPC_RELATIVE
#undef R_PPC_LOCAL24PC
#undef R_PPC_UADDR32
#undef R_PPC_UADDR16
#undef R_PPC_REL32
#undef R_PPC_PLT32
#undef R_PPC_PLTREL32
#undef R_PPC_PLT16_LO
#undef R_PPC_PLT16_HI
#undef R_PPC_PLT16_HA
#undef R_PPC_SDAREL16
#undef R_PPC_SECTOFF
#undef R_PPC_SECTOFF_LO
#undef R_PPC_SECTOFF_HI
#undef R_PPC_SECTOFF_HA
#undef R_PPC_ADDR30
#undef R_PPC_TLS
#undef R_PPC_DTPMOD32
#undef R_PPC_TPREL16
#undef R_PPC_TPREL16_LO
#undef R_PPC_TPREL16_HI
#undef R_PPC_TPREL16_HA
#undef R_PPC_TPREL32
#undef R_PPC_DTPREL16
#undef R_PPC_DTPREL16_LO
#undef R_PPC_DTPREL16_HI
#undef R_PPC_DTPREL16_HA
#undef R_PPC_DTPREL32
#undef R_PPC_GOT_TLSGD16
#undef R_PPC_GOT_TLSGD16_LO
#undef R_PPC_GOT_TLSGD16_HI
#undef R_PPC_GOT_TLSGD16_HA
#undef R_PPC_GOT_TLSLD16
#undef R_PPC_GOT_TLSLD16_LO
#undef R_PPC_GOT_TLSLD16_HI
#undef R_PPC_GOT_TLSLD16_HA
#undef R_PPC_GOT_TPREL16
#undef R_PPC_GOT_TPREL16_LO
#undef R_PPC_GOT_TPREL16_HI
#undef R_PPC_GOT_TPREL16_HA
#undef R_PPC_GOT_DTPREL16
#undef R_PPC_GOT_DTPREL16_LO
#undef R_PPC_GOT_DTPREL16_HI
#undef R_PPC_GOT_DTPREL16_HA
#undef R_PPC_TLSGD
#undef R_PPC_TLSLD
#undef R_PPC_REL16
#undef R_PPC_REL16_LO
#undef R_PPC_REL16_HI
#undef R_PPC_REL16_HA

ELF_RELOC(R_PPC_NONE,                   0)      /* No relocation. */
ELF_RELOC(R_PPC_ADDR32,                 1)
ELF_RELOC(R_PPC_ADDR24,                 2)
ELF_RELOC(R_PPC_ADDR16,                 3)
ELF_RELOC(R_PPC_ADDR16_LO,              4)
ELF_RELOC(R_PPC_ADDR16_HI,              5)
ELF_RELOC(R_PPC_ADDR16_HA,              6)
ELF_RELOC(R_PPC_ADDR14,                 7)
ELF_RELOC(R_PPC_ADDR14_BRTAKEN,         8)
ELF_RELOC(R_PPC_ADDR14_BRNTAKEN,        9)
ELF_RELOC(R_PPC_REL24,                  10)
ELF_RELOC(R_PPC_REL14,                  11)
ELF_RELOC(R_PPC_REL14_BRTAKEN,          12)
ELF_RELOC(R_PPC_REL14_BRNTAKEN,         13)
ELF_RELOC(R_PPC_GOT16,                  14)
ELF_RELOC(R_PPC_GOT16_LO,               15)
ELF_RELOC(R_PPC_GOT16_HI,               16)
ELF_RELOC(R_PPC_GOT16_HA,               17)
ELF_RELOC(R_PPC_PLTREL24,               18)
ELF_RELOC(R_PPC_COPY,                   19)
ELF_RELOC(R_PPC_GLOB_DAT,               20)
ELF_RELOC(R_PPC_JMP_SLOT,               21)
ELF_RELOC(R_PPC_RELATIVE,               22)
ELF_RELOC(R_PPC_LOCAL24PC,              23)
ELF_RELOC(R_PPC_UADDR32,                24)
ELF_RELOC(R_PPC_UADDR16,                25)
ELF_RELOC(R_PPC_REL32,                  26)
ELF_RELOC(R_PPC_PLT32,                  27)
ELF_RELOC(R_PPC_PLTREL32,               28)
ELF_RELOC(R_PPC_PLT16_LO,               29)
ELF_RELOC(R_PPC_PLT16_HI,               30)
ELF_RELOC(R_PPC_PLT16_HA,               31)
ELF_RELOC(R_PPC_SDAREL16,               32)
ELF_RELOC(R_PPC_SECTOFF,                33)
ELF_RELOC(R_PPC_SECTOFF_LO,             34)
ELF_RELOC(R_PPC_SECTOFF_HI,             35)
ELF_RELOC(R_PPC_SECTOFF_HA,             36)
ELF_RELOC(R_PPC_ADDR30,                 37)
ELF_RELOC(R_PPC_TLS,                    67)
ELF_RELOC(R_PPC_DTPMOD32,               68)
ELF_RELOC(R_PPC_TPREL16,                69)
ELF_RELOC(R_PPC_TPREL16_LO,             70)
ELF_RELOC(R_PPC_TPREL16_HI,             71)
ELF_RELOC(R_PPC_TPREL16_HA,             72)
ELF_RELOC(R_PPC_TPREL32,                73)
ELF_RELOC(R_PPC_DTPREL16,               74)
ELF_RELOC(R_PPC_DTPREL16_LO,            75)
ELF_RELOC(R_PPC_DTPREL16_HI,            76)
ELF_RELOC(R_PPC_DTPREL16_HA,            77)
ELF_RELOC(R_PPC_DTPREL32,               78)
ELF_RELOC(R_PPC_GOT_TLSGD16,            79)
ELF_RELOC(R_PPC_GOT_TLSGD16_LO,         80)
ELF_RELOC(R_PPC_GOT_TLSGD16_HI,         81)
ELF_RELOC(R_PPC_GOT_TLSGD16_HA,         82)
ELF_RELOC(R_PPC_GOT_TLSLD16,            83)
ELF_RELOC(R_PPC_GOT_TLSLD16_LO,         84)
ELF_RELOC(R_PPC_GOT_TLSLD16_HI,         85)
ELF_RELOC(R_PPC_GOT_TLSLD16_HA,         86)
ELF_RELOC(R_PPC_GOT_TPREL16,            87)
ELF_RELOC(R_PPC_GOT_TPREL16_LO,         88)
ELF_RELOC(R_PPC_GOT_TPREL16_HI,         89)
ELF_RELOC(R_PPC_GOT_TPREL16_HA,         90)
ELF_RELOC(R_PPC_GOT_DTPREL16,           91)
ELF_RELOC(R_PPC_GOT_DTPREL16_LO,        92)
ELF_RELOC(R_PPC_GOT_DTPREL16_HI,        93)
ELF_RELOC(R_PPC_GOT_DTPREL16_HA,        94)
ELF_RELOC(R_PPC_TLSGD,                  95)
ELF_RELOC(R_PPC_TLSLD,                  96)
ELF_RELOC(R_PPC_IRELATIVE,              248)
ELF_RELOC(R_PPC_REL16,                  249)
ELF_RELOC(R_PPC_REL16_LO,               250)
ELF_RELOC(R_PPC_REL16_HI,               251)
ELF_RELOC(R_PPC_REL16_HA,               252)