MCValue: Replace getSymSpecifier with getSpecifier
Commit 52eb11f925ddeba4e1b3840fd636ee87387f3ada temporarily introduced
getSymSpecifier to prepare for "MCValue: Replace MCSymbolRefExpr members
with MCSymbol" (d5893fc2a7e1191afdb4940469ec9371a319b114). The
refactoring is now complete.
diff --git a/llvm/include/llvm/MC/MCValue.h b/llvm/include/llvm/MC/MCValue.h
index 74f68e3..05cf82a 100644
--- a/llvm/include/llvm/MC/MCValue.h
+++ b/llvm/include/llvm/MC/MCValue.h
@@ -55,8 +55,6 @@
// Get the relocation specifier from SymA. This is a workaround for targets
// that do not use MCValue::Specifier.
- uint16_t getSymSpecifier() const { return Specifier; }
- // Get the relocation specifier from SymA, or 0 when SymA is null.
uint16_t getAccessVariant() const { return Specifier; }
static MCValue get(const MCSymbol *SymA, const MCSymbol *SymB = nullptr,
diff --git a/llvm/lib/MC/MCAssembler.cpp b/llvm/lib/MC/MCAssembler.cpp
index 0bfb321..bf78a84 100644
--- a/llvm/lib/MC/MCAssembler.cpp
+++ b/llvm/lib/MC/MCAssembler.cpp
@@ -126,7 +126,7 @@
return false;
auto *Sym = V.getAddSym();
- if (!Sym || V.getSymSpecifier())
+ if (!Sym || V.getSpecifier())
return false;
if (!isThumbFunc(Sym))
diff --git a/llvm/lib/MC/WasmObjectWriter.cpp b/llvm/lib/MC/WasmObjectWriter.cpp
index b35ca70..302ba6e 100644
--- a/llvm/lib/MC/WasmObjectWriter.cpp
+++ b/llvm/lib/MC/WasmObjectWriter.cpp
@@ -606,7 +606,7 @@
SymA->setUsedInReloc();
}
- switch (Target.getSymSpecifier()) {
+ switch (Target.getSpecifier()) {
case MCSymbolRefExpr::VK_GOT:
case MCSymbolRefExpr::VK_WASM_GOT_TLS:
SymA->setUsedInGOT();
diff --git a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
index c3baec4..dd67a31 100644
--- a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+++ b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
@@ -8224,7 +8224,7 @@
return false;
if (Res.getAddSym())
- DarwinSpec = AArch64MCExpr::Specifier(Res.getSymSpecifier());
+ DarwinSpec = AArch64MCExpr::Specifier(Res.getSpecifier());
Addend = Res.getConstant();
// It's some symbol reference + a constant addend, but really
diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
index 6292203..fc09896 100644
--- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
+++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
@@ -192,7 +192,7 @@
}
if (!getAArch64FixupKindMachOInfo(
- Fixup, Type, AArch64MCExpr::Specifier(Target.getSymSpecifier()),
+ Fixup, Type, AArch64MCExpr::Specifier(Target.getSpecifier()),
Log2Size, Asm)) {
Asm.getContext().reportError(Fixup.getLoc(), "unknown AArch64 fixup kind!");
return;
@@ -221,7 +221,7 @@
// Check for "_foo@got - .", which comes through here as:
// Ltmp0:
// ... _foo@got - Ltmp0
- if (Target.getSymSpecifier() == AArch64MCExpr::M_GOT &&
+ if (Target.getSpecifier() == AArch64MCExpr::M_GOT &&
Asm.getSymbolOffset(*B) ==
Asm.getFragmentOffset(*Fragment) + Fixup.getOffset()) {
// SymB is the PC, so use a PC-rel pointer-to-GOT relocation.
@@ -232,7 +232,7 @@
MRE.r_word1 = (IsPCRel << 24) | (Log2Size << 25) | (Type << 28);
Writer->addRelocation(A_Base, Fragment->getParent(), MRE);
return;
- } else if (Target.getSymSpecifier() != AArch64MCExpr::None) {
+ } else if (Target.getSpecifier() != AArch64MCExpr::None) {
// Otherwise, neither symbol can be modified.
Asm.getContext().reportError(Fixup.getLoc(),
"unsupported relocation of modified symbol");
diff --git a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
index f580b37..1e01fe2 100644
--- a/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
+++ b/llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp
@@ -61,8 +61,7 @@
FixupKind = FK_PCRel_4;
}
- auto Modifier =
- Target.isAbsolute() ? AArch64MCExpr::None : Target.getSymSpecifier();
+ auto Spec = Target.getSpecifier();
const MCExpr *Expr = Fixup.getValue();
if (const AArch64MCExpr *A64E = dyn_cast<AArch64MCExpr>(Expr)) {
@@ -98,7 +97,7 @@
return COFF::IMAGE_REL_ARM64_REL32;
case FK_Data_4:
- switch (Modifier) {
+ switch (Spec) {
default:
return COFF::IMAGE_REL_ARM64_ADDR32;
case MCSymbolRefExpr::VK_COFF_IMGREL32:
diff --git a/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp b/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
index da8762c..bfcd5e8 100644
--- a/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
+++ b/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp
@@ -44,7 +44,7 @@
const MCFixup &Fixup,
bool IsCrossSection,
const MCAsmBackend &MAB) const {
- auto Spec = Target.getAddSym() ? Target.getSymSpecifier() : 0;
+ auto Spec = Target.getSpecifier();
unsigned FixupKind = Fixup.getKind();
if (IsCrossSection) {
if (FixupKind != FK_Data_4) {
diff --git a/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp b/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
index 6e0415f..01bd897 100644
--- a/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
+++ b/llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
@@ -81,7 +81,7 @@
return false;
auto Spec = AVRMCExpr::VK_None;
- if (Value.getSymSpecifier() != MCSymbolRefExpr::VK_None)
+ if (Value.getSpecifier() != MCSymbolRefExpr::VK_None)
return false;
assert(!Value.getSubSym());
if (specifier == VK_PM)
diff --git a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
index f36f255..1b5fe08 100644
--- a/llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
+++ b/llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFObjectWriter.cpp
@@ -40,8 +40,7 @@
std::pair<uint8_t, uint8_t> PPCXCOFFObjectWriter::getRelocTypeAndSignSize(
const MCValue &Target, const MCFixup &Fixup, bool IsPCRel) const {
- const auto Specifier =
- Target.isAbsolute() ? PPCMCExpr::VK_None : Target.getSymSpecifier();
+ const auto Specifier = Target.getSpecifier();
// People from AIX OS team says AIX link editor does not care about
// the sign bit in the relocation entry "most" of the time.
// The system assembler seems to set the sign bit on relocation entry
diff --git a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
index d6e0e15..b676015 100644
--- a/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
+++ b/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZELFObjectWriter.cpp
@@ -220,7 +220,7 @@
bool SystemZELFObjectWriter::needsRelocateWithSymbol(const MCValue &V,
const MCSymbol &Sym,
unsigned Type) const {
- switch (V.getSymSpecifier()) {
+ switch (V.getSpecifier()) {
case SystemZMCExpr::VK_GOT:
case SystemZMCExpr::VK_PLT:
return true;
diff --git a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
index 7fcd2ec..8c074e1e 100644
--- a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
+++ b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp
@@ -66,7 +66,7 @@
const MCValue &Target, const MCFixup &Fixup,
const MCSectionWasm &FixupSection, bool IsLocRel) const {
auto &SymA = cast<MCSymbolWasm>(*Target.getAddSym());
- auto Spec = Target.getSymSpecifier();
+ auto Spec = Target.getSpecifier();
switch (Spec) {
case MCSymbolRefExpr::VK_GOT:
case MCSymbolRefExpr::VK_WASM_GOT_TLS:
diff --git a/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp b/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
index af827a4..7678181 100644
--- a/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
+++ b/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
@@ -744,7 +744,7 @@
if (Fixup.getKind() == FK_Data_1) {
MCValue Target;
if (Fixup.getValue()->evaluateAsRelocatable(Target, &Asm) &&
- Target.getAddSym() && Target.getSymSpecifier() == X86MCExpr::VK_ABS8)
+ Target.getAddSym() && Target.getSpecifier() == X86MCExpr::VK_ABS8)
return false;
}
return true;
diff --git a/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp b/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
index ca10f47..c0cf923 100644
--- a/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
+++ b/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
@@ -391,7 +391,7 @@
bool X86ELFObjectWriter::needsRelocateWithSymbol(const MCValue &V,
const MCSymbol &Sym,
unsigned Type) const {
- switch (V.getSymSpecifier()) {
+ switch (V.getSpecifier()) {
case X86MCExpr::VK_GOT:
case X86MCExpr::VK_PLT:
case X86MCExpr::VK_GOTPCREL:
diff --git a/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp b/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
index 6871b8a..f2055d2 100644
--- a/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
+++ b/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
@@ -151,7 +151,7 @@
const MCSymbol *B_Base = Writer->getAtom(*B);
// Neither symbol can be modified.
- if (Target.getSymSpecifier()) {
+ if (Target.getSpecifier()) {
Asm.getContext().reportError(Fixup.getLoc(),
"unsupported relocation of modified symbol");
return;
@@ -266,7 +266,7 @@
return;
}
- auto Specifier = Target.getSymSpecifier();
+ auto Specifier = Target.getSpecifier();
if (IsPCRel) {
if (IsRIPRel) {
if (Specifier == X86MCExpr::VK_GOTPCREL) {
@@ -461,7 +461,7 @@
MCValue Target,
uint64_t &FixedValue) {
const MCSymbol *SymA = Target.getAddSym();
- assert(Target.getSymSpecifier() == X86MCExpr::VK_TLVP && !is64Bit() &&
+ assert(Target.getSpecifier() == X86MCExpr::VK_TLVP && !is64Bit() &&
"Should only be called with a 32-bit TLVP relocation!");
unsigned Log2Size = getFixupKindLog2Size(Fixup.getKind());
@@ -503,7 +503,7 @@
const MCSymbol *A = Target.getAddSym();
// If this is a 32-bit TLVP reloc it's handled a bit differently.
- if (A && Target.getSymSpecifier() == X86MCExpr::VK_TLVP) {
+ if (A && Target.getSpecifier() == X86MCExpr::VK_TLVP) {
recordTLVPRelocation(Writer, Asm, Fragment, Fixup, Target, FixedValue);
return;
}
diff --git a/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp b/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
index 3007697..41d33d6 100644
--- a/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
+++ b/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp
@@ -59,7 +59,7 @@
}
}
- auto Spec = Target.getAddSym() ? Target.getSymSpecifier() : 0;
+ auto Spec = Target.getSpecifier();
if (Is64Bit) {
switch (FixupKind) {
case FK_PCRel_4: