1 2 #ifndef ELF_RELOC 3 #error "ELF_RELOC must be defined" 4 #endif 5 6 // Meets 2.09 ABI Specs. 7 ELF_RELOC(R_ARM_NONE, 0x00) 8 ELF_RELOC(R_ARM_PC24, 0x01) 9 ELF_RELOC(R_ARM_ABS32, 0x02) 10 ELF_RELOC(R_ARM_REL32, 0x03) 11 ELF_RELOC(R_ARM_LDR_PC_G0, 0x04) 12 ELF_RELOC(R_ARM_ABS16, 0x05) 13 ELF_RELOC(R_ARM_ABS12, 0x06) 14 ELF_RELOC(R_ARM_THM_ABS5, 0x07) 15 ELF_RELOC(R_ARM_ABS8, 0x08) 16 ELF_RELOC(R_ARM_SBREL32, 0x09) 17 ELF_RELOC(R_ARM_THM_CALL, 0x0a) 18 ELF_RELOC(R_ARM_THM_PC8, 0x0b) 19 ELF_RELOC(R_ARM_BREL_ADJ, 0x0c) 20 ELF_RELOC(R_ARM_TLS_DESC, 0x0d) 21 ELF_RELOC(R_ARM_THM_SWI8, 0x0e) 22 ELF_RELOC(R_ARM_XPC25, 0x0f) 23 ELF_RELOC(R_ARM_THM_XPC22, 0x10) 24 ELF_RELOC(R_ARM_TLS_DTPMOD32, 0x11) 25 ELF_RELOC(R_ARM_TLS_DTPOFF32, 0x12) 26 ELF_RELOC(R_ARM_TLS_TPOFF32, 0x13) 27 ELF_RELOC(R_ARM_COPY, 0x14) 28 ELF_RELOC(R_ARM_GLOB_DAT, 0x15) 29 ELF_RELOC(R_ARM_JUMP_SLOT, 0x16) 30 ELF_RELOC(R_ARM_RELATIVE, 0x17) 31 ELF_RELOC(R_ARM_GOTOFF32, 0x18) 32 ELF_RELOC(R_ARM_BASE_PREL, 0x19) 33 ELF_RELOC(R_ARM_GOT_BREL, 0x1a) 34 ELF_RELOC(R_ARM_PLT32, 0x1b) 35 ELF_RELOC(R_ARM_CALL, 0x1c) 36 ELF_RELOC(R_ARM_JUMP24, 0x1d) 37 ELF_RELOC(R_ARM_THM_JUMP24, 0x1e) 38 ELF_RELOC(R_ARM_BASE_ABS, 0x1f) 39 ELF_RELOC(R_ARM_ALU_PCREL_7_0, 0x20) 40 ELF_RELOC(R_ARM_ALU_PCREL_15_8, 0x21) 41 ELF_RELOC(R_ARM_ALU_PCREL_23_15, 0x22) 42 ELF_RELOC(R_ARM_LDR_SBREL_11_0_NC, 0x23) 43 ELF_RELOC(R_ARM_ALU_SBREL_19_12_NC, 0x24) 44 ELF_RELOC(R_ARM_ALU_SBREL_27_20_CK, 0x25) 45 ELF_RELOC(R_ARM_TARGET1, 0x26) 46 ELF_RELOC(R_ARM_SBREL31, 0x27) 47 ELF_RELOC(R_ARM_V4BX, 0x28) 48 ELF_RELOC(R_ARM_TARGET2, 0x29) 49 ELF_RELOC(R_ARM_PREL31, 0x2a) 50 ELF_RELOC(R_ARM_MOVW_ABS_NC, 0x2b) 51 ELF_RELOC(R_ARM_MOVT_ABS, 0x2c) 52 ELF_RELOC(R_ARM_MOVW_PREL_NC, 0x2d) 53 ELF_RELOC(R_ARM_MOVT_PREL, 0x2e) 54 ELF_RELOC(R_ARM_THM_MOVW_ABS_NC, 0x2f) 55 ELF_RELOC(R_ARM_THM_MOVT_ABS, 0x30) 56 ELF_RELOC(R_ARM_THM_MOVW_PREL_NC, 0x31) 57 ELF_RELOC(R_ARM_THM_MOVT_PREL, 0x32) 58 ELF_RELOC(R_ARM_THM_JUMP19, 0x33) 59 ELF_RELOC(R_ARM_THM_JUMP6, 0x34) 60 ELF_RELOC(R_ARM_THM_ALU_PREL_11_0, 0x35) 61 ELF_RELOC(R_ARM_THM_PC12, 0x36) 62 ELF_RELOC(R_ARM_ABS32_NOI, 0x37) 63 ELF_RELOC(R_ARM_REL32_NOI, 0x38) 64 ELF_RELOC(R_ARM_ALU_PC_G0_NC, 0x39) 65 ELF_RELOC(R_ARM_ALU_PC_G0, 0x3a) 66 ELF_RELOC(R_ARM_ALU_PC_G1_NC, 0x3b) 67 ELF_RELOC(R_ARM_ALU_PC_G1, 0x3c) 68 ELF_RELOC(R_ARM_ALU_PC_G2, 0x3d) 69 ELF_RELOC(R_ARM_LDR_PC_G1, 0x3e) 70 ELF_RELOC(R_ARM_LDR_PC_G2, 0x3f) 71 ELF_RELOC(R_ARM_LDRS_PC_G0, 0x40) 72 ELF_RELOC(R_ARM_LDRS_PC_G1, 0x41) 73 ELF_RELOC(R_ARM_LDRS_PC_G2, 0x42) 74 ELF_RELOC(R_ARM_LDC_PC_G0, 0x43) 75 ELF_RELOC(R_ARM_LDC_PC_G1, 0x44) 76 ELF_RELOC(R_ARM_LDC_PC_G2, 0x45) 77 ELF_RELOC(R_ARM_ALU_SB_G0_NC, 0x46) 78 ELF_RELOC(R_ARM_ALU_SB_G0, 0x47) 79 ELF_RELOC(R_ARM_ALU_SB_G1_NC, 0x48) 80 ELF_RELOC(R_ARM_ALU_SB_G1, 0x49) 81 ELF_RELOC(R_ARM_ALU_SB_G2, 0x4a) 82 ELF_RELOC(R_ARM_LDR_SB_G0, 0x4b) 83 ELF_RELOC(R_ARM_LDR_SB_G1, 0x4c) 84 ELF_RELOC(R_ARM_LDR_SB_G2, 0x4d) 85 ELF_RELOC(R_ARM_LDRS_SB_G0, 0x4e) 86 ELF_RELOC(R_ARM_LDRS_SB_G1, 0x4f) 87 ELF_RELOC(R_ARM_LDRS_SB_G2, 0x50) 88 ELF_RELOC(R_ARM_LDC_SB_G0, 0x51) 89 ELF_RELOC(R_ARM_LDC_SB_G1, 0x52) 90 ELF_RELOC(R_ARM_LDC_SB_G2, 0x53) 91 ELF_RELOC(R_ARM_MOVW_BREL_NC, 0x54) 92 ELF_RELOC(R_ARM_MOVT_BREL, 0x55) 93 ELF_RELOC(R_ARM_MOVW_BREL, 0x56) 94 ELF_RELOC(R_ARM_THM_MOVW_BREL_NC, 0x57) 95 ELF_RELOC(R_ARM_THM_MOVT_BREL, 0x58) 96 ELF_RELOC(R_ARM_THM_MOVW_BREL, 0x59) 97 ELF_RELOC(R_ARM_TLS_GOTDESC, 0x5a) 98 ELF_RELOC(R_ARM_TLS_CALL, 0x5b) 99 ELF_RELOC(R_ARM_TLS_DESCSEQ, 0x5c) 100 ELF_RELOC(R_ARM_THM_TLS_CALL, 0x5d) 101 ELF_RELOC(R_ARM_PLT32_ABS, 0x5e) 102 ELF_RELOC(R_ARM_GOT_ABS, 0x5f) 103 ELF_RELOC(R_ARM_GOT_PREL, 0x60) 104 ELF_RELOC(R_ARM_GOT_BREL12, 0x61) 105 ELF_RELOC(R_ARM_GOTOFF12, 0x62) 106 ELF_RELOC(R_ARM_GOTRELAX, 0x63) 107 ELF_RELOC(R_ARM_GNU_VTENTRY, 0x64) 108 ELF_RELOC(R_ARM_GNU_VTINHERIT, 0x65) 109 ELF_RELOC(R_ARM_THM_JUMP11, 0x66) 110 ELF_RELOC(R_ARM_THM_JUMP8, 0x67) 111 ELF_RELOC(R_ARM_TLS_GD32, 0x68) 112 ELF_RELOC(R_ARM_TLS_LDM32, 0x69) 113 ELF_RELOC(R_ARM_TLS_LDO32, 0x6a) 114 ELF_RELOC(R_ARM_TLS_IE32, 0x6b) 115 ELF_RELOC(R_ARM_TLS_LE32, 0x6c) 116 ELF_RELOC(R_ARM_TLS_LDO12, 0x6d) 117 ELF_RELOC(R_ARM_TLS_LE12, 0x6e) 118 ELF_RELOC(R_ARM_TLS_IE12GP, 0x6f) 119 ELF_RELOC(R_ARM_PRIVATE_0, 0x70) 120 ELF_RELOC(R_ARM_PRIVATE_1, 0x71) 121 ELF_RELOC(R_ARM_PRIVATE_2, 0x72) 122 ELF_RELOC(R_ARM_PRIVATE_3, 0x73) 123 ELF_RELOC(R_ARM_PRIVATE_4, 0x74) 124 ELF_RELOC(R_ARM_PRIVATE_5, 0x75) 125 ELF_RELOC(R_ARM_PRIVATE_6, 0x76) 126 ELF_RELOC(R_ARM_PRIVATE_7, 0x77) 127 ELF_RELOC(R_ARM_PRIVATE_8, 0x78) 128 ELF_RELOC(R_ARM_PRIVATE_9, 0x79) 129 ELF_RELOC(R_ARM_PRIVATE_10, 0x7a) 130 ELF_RELOC(R_ARM_PRIVATE_11, 0x7b) 131 ELF_RELOC(R_ARM_PRIVATE_12, 0x7c) 132 ELF_RELOC(R_ARM_PRIVATE_13, 0x7d) 133 ELF_RELOC(R_ARM_PRIVATE_14, 0x7e) 134 ELF_RELOC(R_ARM_PRIVATE_15, 0x7f) 135 ELF_RELOC(R_ARM_ME_TOO, 0x80) 136 ELF_RELOC(R_ARM_THM_TLS_DESCSEQ16, 0x81) 137 ELF_RELOC(R_ARM_THM_TLS_DESCSEQ32, 0x82) 138 ELF_RELOC(R_ARM_IRELATIVE, 0xa0) 139