20#define DEBUG_TYPE "sparcmcexpr"
26 case ELF::R_SPARC_LO10:
return "lo";
27 case ELF::R_SPARC_HI22:
return "hi";
28 case ELF::R_SPARC_H44:
return "h44";
29 case ELF::R_SPARC_M44:
return "m44";
30 case ELF::R_SPARC_L44:
return "l44";
31 case ELF::R_SPARC_HH22:
return "hh";
32 case ELF::R_SPARC_HM10:
return "hm";
33 case ELF::R_SPARC_LM22:
return "lm";
35 case ELF::R_SPARC_PC22:
return "hi";
36 case ELF::R_SPARC_PC10:
return "lo";
37 case ELF::R_SPARC_GOT22:
return "hi";
38 case ELF::R_SPARC_GOT10:
return "lo";
39 case ELF::R_SPARC_GOT13:
return {};
40 case ELF::R_SPARC_DISP32:
return "r_disp32";
41 case ELF::R_SPARC_TLS_GD_HI22:
return "tgd_hi22";
42 case ELF::R_SPARC_TLS_GD_LO10:
return "tgd_lo10";
43 case ELF::R_SPARC_TLS_GD_ADD:
return "tgd_add";
44 case ELF::R_SPARC_TLS_GD_CALL:
return "tgd_call";
45 case ELF::R_SPARC_TLS_LDM_HI22:
return "tldm_hi22";
46 case ELF::R_SPARC_TLS_LDM_LO10:
return "tldm_lo10";
47 case ELF::R_SPARC_TLS_LDM_ADD:
return "tldm_add";
48 case ELF::R_SPARC_TLS_LDM_CALL:
return "tldm_call";
49 case ELF::R_SPARC_TLS_LDO_HIX22:
return "tldo_hix22";
50 case ELF::R_SPARC_TLS_LDO_LOX10:
return "tldo_lox10";
51 case ELF::R_SPARC_TLS_LDO_ADD:
return "tldo_add";
52 case ELF::R_SPARC_TLS_IE_HI22:
return "tie_hi22";
53 case ELF::R_SPARC_TLS_IE_LO10:
return "tie_lo10";
54 case ELF::R_SPARC_TLS_IE_LD:
return "tie_ld";
55 case ELF::R_SPARC_TLS_IE_LDX:
return "tie_ldx";
56 case ELF::R_SPARC_TLS_IE_ADD:
return "tie_add";
57 case ELF::R_SPARC_TLS_LE_HIX22:
return "tle_hix22";
58 case ELF::R_SPARC_TLS_LE_LOX10:
return "tle_lox10";
59 case ELF::R_SPARC_HIX22:
return "hix";
60 case ELF::R_SPARC_LOX10:
return "lox";
61 case ELF::R_SPARC_GOTDATA_OP_HIX22:
return "gdop_hix22";
62 case ELF::R_SPARC_GOTDATA_OP_LOX10:
return "gdop_lox10";
63 case ELF::R_SPARC_GOTDATA_OP:
return "gdop";
71 .
Case(
"lo", ELF::R_SPARC_LO10)
72 .
Case(
"hi", ELF::R_SPARC_HI22)
73 .
Case(
"h44", ELF::R_SPARC_H44)
74 .
Case(
"m44", ELF::R_SPARC_M44)
75 .
Case(
"l44", ELF::R_SPARC_L44)
76 .
Case(
"hh", ELF::R_SPARC_HH22)
78 .
Case(
"uhi", ELF::R_SPARC_HH22)
79 .
Case(
"hm", ELF::R_SPARC_HM10)
81 .
Case(
"ulo", ELF::R_SPARC_HM10)
82 .
Case(
"lm", ELF::R_SPARC_LM22)
83 .
Case(
"pc22", ELF::R_SPARC_PC22)
84 .
Case(
"pc10", ELF::R_SPARC_PC10)
85 .
Case(
"got22", ELF::R_SPARC_GOT22)
86 .
Case(
"got10", ELF::R_SPARC_GOT10)
87 .
Case(
"got13", ELF::R_SPARC_GOT13)
88 .
Case(
"r_disp32", ELF::R_SPARC_DISP32)
89 .
Case(
"tgd_hi22", ELF::R_SPARC_TLS_GD_HI22)
90 .
Case(
"tgd_lo10", ELF::R_SPARC_TLS_GD_LO10)
91 .
Case(
"tgd_add", ELF::R_SPARC_TLS_GD_ADD)
92 .
Case(
"tgd_call", ELF::R_SPARC_TLS_GD_CALL)
93 .
Case(
"tldm_hi22", ELF::R_SPARC_TLS_LDM_HI22)
94 .
Case(
"tldm_lo10", ELF::R_SPARC_TLS_LDM_LO10)
95 .
Case(
"tldm_add", ELF::R_SPARC_TLS_LDM_ADD)
96 .
Case(
"tldm_call", ELF::R_SPARC_TLS_LDM_CALL)
97 .
Case(
"tldo_hix22", ELF::R_SPARC_TLS_LDO_HIX22)
98 .
Case(
"tldo_lox10", ELF::R_SPARC_TLS_LDO_LOX10)
99 .
Case(
"tldo_add", ELF::R_SPARC_TLS_LDO_ADD)
100 .
Case(
"tie_hi22", ELF::R_SPARC_TLS_IE_HI22)
101 .
Case(
"tie_lo10", ELF::R_SPARC_TLS_IE_LO10)
102 .
Case(
"tie_ld", ELF::R_SPARC_TLS_IE_LD)
103 .
Case(
"tie_ldx", ELF::R_SPARC_TLS_IE_LDX)
104 .
Case(
"tie_add", ELF::R_SPARC_TLS_IE_ADD)
105 .
Case(
"tle_hix22", ELF::R_SPARC_TLS_LE_HIX22)
106 .
Case(
"tle_lox10", ELF::R_SPARC_TLS_LE_LOX10)
107 .
Case(
"hix", ELF::R_SPARC_HIX22)
108 .
Case(
"lox", ELF::R_SPARC_LOX10)
109 .
Case(
"gdop_hix22", ELF::R_SPARC_GOTDATA_OP_HIX22)
110 .
Case(
"gdop_lox10", ELF::R_SPARC_GOTDATA_OP_LOX10)
111 .
Case(
"gdop", ELF::R_SPARC_GOTDATA_OP)
StringRef - Represent a constant reference to a string, i.e.
A switch()-like statement whose cases are string literals.
StringSwitch & Case(StringLiteral S, T Value)
#define llvm_unreachable(msg)
Marks that the current location is not supposed to be reachable.
uint16_t parseSpecifier(StringRef name)
StringRef getSpecifierName(uint16_t S)
This is an optimization pass for GlobalISel generic memory operations.