Home | History | Annotate | Download | only in ELFRelocs
      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_PPC64_NONE
     12 #undef R_PPC64_ADDR32
     13 #undef R_PPC64_ADDR24
     14 #undef R_PPC64_ADDR16
     15 #undef R_PPC64_ADDR16_LO
     16 #undef R_PPC64_ADDR16_HI
     17 #undef R_PPC64_ADDR16_HA
     18 #undef R_PPC64_ADDR14
     19 #undef R_PPC64_ADDR14_BRTAKEN
     20 #undef R_PPC64_ADDR14_BRNTAKEN
     21 #undef R_PPC64_REL24
     22 #undef R_PPC64_REL14
     23 #undef R_PPC64_REL14_BRTAKEN
     24 #undef R_PPC64_REL14_BRNTAKEN
     25 #undef R_PPC64_GOT16
     26 #undef R_PPC64_GOT16_LO
     27 #undef R_PPC64_GOT16_HI
     28 #undef R_PPC64_GOT16_HA
     29 #undef R_PPC64_GLOB_DAT
     30 #undef R_PPC64_JMP_SLOT
     31 #undef R_PPC64_RELATIVE
     32 #undef R_PPC64_REL32
     33 #undef R_PPC64_ADDR64
     34 #undef R_PPC64_ADDR16_HIGHER
     35 #undef R_PPC64_ADDR16_HIGHERA
     36 #undef R_PPC64_ADDR16_HIGHEST
     37 #undef R_PPC64_ADDR16_HIGHESTA
     38 #undef R_PPC64_REL64
     39 #undef R_PPC64_TOC16
     40 #undef R_PPC64_TOC16_LO
     41 #undef R_PPC64_TOC16_HI
     42 #undef R_PPC64_TOC16_HA
     43 #undef R_PPC64_TOC
     44 #undef R_PPC64_ADDR16_DS
     45 #undef R_PPC64_ADDR16_LO_DS
     46 #undef R_PPC64_GOT16_DS
     47 #undef R_PPC64_GOT16_LO_DS
     48 #undef R_PPC64_TOC16_DS
     49 #undef R_PPC64_TOC16_LO_DS
     50 #undef R_PPC64_TLS
     51 #undef R_PPC64_DTPMOD64
     52 #undef R_PPC64_TPREL16
     53 #undef R_PPC64_TPREL16_LO
     54 #undef R_PPC64_TPREL16_HI
     55 #undef R_PPC64_TPREL16_HA
     56 #undef R_PPC64_TPREL64
     57 #undef R_PPC64_DTPREL16
     58 #undef R_PPC64_DTPREL16_LO
     59 #undef R_PPC64_DTPREL16_HI
     60 #undef R_PPC64_DTPREL16_HA
     61 #undef R_PPC64_DTPREL64
     62 #undef R_PPC64_GOT_TLSGD16
     63 #undef R_PPC64_GOT_TLSGD16_LO
     64 #undef R_PPC64_GOT_TLSGD16_HI
     65 #undef R_PPC64_GOT_TLSGD16_HA
     66 #undef R_PPC64_GOT_TLSLD16
     67 #undef R_PPC64_GOT_TLSLD16_LO
     68 #undef R_PPC64_GOT_TLSLD16_HI
     69 #undef R_PPC64_GOT_TLSLD16_HA
     70 #undef R_PPC64_GOT_TPREL16_DS
     71 #undef R_PPC64_GOT_TPREL16_LO_DS
     72 #undef R_PPC64_GOT_TPREL16_HI
     73 #undef R_PPC64_GOT_TPREL16_HA
     74 #undef R_PPC64_GOT_DTPREL16_DS
     75 #undef R_PPC64_GOT_DTPREL16_LO_DS
     76 #undef R_PPC64_GOT_DTPREL16_HI
     77 #undef R_PPC64_GOT_DTPREL16_HA
     78 #undef R_PPC64_TPREL16_DS
     79 #undef R_PPC64_TPREL16_LO_DS
     80 #undef R_PPC64_TPREL16_HIGHER
     81 #undef R_PPC64_TPREL16_HIGHERA
     82 #undef R_PPC64_TPREL16_HIGHEST
     83 #undef R_PPC64_TPREL16_HIGHESTA
     84 #undef R_PPC64_DTPREL16_DS
     85 #undef R_PPC64_DTPREL16_LO_DS
     86 #undef R_PPC64_DTPREL16_HIGHER
     87 #undef R_PPC64_DTPREL16_HIGHERA
     88 #undef R_PPC64_DTPREL16_HIGHEST
     89 #undef R_PPC64_DTPREL16_HIGHESTA
     90 #undef R_PPC64_TLSGD
     91 #undef R_PPC64_TLSLD
     92 #undef R_PPC64_REL16
     93 #undef R_PPC64_REL16_LO
     94 #undef R_PPC64_REL16_HI
     95 #undef R_PPC64_REL16_HA
     96 
     97 ELF_RELOC(R_PPC64_NONE,                 0)
     98 ELF_RELOC(R_PPC64_ADDR32,               1)
     99 ELF_RELOC(R_PPC64_ADDR24,               2)
    100 ELF_RELOC(R_PPC64_ADDR16,               3)
    101 ELF_RELOC(R_PPC64_ADDR16_LO,            4)
    102 ELF_RELOC(R_PPC64_ADDR16_HI,            5)
    103 ELF_RELOC(R_PPC64_ADDR16_HA,            6)
    104 ELF_RELOC(R_PPC64_ADDR14,               7)
    105 ELF_RELOC(R_PPC64_ADDR14_BRTAKEN,       8)
    106 ELF_RELOC(R_PPC64_ADDR14_BRNTAKEN,      9)
    107 ELF_RELOC(R_PPC64_REL24,                10)
    108 ELF_RELOC(R_PPC64_REL14,                11)
    109 ELF_RELOC(R_PPC64_REL14_BRTAKEN,        12)
    110 ELF_RELOC(R_PPC64_REL14_BRNTAKEN,       13)
    111 ELF_RELOC(R_PPC64_GOT16,                14)
    112 ELF_RELOC(R_PPC64_GOT16_LO,             15)
    113 ELF_RELOC(R_PPC64_GOT16_HI,             16)
    114 ELF_RELOC(R_PPC64_GOT16_HA,             17)
    115 ELF_RELOC(R_PPC64_GLOB_DAT,             20)
    116 ELF_RELOC(R_PPC64_JMP_SLOT,             21)
    117 ELF_RELOC(R_PPC64_RELATIVE,             22)
    118 ELF_RELOC(R_PPC64_REL32,                26)
    119 ELF_RELOC(R_PPC64_ADDR64,               38)
    120 ELF_RELOC(R_PPC64_ADDR16_HIGHER,        39)
    121 ELF_RELOC(R_PPC64_ADDR16_HIGHERA,       40)
    122 ELF_RELOC(R_PPC64_ADDR16_HIGHEST,       41)
    123 ELF_RELOC(R_PPC64_ADDR16_HIGHESTA,      42)
    124 ELF_RELOC(R_PPC64_REL64,                44)
    125 ELF_RELOC(R_PPC64_TOC16,                47)
    126 ELF_RELOC(R_PPC64_TOC16_LO,             48)
    127 ELF_RELOC(R_PPC64_TOC16_HI,             49)
    128 ELF_RELOC(R_PPC64_TOC16_HA,             50)
    129 ELF_RELOC(R_PPC64_TOC,                  51)
    130 ELF_RELOC(R_PPC64_ADDR16_DS,            56)
    131 ELF_RELOC(R_PPC64_ADDR16_LO_DS,         57)
    132 ELF_RELOC(R_PPC64_GOT16_DS,             58)
    133 ELF_RELOC(R_PPC64_GOT16_LO_DS,          59)
    134 ELF_RELOC(R_PPC64_TOC16_DS,             63)
    135 ELF_RELOC(R_PPC64_TOC16_LO_DS,          64)
    136 ELF_RELOC(R_PPC64_TLS,                  67)
    137 ELF_RELOC(R_PPC64_DTPMOD64,             68)
    138 ELF_RELOC(R_PPC64_TPREL16,              69)
    139 ELF_RELOC(R_PPC64_TPREL16_LO,           70)
    140 ELF_RELOC(R_PPC64_TPREL16_HI,           71)
    141 ELF_RELOC(R_PPC64_TPREL16_HA,           72)
    142 ELF_RELOC(R_PPC64_TPREL64,              73)
    143 ELF_RELOC(R_PPC64_DTPREL16,             74)
    144 ELF_RELOC(R_PPC64_DTPREL16_LO,          75)
    145 ELF_RELOC(R_PPC64_DTPREL16_HI,          76)
    146 ELF_RELOC(R_PPC64_DTPREL16_HA,          77)
    147 ELF_RELOC(R_PPC64_DTPREL64,             78)
    148 ELF_RELOC(R_PPC64_GOT_TLSGD16,          79)
    149 ELF_RELOC(R_PPC64_GOT_TLSGD16_LO,       80)
    150 ELF_RELOC(R_PPC64_GOT_TLSGD16_HI,       81)
    151 ELF_RELOC(R_PPC64_GOT_TLSGD16_HA,       82)
    152 ELF_RELOC(R_PPC64_GOT_TLSLD16,          83)
    153 ELF_RELOC(R_PPC64_GOT_TLSLD16_LO,       84)
    154 ELF_RELOC(R_PPC64_GOT_TLSLD16_HI,       85)
    155 ELF_RELOC(R_PPC64_GOT_TLSLD16_HA,       86)
    156 ELF_RELOC(R_PPC64_GOT_TPREL16_DS,       87)
    157 ELF_RELOC(R_PPC64_GOT_TPREL16_LO_DS,    88)
    158 ELF_RELOC(R_PPC64_GOT_TPREL16_HI,       89)
    159 ELF_RELOC(R_PPC64_GOT_TPREL16_HA,       90)
    160 ELF_RELOC(R_PPC64_GOT_DTPREL16_DS,      91)
    161 ELF_RELOC(R_PPC64_GOT_DTPREL16_LO_DS,   92)
    162 ELF_RELOC(R_PPC64_GOT_DTPREL16_HI,      93)
    163 ELF_RELOC(R_PPC64_GOT_DTPREL16_HA,      94)
    164 ELF_RELOC(R_PPC64_TPREL16_DS,           95)
    165 ELF_RELOC(R_PPC64_TPREL16_LO_DS,        96)
    166 ELF_RELOC(R_PPC64_TPREL16_HIGHER,       97)
    167 ELF_RELOC(R_PPC64_TPREL16_HIGHERA,      98)
    168 ELF_RELOC(R_PPC64_TPREL16_HIGHEST,      99)
    169 ELF_RELOC(R_PPC64_TPREL16_HIGHESTA,     100)
    170 ELF_RELOC(R_PPC64_DTPREL16_DS,          101)
    171 ELF_RELOC(R_PPC64_DTPREL16_LO_DS,       102)
    172 ELF_RELOC(R_PPC64_DTPREL16_HIGHER,      103)
    173 ELF_RELOC(R_PPC64_DTPREL16_HIGHERA,     104)
    174 ELF_RELOC(R_PPC64_DTPREL16_HIGHEST,     105)
    175 ELF_RELOC(R_PPC64_DTPREL16_HIGHESTA,    106)
    176 ELF_RELOC(R_PPC64_TLSGD,                107)
    177 ELF_RELOC(R_PPC64_TLSLD,                108)
    178 ELF_RELOC(R_PPC64_REL16,                249)
    179 ELF_RELOC(R_PPC64_REL16_LO,             250)
    180 ELF_RELOC(R_PPC64_REL16_HI,             251)
    181 ELF_RELOC(R_PPC64_REL16_HA,             252)
    182