1 2#ifndef ELF_RELOC 3#error "ELF_RELOC must be defined" 4#endif 5 6// ABI release 1.0 7ELF_RELOC(R_AARCH64_NONE, 0) 8 9ELF_RELOC(R_AARCH64_ABS64, 0x101) 10ELF_RELOC(R_AARCH64_ABS32, 0x102) 11ELF_RELOC(R_AARCH64_ABS16, 0x103) 12ELF_RELOC(R_AARCH64_PREL64, 0x104) 13ELF_RELOC(R_AARCH64_PREL32, 0x105) 14ELF_RELOC(R_AARCH64_PREL16, 0x106) 15 16ELF_RELOC(R_AARCH64_MOVW_UABS_G0, 0x107) 17ELF_RELOC(R_AARCH64_MOVW_UABS_G0_NC, 0x108) 18ELF_RELOC(R_AARCH64_MOVW_UABS_G1, 0x109) 19ELF_RELOC(R_AARCH64_MOVW_UABS_G1_NC, 0x10a) 20ELF_RELOC(R_AARCH64_MOVW_UABS_G2, 0x10b) 21ELF_RELOC(R_AARCH64_MOVW_UABS_G2_NC, 0x10c) 22ELF_RELOC(R_AARCH64_MOVW_UABS_G3, 0x10d) 23ELF_RELOC(R_AARCH64_MOVW_SABS_G0, 0x10e) 24ELF_RELOC(R_AARCH64_MOVW_SABS_G1, 0x10f) 25ELF_RELOC(R_AARCH64_MOVW_SABS_G2, 0x110) 26 27ELF_RELOC(R_AARCH64_LD_PREL_LO19, 0x111) 28ELF_RELOC(R_AARCH64_ADR_PREL_LO21, 0x112) 29ELF_RELOC(R_AARCH64_ADR_PREL_PG_HI21, 0x113) 30ELF_RELOC(R_AARCH64_ADR_PREL_PG_HI21_NC, 0x114) 31ELF_RELOC(R_AARCH64_ADD_ABS_LO12_NC, 0x115) 32ELF_RELOC(R_AARCH64_LDST8_ABS_LO12_NC, 0x116) 33 34ELF_RELOC(R_AARCH64_TSTBR14, 0x117) 35ELF_RELOC(R_AARCH64_CONDBR19, 0x118) 36ELF_RELOC(R_AARCH64_JUMP26, 0x11a) 37ELF_RELOC(R_AARCH64_CALL26, 0x11b) 38 39ELF_RELOC(R_AARCH64_LDST16_ABS_LO12_NC, 0x11c) 40ELF_RELOC(R_AARCH64_LDST32_ABS_LO12_NC, 0x11d) 41ELF_RELOC(R_AARCH64_LDST64_ABS_LO12_NC, 0x11e) 42 43ELF_RELOC(R_AARCH64_MOVW_PREL_G0, 0x11f) 44ELF_RELOC(R_AARCH64_MOVW_PREL_G0_NC, 0x120) 45ELF_RELOC(R_AARCH64_MOVW_PREL_G1, 0x121) 46ELF_RELOC(R_AARCH64_MOVW_PREL_G1_NC, 0x122) 47ELF_RELOC(R_AARCH64_MOVW_PREL_G2, 0x123) 48ELF_RELOC(R_AARCH64_MOVW_PREL_G2_NC, 0x124) 49ELF_RELOC(R_AARCH64_MOVW_PREL_G3, 0x125) 50 51ELF_RELOC(R_AARCH64_LDST128_ABS_LO12_NC, 0x12b) 52 53ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G0, 0x12c) 54ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G0_NC, 0x12d) 55ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G1, 0x12e) 56ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G1_NC, 0x12f) 57ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G2, 0x130) 58ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G2_NC, 0x131) 59ELF_RELOC(R_AARCH64_MOVW_GOTOFF_G3, 0x132) 60 61ELF_RELOC(R_AARCH64_GOTREL64, 0x133) 62ELF_RELOC(R_AARCH64_GOTREL32, 0x134) 63 64ELF_RELOC(R_AARCH64_GOT_LD_PREL19, 0x135) 65ELF_RELOC(R_AARCH64_LD64_GOTOFF_LO15, 0x136) 66ELF_RELOC(R_AARCH64_ADR_GOT_PAGE, 0x137) 67ELF_RELOC(R_AARCH64_LD64_GOT_LO12_NC, 0x138) 68ELF_RELOC(R_AARCH64_LD64_GOTPAGE_LO15, 0x139) 69 70ELF_RELOC(R_AARCH64_TLSGD_ADR_PREL21, 0x200) 71ELF_RELOC(R_AARCH64_TLSGD_ADR_PAGE21, 0x201) 72ELF_RELOC(R_AARCH64_TLSGD_ADD_LO12_NC, 0x202) 73ELF_RELOC(R_AARCH64_TLSGD_MOVW_G1, 0x203) 74ELF_RELOC(R_AARCH64_TLSGD_MOVW_G0_NC, 0x204) 75 76ELF_RELOC(R_AARCH64_TLSLD_ADR_PREL21, 0x205) 77ELF_RELOC(R_AARCH64_TLSLD_ADR_PAGE21, 0x206) 78ELF_RELOC(R_AARCH64_TLSLD_ADD_LO12_NC, 0x207) 79ELF_RELOC(R_AARCH64_TLSLD_MOVW_G1, 0x208) 80ELF_RELOC(R_AARCH64_TLSLD_MOVW_G0_NC, 0x209) 81ELF_RELOC(R_AARCH64_TLSLD_LD_PREL19, 0x20a) 82ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G2, 0x20b) 83ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1, 0x20c) 84ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, 0x20d) 85ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0, 0x20e) 86ELF_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, 0x20f) 87ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_HI12, 0x210) 88ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_LO12, 0x211) 89ELF_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, 0x212) 90ELF_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12, 0x213) 91ELF_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 0x214) 92ELF_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12, 0x215) 93ELF_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 0x216) 94ELF_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12, 0x217) 95ELF_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 0x218) 96ELF_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12, 0x219) 97ELF_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 0x21a) 98 99ELF_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 0x21b) 100ELF_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 0x21c) 101ELF_RELOC(R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 0x21d) 102ELF_RELOC(R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 0x21e) 103ELF_RELOC(R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 0x21f) 104 105ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G2, 0x220) 106ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1, 0x221) 107ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 0x222) 108ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0, 0x223) 109ELF_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 0x224) 110ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_HI12, 0x225) 111ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12, 0x226) 112ELF_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 0x227) 113ELF_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12, 0x228) 114ELF_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC, 0x229) 115ELF_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12, 0x22a) 116ELF_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 0x22b) 117ELF_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12, 0x22c) 118ELF_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 0x22d) 119ELF_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12, 0x22e) 120ELF_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 0x22f) 121 122ELF_RELOC(R_AARCH64_TLSDESC_LD_PREL19, 0x230) 123ELF_RELOC(R_AARCH64_TLSDESC_ADR_PREL21, 0x231) 124ELF_RELOC(R_AARCH64_TLSDESC_ADR_PAGE21, 0x232) 125ELF_RELOC(R_AARCH64_TLSDESC_LD64_LO12_NC, 0x233) 126ELF_RELOC(R_AARCH64_TLSDESC_ADD_LO12_NC, 0x234) 127ELF_RELOC(R_AARCH64_TLSDESC_OFF_G1, 0x235) 128ELF_RELOC(R_AARCH64_TLSDESC_OFF_G0_NC, 0x236) 129ELF_RELOC(R_AARCH64_TLSDESC_LDR, 0x237) 130ELF_RELOC(R_AARCH64_TLSDESC_ADD, 0x238) 131ELF_RELOC(R_AARCH64_TLSDESC_CALL, 0x239) 132 133ELF_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12, 0x23a) 134ELF_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC, 0x23b) 135 136ELF_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12, 0x23c) 137ELF_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC, 0x23d) 138 139ELF_RELOC(R_AARCH64_COPY, 0x400) 140ELF_RELOC(R_AARCH64_GLOB_DAT, 0x401) 141ELF_RELOC(R_AARCH64_JUMP_SLOT, 0x402) 142ELF_RELOC(R_AARCH64_RELATIVE, 0x403) 143ELF_RELOC(R_AARCH64_TLS_DTPREL64, 0x404) 144ELF_RELOC(R_AARCH64_TLS_DTPMOD64, 0x405) 145ELF_RELOC(R_AARCH64_TLS_TPREL64, 0x406) 146ELF_RELOC(R_AARCH64_TLSDESC, 0x407) 147ELF_RELOC(R_AARCH64_IRELATIVE, 0x408) 148