[PowerPC] Add R_PPC64_GLOB_DAT and R_PPC64_RELATIVE to PowerPC64.def
[oota-llvm.git] / include / llvm / Support / ELFRelocs / PowerPC.def
1
2 #ifndef ELF_RELOC
3 #error "ELF_RELOC must be defined"
4 #endif
5
6 // glibc's PowerPC asm/sigcontext.h, when compiling for PPC64, has the
7 // unfortunate behavior of including asm/elf.h, which defines R_PPC_NONE, etc.
8 // to their corresponding integer values. As a result, we need to undef them
9 // here before continuing.
10
11 #undef R_PPC_NONE
12 #undef R_PPC_ADDR32
13 #undef R_PPC_ADDR24
14 #undef R_PPC_ADDR16
15 #undef R_PPC_ADDR16_LO
16 #undef R_PPC_ADDR16_HI
17 #undef R_PPC_ADDR16_HA
18 #undef R_PPC_ADDR14
19 #undef R_PPC_ADDR14_BRTAKEN
20 #undef R_PPC_ADDR14_BRNTAKEN
21 #undef R_PPC_REL24
22 #undef R_PPC_REL14
23 #undef R_PPC_REL14_BRTAKEN
24 #undef R_PPC_REL14_BRNTAKEN
25 #undef R_PPC_GOT16
26 #undef R_PPC_GOT16_LO
27 #undef R_PPC_GOT16_HI
28 #undef R_PPC_GOT16_HA
29 #undef R_PPC_PLTREL24
30 #undef R_PPC_JMP_SLOT
31 #undef R_PPC_LOCAL24PC
32 #undef R_PPC_REL32
33 #undef R_PPC_TLS
34 #undef R_PPC_DTPMOD32
35 #undef R_PPC_TPREL16
36 #undef R_PPC_TPREL16_LO
37 #undef R_PPC_TPREL16_HI
38 #undef R_PPC_TPREL16_HA
39 #undef R_PPC_TPREL32
40 #undef R_PPC_DTPREL16
41 #undef R_PPC_DTPREL16_LO
42 #undef R_PPC_DTPREL16_HI
43 #undef R_PPC_DTPREL16_HA
44 #undef R_PPC_DTPREL32
45 #undef R_PPC_GOT_TLSGD16
46 #undef R_PPC_GOT_TLSGD16_LO
47 #undef R_PPC_GOT_TLSGD16_HI
48 #undef R_PPC_GOT_TLSGD16_HA
49 #undef R_PPC_GOT_TLSLD16
50 #undef R_PPC_GOT_TLSLD16_LO
51 #undef R_PPC_GOT_TLSLD16_HI
52 #undef R_PPC_GOT_TLSLD16_HA
53 #undef R_PPC_GOT_TPREL16
54 #undef R_PPC_GOT_TPREL16_LO
55 #undef R_PPC_GOT_TPREL16_HI
56 #undef R_PPC_GOT_TPREL16_HA
57 #undef R_PPC_GOT_DTPREL16
58 #undef R_PPC_GOT_DTPREL16_LO
59 #undef R_PPC_GOT_DTPREL16_HI
60 #undef R_PPC_GOT_DTPREL16_HA
61 #undef R_PPC_TLSGD
62 #undef R_PPC_TLSLD
63 #undef R_PPC_REL16
64 #undef R_PPC_REL16_LO
65 #undef R_PPC_REL16_HI
66 #undef R_PPC_REL16_HA
67
68 ELF_RELOC(R_PPC_NONE,                   0)      /* No relocation. */
69 ELF_RELOC(R_PPC_ADDR32,                 1)
70 ELF_RELOC(R_PPC_ADDR24,                 2)
71 ELF_RELOC(R_PPC_ADDR16,                 3)
72 ELF_RELOC(R_PPC_ADDR16_LO,              4)
73 ELF_RELOC(R_PPC_ADDR16_HI,              5)
74 ELF_RELOC(R_PPC_ADDR16_HA,              6)
75 ELF_RELOC(R_PPC_ADDR14,                 7)
76 ELF_RELOC(R_PPC_ADDR14_BRTAKEN,         8)
77 ELF_RELOC(R_PPC_ADDR14_BRNTAKEN,        9)
78 ELF_RELOC(R_PPC_REL24,                  10)
79 ELF_RELOC(R_PPC_REL14,                  11)
80 ELF_RELOC(R_PPC_REL14_BRTAKEN,          12)
81 ELF_RELOC(R_PPC_REL14_BRNTAKEN,         13)
82 ELF_RELOC(R_PPC_GOT16,                  14)
83 ELF_RELOC(R_PPC_GOT16_LO,               15)
84 ELF_RELOC(R_PPC_GOT16_HI,               16)
85 ELF_RELOC(R_PPC_GOT16_HA,               17)
86 ELF_RELOC(R_PPC_PLTREL24,               18)
87 ELF_RELOC(R_PPC_JMP_SLOT,               21)
88 ELF_RELOC(R_PPC_LOCAL24PC,              23)
89 ELF_RELOC(R_PPC_REL32,                  26)
90 ELF_RELOC(R_PPC_TLS,                    67)
91 ELF_RELOC(R_PPC_DTPMOD32,               68)
92 ELF_RELOC(R_PPC_TPREL16,                69)
93 ELF_RELOC(R_PPC_TPREL16_LO,             70)
94 ELF_RELOC(R_PPC_TPREL16_HI,             71)
95 ELF_RELOC(R_PPC_TPREL16_HA,             72)
96 ELF_RELOC(R_PPC_TPREL32,                73)
97 ELF_RELOC(R_PPC_DTPREL16,               74)
98 ELF_RELOC(R_PPC_DTPREL16_LO,            75)
99 ELF_RELOC(R_PPC_DTPREL16_HI,            76)
100 ELF_RELOC(R_PPC_DTPREL16_HA,            77)
101 ELF_RELOC(R_PPC_DTPREL32,               78)
102 ELF_RELOC(R_PPC_GOT_TLSGD16,            79)
103 ELF_RELOC(R_PPC_GOT_TLSGD16_LO,         80)
104 ELF_RELOC(R_PPC_GOT_TLSGD16_HI,         81)
105 ELF_RELOC(R_PPC_GOT_TLSGD16_HA,         82)
106 ELF_RELOC(R_PPC_GOT_TLSLD16,            83)
107 ELF_RELOC(R_PPC_GOT_TLSLD16_LO,         84)
108 ELF_RELOC(R_PPC_GOT_TLSLD16_HI,         85)
109 ELF_RELOC(R_PPC_GOT_TLSLD16_HA,         86)
110 ELF_RELOC(R_PPC_GOT_TPREL16,            87)
111 ELF_RELOC(R_PPC_GOT_TPREL16_LO,         88)
112 ELF_RELOC(R_PPC_GOT_TPREL16_HI,         89)
113 ELF_RELOC(R_PPC_GOT_TPREL16_HA,         90)
114 ELF_RELOC(R_PPC_GOT_DTPREL16,           91)
115 ELF_RELOC(R_PPC_GOT_DTPREL16_LO,        92)
116 ELF_RELOC(R_PPC_GOT_DTPREL16_HI,        93)
117 ELF_RELOC(R_PPC_GOT_DTPREL16_HA,        94)
118 ELF_RELOC(R_PPC_TLSGD,                  95)
119 ELF_RELOC(R_PPC_TLSLD,                  96)
120 ELF_RELOC(R_PPC_REL16,                  249)
121 ELF_RELOC(R_PPC_REL16_LO,               250)
122 ELF_RELOC(R_PPC_REL16_HI,               251)
123 ELF_RELOC(R_PPC_REL16_HA,               252)