[llvm] aa8afad - MCSymbolRefExpr: Migrate away from deprecated VariantKind
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Sat Jun 28 15:48:48 PDT 2025
Author: Fangrui Song
Date: 2025-06-28T15:48:43-07:00
New Revision: aa8afadd251cf972bace35a674428383089c2697
URL: https://github.com/llvm/llvm-project/commit/aa8afadd251cf972bace35a674428383089c2697
DIFF: https://github.com/llvm/llvm-project/commit/aa8afadd251cf972bace35a674428383089c2697.diff
LOG: MCSymbolRefExpr: Migrate away from deprecated VariantKind
Added:
Modified:
llvm/include/llvm/MC/MCExpr.h
llvm/lib/MC/MCExpr.cpp
Removed:
################################################################################
diff --git a/llvm/include/llvm/MC/MCExpr.h b/llvm/include/llvm/MC/MCExpr.h
index e7f97c627f64e..d73e415f73f44 100644
--- a/llvm/include/llvm/MC/MCExpr.h
+++ b/llvm/include/llvm/MC/MCExpr.h
@@ -57,6 +57,7 @@ class MCExpr {
bool InSet) const;
protected:
+ using Spec = uint16_t;
explicit MCExpr(ExprKind Kind, SMLoc Loc, unsigned SubclassData = 0)
: Kind(Kind), SubclassData(SubclassData), Loc(Loc) {
assert(SubclassData < (1 << NumSubclassDataBits) &&
@@ -200,7 +201,7 @@ class MCSymbolRefExpr : public MCExpr {
/// The symbol being referenced.
const MCSymbol *Symbol;
- explicit MCSymbolRefExpr(const MCSymbol *Symbol, VariantKind Kind,
+ explicit MCSymbolRefExpr(const MCSymbol *Symbol, Spec specifier,
const MCAsmInfo *MAI, SMLoc Loc = SMLoc());
public:
@@ -213,13 +214,8 @@ class MCSymbolRefExpr : public MCExpr {
}
LLVM_ABI static const MCSymbolRefExpr *create(const MCSymbol *Symbol,
- VariantKind Kind,
- MCContext &Ctx,
+ Spec specifier, MCContext &Ctx,
SMLoc Loc = SMLoc());
- static const MCSymbolRefExpr *create(const MCSymbol *Symbol, uint16_t Kind,
- MCContext &Ctx, SMLoc Loc = SMLoc()) {
- return MCSymbolRefExpr::create(Symbol, VariantKind(Kind), Ctx, Loc);
- }
/// @}
/// \name Accessors
@@ -495,7 +491,6 @@ class LLVM_ABI MCTargetExpr : public MCExpr {
/// MCExprs are bump pointer allocated and not destructed.
class LLVM_ABI MCSpecifierExpr : public MCExpr {
protected:
- using Spec = uint16_t;
const MCExpr *Expr;
// Target-specific relocation specifier code
const Spec specifier;
diff --git a/llvm/lib/MC/MCExpr.cpp b/llvm/lib/MC/MCExpr.cpp
index 76039129e0fcf..79c3ec625cb7a 100644
--- a/llvm/lib/MC/MCExpr.cpp
+++ b/llvm/lib/MC/MCExpr.cpp
@@ -217,16 +217,16 @@ const MCConstantExpr *MCConstantExpr::create(int64_t Value, MCContext &Ctx,
/* *** */
-MCSymbolRefExpr::MCSymbolRefExpr(const MCSymbol *Symbol, VariantKind Kind,
+MCSymbolRefExpr::MCSymbolRefExpr(const MCSymbol *Symbol, Spec specifier,
const MCAsmInfo *MAI, SMLoc Loc)
- : MCExpr(MCExpr::SymbolRef, Loc, Kind), Symbol(Symbol) {
+ : MCExpr(MCExpr::SymbolRef, Loc, specifier), Symbol(Symbol) {
assert(Symbol);
}
const MCSymbolRefExpr *MCSymbolRefExpr::create(const MCSymbol *Sym,
- VariantKind Kind,
+ uint16_t specifier,
MCContext &Ctx, SMLoc Loc) {
- return new (Ctx) MCSymbolRefExpr(Sym, Kind, Ctx.getAsmInfo(), Loc);
+ return new (Ctx) MCSymbolRefExpr(Sym, specifier, Ctx.getAsmInfo(), Loc);
}
/* *** */
More information about the llvm-commits
mailing list