ELF.cpp revision 36b56886974eae4f9c5ebc96befd3e7bfe5de338
1//===- ELF.cpp - ELF object file implementation -----------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10#include "llvm/Object/ELF.h" 11 12namespace llvm { 13namespace object { 14 15#define LLVM_ELF_SWITCH_RELOC_TYPE_NAME(enum) \ 16 case ELF::enum: \ 17 return #enum; \ 18 19StringRef getELFRelocationTypeName(uint32_t Machine, uint32_t Type) { 20 switch (Machine) { 21 case ELF::EM_X86_64: 22 switch (Type) { 23 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_NONE); 24 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_64); 25 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PC32); 26 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOT32); 27 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PLT32); 28 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_COPY); 29 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GLOB_DAT); 30 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_JUMP_SLOT); 31 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_RELATIVE); 32 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPCREL); 33 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_32); 34 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_32S); 35 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_16); 36 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PC16); 37 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_8); 38 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PC8); 39 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_DTPMOD64); 40 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_DTPOFF64); 41 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TPOFF64); 42 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TLSGD); 43 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TLSLD); 44 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_DTPOFF32); 45 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTTPOFF); 46 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TPOFF32); 47 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PC64); 48 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTOFF64); 49 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPC32); 50 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOT64); 51 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPCREL64); 52 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPC64); 53 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPLT64); 54 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_PLTOFF64); 55 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_SIZE32); 56 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_SIZE64); 57 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_GOTPC32_TLSDESC); 58 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TLSDESC_CALL); 59 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_TLSDESC); 60 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_X86_64_IRELATIVE); 61 default: 62 break; 63 } 64 break; 65 case ELF::EM_386: 66 switch (Type) { 67 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_NONE); 68 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_32); 69 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_PC32); 70 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_GOT32); 71 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_PLT32); 72 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_COPY); 73 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_GLOB_DAT); 74 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_JUMP_SLOT); 75 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_RELATIVE); 76 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_GOTOFF); 77 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_GOTPC); 78 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_32PLT); 79 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_TPOFF); 80 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_IE); 81 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GOTIE); 82 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LE); 83 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GD); 84 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDM); 85 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_16); 86 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_PC16); 87 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_8); 88 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_PC8); 89 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GD_32); 90 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GD_PUSH); 91 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GD_CALL); 92 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GD_POP); 93 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDM_32); 94 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDM_PUSH); 95 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDM_CALL); 96 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDM_POP); 97 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LDO_32); 98 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_IE_32); 99 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_LE_32); 100 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_DTPMOD32); 101 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_DTPOFF32); 102 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_TPOFF32); 103 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_GOTDESC); 104 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_DESC_CALL); 105 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_TLS_DESC); 106 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_386_IRELATIVE); 107 default: 108 break; 109 } 110 break; 111 case ELF::EM_MIPS: 112 switch (Type) { 113 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_NONE); 114 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_16); 115 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_32); 116 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_REL32); 117 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_26); 118 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_HI16); 119 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_LO16); 120 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GPREL16); 121 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_LITERAL); 122 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT16); 123 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_PC16); 124 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_CALL16); 125 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GPREL32); 126 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_SHIFT5); 127 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_SHIFT6); 128 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_64); 129 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT_DISP); 130 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT_PAGE); 131 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT_OFST); 132 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT_HI16); 133 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GOT_LO16); 134 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_SUB); 135 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_INSERT_A); 136 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_INSERT_B); 137 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_DELETE); 138 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_HIGHER); 139 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_HIGHEST); 140 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_CALL_HI16); 141 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_CALL_LO16); 142 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_SCN_DISP); 143 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_REL16); 144 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_ADD_IMMEDIATE); 145 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_PJUMP); 146 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_RELGOT); 147 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_JALR); 148 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPMOD32); 149 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPREL32); 150 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPMOD64); 151 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPREL64); 152 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_GD); 153 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_LDM); 154 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPREL_HI16); 155 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_DTPREL_LO16); 156 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_GOTTPREL); 157 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_TPREL32); 158 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_TPREL64); 159 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_TPREL_HI16); 160 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_TLS_TPREL_LO16); 161 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_GLOB_DAT); 162 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_COPY); 163 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_JUMP_SLOT); 164 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_26_S1); 165 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_HI16); 166 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_LO16); 167 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_GOT16); 168 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_PC16_S1); 169 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_CALL16); 170 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_GOT_DISP); 171 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_GOT_PAGE); 172 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_GOT_OFST); 173 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_GD); 174 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_LDM); 175 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_DTPREL_HI16); 176 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_DTPREL_LO16); 177 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_TPREL_HI16); 178 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MICROMIPS_TLS_TPREL_LO16); 179 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_MIPS_NUM); 180 default: 181 break; 182 } 183 break; 184 case ELF::EM_AARCH64: 185 switch (Type) { 186 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_NONE); 187 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ABS64); 188 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ABS32); 189 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ABS16); 190 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_PREL64); 191 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_PREL32); 192 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_PREL16); 193 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G0); 194 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G0_NC); 195 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G1); 196 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G1_NC); 197 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G2); 198 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G2_NC); 199 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_UABS_G3); 200 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_SABS_G0); 201 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_SABS_G1); 202 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_MOVW_SABS_G2); 203 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LD_PREL_LO19); 204 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ADR_PREL_LO21); 205 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ADR_PREL_PG_HI21); 206 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ADD_ABS_LO12_NC); 207 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST8_ABS_LO12_NC); 208 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TSTBR14); 209 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_CONDBR19); 210 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_JUMP26); 211 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_CALL26); 212 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST16_ABS_LO12_NC); 213 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST32_ABS_LO12_NC); 214 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST64_ABS_LO12_NC); 215 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LDST128_ABS_LO12_NC); 216 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_ADR_GOT_PAGE); 217 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_LD64_GOT_LO12_NC); 218 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G2); 219 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G1); 220 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC); 221 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G0); 222 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC); 223 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_ADD_DTPREL_HI12); 224 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_ADD_DTPREL_LO12); 225 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC); 226 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST8_DTPREL_LO12); 227 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC); 228 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST16_DTPREL_LO12); 229 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC); 230 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST32_DTPREL_LO12); 231 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC); 232 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST64_DTPREL_LO12); 233 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC); 234 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSIE_MOVW_GOTTPREL_G1); 235 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC); 236 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21); 237 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC); 238 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSIE_LD_GOTTPREL_PREL19); 239 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_MOVW_TPREL_G2); 240 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_MOVW_TPREL_G1); 241 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_MOVW_TPREL_G1_NC); 242 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_MOVW_TPREL_G0); 243 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_MOVW_TPREL_G0_NC); 244 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_ADD_TPREL_HI12); 245 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_ADD_TPREL_LO12); 246 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_ADD_TPREL_LO12_NC); 247 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST8_TPREL_LO12); 248 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC); 249 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST16_TPREL_LO12); 250 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC); 251 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST32_TPREL_LO12); 252 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC); 253 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST64_TPREL_LO12); 254 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC); 255 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_ADR_PAGE); 256 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_LD64_LO12_NC); 257 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_ADD_LO12_NC); 258 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_AARCH64_TLSDESC_CALL); 259 default: 260 break; 261 } 262 break; 263 case ELF::EM_ARM: 264 switch (Type) { 265 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_NONE); 266 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PC24); 267 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ABS32); 268 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_REL32); 269 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_PC_G0); 270 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ABS16); 271 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ABS12); 272 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_ABS5); 273 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ABS8); 274 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_SBREL32); 275 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_CALL); 276 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_PC8); 277 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_BREL_ADJ); 278 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_DESC); 279 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_SWI8); 280 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_XPC25); 281 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_XPC22); 282 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_DTPMOD32); 283 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_DTPOFF32); 284 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_TPOFF32); 285 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_COPY); 286 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GLOB_DAT); 287 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_JUMP_SLOT); 288 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_RELATIVE); 289 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOTOFF32); 290 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_BASE_PREL); 291 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOT_BREL); 292 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PLT32); 293 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_CALL); 294 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_JUMP24); 295 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_JUMP24); 296 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_BASE_ABS); 297 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PCREL_7_0); 298 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PCREL_15_8); 299 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PCREL_23_15); 300 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_SBREL_11_0_NC); 301 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SBREL_19_12_NC); 302 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SBREL_27_20_CK); 303 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TARGET1); 304 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_SBREL31); 305 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_V4BX); 306 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TARGET2); 307 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PREL31); 308 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVW_ABS_NC); 309 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVT_ABS); 310 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVW_PREL_NC); 311 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVT_PREL); 312 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVW_ABS_NC); 313 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVT_ABS); 314 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVW_PREL_NC); 315 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVT_PREL); 316 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_JUMP19); 317 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_JUMP6); 318 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_ALU_PREL_11_0); 319 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_PC12); 320 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ABS32_NOI); 321 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_REL32_NOI); 322 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PC_G0_NC); 323 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PC_G0); 324 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PC_G1_NC); 325 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PC_G1); 326 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_PC_G2); 327 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_PC_G1); 328 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_PC_G2); 329 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_PC_G0); 330 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_PC_G1); 331 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_PC_G2); 332 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_PC_G0); 333 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_PC_G1); 334 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_PC_G2); 335 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SB_G0_NC); 336 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SB_G0); 337 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SB_G1_NC); 338 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SB_G1); 339 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ALU_SB_G2); 340 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_SB_G0); 341 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_SB_G1); 342 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDR_SB_G2); 343 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_SB_G0); 344 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_SB_G1); 345 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDRS_SB_G2); 346 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_SB_G0); 347 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_SB_G1); 348 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_LDC_SB_G2); 349 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVW_BREL_NC); 350 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVT_BREL); 351 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_MOVW_BREL); 352 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVW_BREL_NC); 353 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVT_BREL); 354 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_MOVW_BREL); 355 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_GOTDESC); 356 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_CALL); 357 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_DESCSEQ); 358 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_TLS_CALL); 359 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PLT32_ABS); 360 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOT_ABS); 361 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOT_PREL); 362 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOT_BREL12); 363 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOTOFF12); 364 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GOTRELAX); 365 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GNU_VTENTRY); 366 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_GNU_VTINHERIT); 367 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_JUMP11); 368 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_JUMP8); 369 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_GD32); 370 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_LDM32); 371 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_LDO32); 372 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_IE32); 373 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_LE32); 374 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_LDO12); 375 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_LE12); 376 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_TLS_IE12GP); 377 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_0); 378 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_1); 379 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_2); 380 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_3); 381 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_4); 382 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_5); 383 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_6); 384 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_7); 385 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_8); 386 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_9); 387 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_10); 388 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_11); 389 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_12); 390 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_13); 391 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_14); 392 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_PRIVATE_15); 393 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_ME_TOO); 394 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_TLS_DESCSEQ16); 395 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_ARM_THM_TLS_DESCSEQ32); 396 default: 397 break; 398 } 399 break; 400 case ELF::EM_HEXAGON: 401 switch (Type) { 402 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_NONE); 403 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B22_PCREL); 404 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B15_PCREL); 405 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B7_PCREL); 406 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_LO16); 407 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_HI16); 408 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_32); 409 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_16); 410 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_8); 411 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GPREL16_0); 412 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GPREL16_1); 413 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GPREL16_2); 414 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GPREL16_3); 415 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_HL16); 416 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B13_PCREL); 417 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B9_PCREL); 418 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B32_PCREL_X); 419 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_32_6_X); 420 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B22_PCREL_X); 421 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B15_PCREL_X); 422 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B13_PCREL_X); 423 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B9_PCREL_X); 424 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_B7_PCREL_X); 425 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_16_X); 426 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_12_X); 427 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_11_X); 428 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_10_X); 429 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_9_X); 430 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_8_X); 431 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_7_X); 432 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_6_X); 433 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_32_PCREL); 434 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_COPY); 435 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GLOB_DAT); 436 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_JMP_SLOT); 437 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_RELATIVE); 438 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_PLT_B22_PCREL); 439 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_LO16); 440 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_HI16); 441 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_32); 442 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_LO16); 443 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_HI16); 444 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_32); 445 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_16); 446 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPMOD_32); 447 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_LO16); 448 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_HI16); 449 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_32); 450 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_16); 451 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_PLT_B22_PCREL); 452 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_LO16); 453 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_HI16); 454 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_32); 455 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_16); 456 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_LO16); 457 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_HI16); 458 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_32); 459 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_LO16); 460 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_HI16); 461 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_32); 462 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_16); 463 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_LO16); 464 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_HI16); 465 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_32); 466 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_16); 467 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_6_PCREL_X); 468 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_32_6_X); 469 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_16_X); 470 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOTREL_11_X); 471 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_32_6_X); 472 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_16_X); 473 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GOT_11_X); 474 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_32_6_X); 475 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_16_X); 476 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_DTPREL_11_X); 477 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_32_6_X); 478 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_16_X); 479 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_GD_GOT_11_X); 480 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_32_6_X); 481 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_16_X); 482 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_32_6_X); 483 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_16_X); 484 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_IE_GOT_11_X); 485 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_32_6_X); 486 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_16_X); 487 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_HEX_TPREL_11_X); 488 default: 489 break; 490 } 491 break; 492 case ELF::EM_PPC: 493 switch (Type) { 494 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_NONE); 495 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR32); 496 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR24); 497 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR16); 498 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR16_LO); 499 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR16_HI); 500 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR16_HA); 501 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR14); 502 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR14_BRTAKEN); 503 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_ADDR14_BRNTAKEN); 504 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL24); 505 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL14); 506 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL14_BRTAKEN); 507 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL14_BRNTAKEN); 508 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16); 509 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_LO); 510 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HI); 511 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HA); 512 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL32); 513 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TLS); 514 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPMOD32); 515 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TPREL16); 516 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TPREL16_LO); 517 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TPREL16_HI); 518 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TPREL16_HA); 519 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TPREL32); 520 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPREL16); 521 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPREL16_LO); 522 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPREL16_HI); 523 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPREL16_HA); 524 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPREL32); 525 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSGD16); 526 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSGD16_LO); 527 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSGD16_HI); 528 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSGD16_HA); 529 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSLD16); 530 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSLD16_LO); 531 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSLD16_HI); 532 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TLSLD16_HA); 533 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TPREL16); 534 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TPREL16_LO); 535 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TPREL16_HI); 536 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_TPREL16_HA); 537 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_DTPREL16); 538 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_DTPREL16_LO); 539 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_DTPREL16_HI); 540 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT_DTPREL16_HA); 541 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TLSGD); 542 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TLSLD); 543 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL16); 544 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL16_LO); 545 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL16_HI); 546 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL16_HA); 547 default: 548 break; 549 } 550 break; 551 case ELF::EM_PPC64: 552 switch (Type) { 553 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_NONE); 554 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR32); 555 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR24); 556 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16); 557 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_LO); 558 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HI); 559 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HA); 560 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR14); 561 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR14_BRTAKEN); 562 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR14_BRNTAKEN); 563 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL24); 564 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL14); 565 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL14_BRTAKEN); 566 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL14_BRNTAKEN); 567 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16); 568 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16_LO); 569 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16_HI); 570 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16_HA); 571 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL32); 572 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR64); 573 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HIGHER); 574 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HIGHERA); 575 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HIGHEST); 576 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_HIGHESTA); 577 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL64); 578 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16); 579 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16_LO); 580 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16_HI); 581 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16_HA); 582 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC); 583 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_DS); 584 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_ADDR16_LO_DS); 585 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16_DS); 586 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT16_LO_DS); 587 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16_DS); 588 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TOC16_LO_DS); 589 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TLS); 590 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPMOD64); 591 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16); 592 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_LO); 593 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HI); 594 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HA); 595 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL64); 596 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16); 597 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_LO); 598 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HI); 599 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HA); 600 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL64); 601 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSGD16); 602 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSGD16_LO); 603 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSGD16_HI); 604 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSGD16_HA); 605 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSLD16); 606 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSLD16_LO); 607 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSLD16_HI); 608 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TLSLD16_HA); 609 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TPREL16_DS); 610 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TPREL16_LO_DS); 611 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TPREL16_HI); 612 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_TPREL16_HA); 613 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_DTPREL16_DS); 614 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_DTPREL16_LO_DS); 615 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_DTPREL16_HI); 616 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_GOT_DTPREL16_HA); 617 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_DS); 618 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_LO_DS); 619 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HIGHER); 620 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HIGHERA); 621 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HIGHEST); 622 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TPREL16_HIGHESTA); 623 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_DS); 624 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_LO_DS); 625 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HIGHER); 626 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HIGHERA); 627 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HIGHEST); 628 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_DTPREL16_HIGHESTA); 629 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TLSGD); 630 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_TLSLD); 631 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL16); 632 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL16_LO); 633 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL16_HI); 634 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC64_REL16_HA); 635 default: 636 break; 637 } 638 break; 639 case ELF::EM_S390: 640 switch (Type) { 641 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_NONE); 642 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_8); 643 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_12); 644 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_16); 645 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_32); 646 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PC32); 647 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOT12); 648 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOT32); 649 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLT32); 650 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_COPY); 651 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GLOB_DAT); 652 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_JMP_SLOT); 653 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_RELATIVE); 654 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTOFF); 655 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPC); 656 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOT16); 657 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PC16); 658 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PC16DBL); 659 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLT16DBL); 660 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PC32DBL); 661 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLT32DBL); 662 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPCDBL); 663 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_64); 664 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PC64); 665 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOT64); 666 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLT64); 667 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTENT); 668 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTOFF16); 669 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTOFF64); 670 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLT12); 671 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLT16); 672 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLT32); 673 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLT64); 674 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLTENT); 675 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLTOFF16); 676 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLTOFF32); 677 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_PLTOFF64); 678 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LOAD); 679 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GDCALL); 680 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LDCALL); 681 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GD32); 682 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GD64); 683 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GOTIE12); 684 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GOTIE32); 685 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GOTIE64); 686 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LDM32); 687 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LDM64); 688 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_IE32); 689 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_IE64); 690 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_IEENT); 691 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LE32); 692 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LE64); 693 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LDO32); 694 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_LDO64); 695 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_DTPMOD); 696 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_DTPOFF); 697 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_TPOFF); 698 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_20); 699 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOT20); 700 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_GOTPLT20); 701 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_TLS_GOTIE20); 702 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_390_IRELATIVE); 703 default: 704 break; 705 } 706 break; 707 case ELF::EM_SPARC: 708 case ELF::EM_SPARC32PLUS: 709 case ELF::EM_SPARCV9: 710 switch (Type) { 711 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_NONE); 712 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_8); 713 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_16); 714 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_32); 715 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_DISP8); 716 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_DISP16); 717 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_DISP32); 718 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_WDISP30); 719 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_WDISP22); 720 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_HI22); 721 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_22); 722 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_13); 723 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_LO10); 724 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOT10); 725 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOT13); 726 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOT22); 727 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PC10); 728 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PC22); 729 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_WPLT30); 730 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_COPY); 731 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GLOB_DAT); 732 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_JMP_SLOT); 733 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_RELATIVE); 734 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_UA32); 735 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PLT32); 736 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_HIPLT22); 737 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_LOPLT10); 738 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PCPLT32); 739 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PCPLT22); 740 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PCPLT10); 741 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_10); 742 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_11); 743 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_64); 744 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_OLO10); 745 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_HH22); 746 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_HM10); 747 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_LM22); 748 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PC_HH22); 749 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PC_HM10); 750 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PC_LM22); 751 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_WDISP16); 752 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_WDISP19); 753 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_7); 754 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_5); 755 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_6); 756 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_DISP64); 757 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_PLT64); 758 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_HIX22); 759 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_LOX10); 760 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_H44); 761 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_M44); 762 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_L44); 763 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_REGISTER); 764 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_UA64); 765 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_UA16); 766 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_GD_HI22); 767 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_GD_LO10); 768 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_GD_ADD); 769 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_GD_CALL); 770 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDM_HI22); 771 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDM_LO10); 772 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDM_ADD); 773 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDM_CALL); 774 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDO_HIX22); 775 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDO_LOX10); 776 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LDO_ADD); 777 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_IE_HI22); 778 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_IE_LO10); 779 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_IE_LD); 780 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_IE_LDX); 781 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_IE_ADD); 782 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LE_HIX22); 783 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_LE_LOX10); 784 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_DTPMOD32); 785 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_DTPMOD64); 786 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_DTPOFF32); 787 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_DTPOFF64); 788 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_TPOFF32); 789 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_TLS_TPOFF64); 790 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOTDATA_HIX22); 791 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOTDATA_LOX22); 792 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOTDATA_OP_HIX22); 793 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOTDATA_OP_LOX22); 794 LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_SPARC_GOTDATA_OP); 795 default: 796 break; 797 } 798 break; 799 default: 800 break; 801 } 802 return "Unknown"; 803} 804 805#undef LLVM_ELF_SWITCH_RELOC_TYPE_NAME 806 807} // end namespace object 808} // end namespace llvm 809