Skip to content

Commit a5d48db

Browse files
committed
Sparc: Remove specifiers for GOTDATA_OP
1 parent 9ddec13 commit a5d48db

File tree

3 files changed

+9
-15
lines changed

3 files changed

+9
-15
lines changed

llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -1119,7 +1119,7 @@ ParseStatus SparcAsmParser::parseTailRelocSym(OperandVector &Operands) {
11191119
case TailRelocKind::Load_GOT:
11201120
// Non-TLS relocations on ld (or ldx).
11211121
// ld [%rr + %rr], %rr, %rel(sym)
1122-
return VK == SparcMCExpr::VK_GOTDATA_OP;
1122+
return VK == ELF::R_SPARC_GOTDATA_OP;
11231123
case TailRelocKind::Add_TLS:
11241124
// TLS relocations on add.
11251125
// add %rr, %rr, %rr, %rel(sym)
@@ -1700,12 +1700,12 @@ bool SparcAsmParser::matchSparcAsmModifiers(const MCExpr *&EVal,
17001700
StringRef name = Tok.getString();
17011701

17021702
SparcMCExpr::Specifier VK = SparcMCExpr::parseSpecifier(name);
1703-
switch (VK) {
1703+
switch (uint16_t(VK)) {
17041704
case SparcMCExpr::VK_None:
17051705
Error(getLoc(), "invalid relocation specifier");
17061706
return false;
17071707

1708-
case SparcMCExpr::VK_GOTDATA_OP:
1708+
case ELF::R_SPARC_GOTDATA_OP:
17091709
case SparcMCExpr::VK_TLS_GD_ADD:
17101710
case SparcMCExpr::VK_TLS_GD_CALL:
17111711
case SparcMCExpr::VK_TLS_IE_ADD:

llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp

+6-9
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,9 @@ StringRef SparcMCExpr::getSpecifierName(SparcMCExpr::Specifier S) {
7777
case VK_TLS_LE_LOX10: return "tle_lox10";
7878
case VK_HIX22: return "hix";
7979
case VK_LOX10: return "lox";
80-
case VK_GOTDATA_OP_HIX22: return "gdop_hix22";
81-
case VK_GOTDATA_OP_LOX10: return "gdop_lox10";
82-
case VK_GOTDATA_OP: return "gdop";
80+
case ELF::R_SPARC_GOTDATA_OP_HIX22: return "gdop_hix22";
81+
case ELF::R_SPARC_GOTDATA_OP_LOX10: return "gdop_lox10";
82+
case ELF::R_SPARC_GOTDATA_OP: return "gdop";
8383
}
8484
// clang-format on
8585
llvm_unreachable("Unhandled SparcMCExpr::Specifier");
@@ -123,9 +123,9 @@ SparcMCExpr::Specifier SparcMCExpr::parseSpecifier(StringRef name) {
123123
.Case("tle_lox10", VK_TLS_LE_LOX10)
124124
.Case("hix", VK_HIX22)
125125
.Case("lox", VK_LOX10)
126-
.Case("gdop_hix22", VK_GOTDATA_OP_HIX22)
127-
.Case("gdop_lox10", VK_GOTDATA_OP_LOX10)
128-
.Case("gdop", VK_GOTDATA_OP)
126+
.Case("gdop_hix22", (SparcMCExpr::Specifier)ELF::R_SPARC_GOTDATA_OP_HIX22)
127+
.Case("gdop_lox10", (SparcMCExpr::Specifier)ELF::R_SPARC_GOTDATA_OP_LOX10)
128+
.Case("gdop", (SparcMCExpr::Specifier)ELF::R_SPARC_GOTDATA_OP)
129129
.Default(VK_None);
130130
}
131131

@@ -160,9 +160,6 @@ uint16_t SparcMCExpr::getFixupKind() const {
160160
case VK_TLS_LE_LOX10: return ELF::R_SPARC_TLS_LE_LOX10;
161161
case VK_HIX22: return Sparc::fixup_sparc_hix22;
162162
case VK_LOX10: return Sparc::fixup_sparc_lox10;
163-
case VK_GOTDATA_OP_HIX22: return ELF::R_SPARC_GOTDATA_OP_HIX22;
164-
case VK_GOTDATA_OP_LOX10: return ELF::R_SPARC_GOTDATA_OP_LOX10;
165-
case VK_GOTDATA_OP: return ELF::R_SPARC_GOTDATA_OP;
166163
}
167164
// clang-format on
168165
}

llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h

-3
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,6 @@ class SparcMCExpr : public MCTargetExpr {
5050
VK_TLS_LE_LOX10,
5151
VK_HIX22,
5252
VK_LOX10,
53-
VK_GOTDATA_OP_HIX22,
54-
VK_GOTDATA_OP_LOX10,
55-
VK_GOTDATA_OP,
5653
};
5754

5855
private:

0 commit comments

Comments
 (0)