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_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)
    124