[llvm] 7e62715 - [RISCV, LoongArch, MC] Replace getSymA()->getSymbol() with getAddSym. NFC

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 5 13:58:21 PDT 2025


Author: Fangrui Song
Date: 2025-04-05T13:58:16-07:00
New Revision: 7e62715e0cd433ed97749549c6582c4e1aa689a3

URL: https://github.com/llvm/llvm-project/commit/7e62715e0cd433ed97749549c6582c4e1aa689a3
DIFF: https://github.com/llvm/llvm-project/commit/7e62715e0cd433ed97749549c6582c4e1aa689a3.diff

LOG: [RISCV,LoongArch,MC] Replace getSymA()->getSymbol() with getAddSym. NFC

We will replace the MCSymbolRefExpr member in MCValue with MCSymbol.
This change reduces dependence on MCSymbolRefExpr.

Creating a MCSymbolRefExpr in *AsmBackend::handleAddSubRelocations is
not efficient, but it is temporary and will be replaced when MCValue no
longer uses MCSymbolRefExpr.

Added: 
    

Modified: 
    llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp b/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
index adeb7455ad616..c39482094db12 100644
--- a/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
+++ b/llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
@@ -497,7 +497,9 @@ bool LoongArchAsmBackend::handleAddSubRelocations(const MCAssembler &Asm,
   default:
     llvm_unreachable("unsupported fixup size");
   }
-  MCValue A = MCValue::get(Target.getSymA(), nullptr, Target.getConstant());
+  MCValue A = MCValue::get(
+      MCSymbolRefExpr::create(Target.getAddSym(), Asm.getContext()), nullptr,
+      Target.getConstant());
   MCValue B = MCValue::get(
       MCSymbolRefExpr::create(Target.getSubSym(), Asm.getContext()));
   auto FA = MCFixup::create(Fixup.getOffset(), nullptr, std::get<0>(FK));

diff  --git a/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp b/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
index a8922c3f9f2e8..d23ddb918e7f9 100644
--- a/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+++ b/llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
@@ -2805,7 +2805,7 @@ bool RISCVAsmParser::classifySymbolRef(const MCExpr *Expr,
 bool RISCVAsmParser::isSymbolDiff(const MCExpr *Expr) {
   MCValue Res;
   if (Expr->evaluateAsRelocatable(Res, nullptr)) {
-    return Res.getRefKind() == RISCVMCExpr::VK_None && Res.getSymA() &&
+    return Res.getRefKind() == RISCVMCExpr::VK_None && Res.getAddSym() &&
            Res.getSubSym();
   }
   return false;

diff  --git a/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp b/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
index f208618814142..d245b15a39210 100644
--- a/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
+++ b/llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
@@ -599,7 +599,7 @@ bool RISCVAsmBackend::evaluateTargetFixup(const MCAssembler &Asm,
   }
   }
 
-  if (!AUIPCTarget.getSymA())
+  if (!AUIPCTarget.getAddSym())
     return false;
 
   const MCSymbolELF &SA = cast<MCSymbolELF>(*AUIPCTarget.getAddSym());
@@ -656,7 +656,9 @@ bool RISCVAsmBackend::handleAddSubRelocations(const MCAssembler &Asm,
   default:
     llvm_unreachable("unsupported fixup size");
   }
-  MCValue A = MCValue::get(Target.getSymA(), nullptr, Target.getConstant());
+  MCValue A = MCValue::get(
+      MCSymbolRefExpr::create(Target.getAddSym(), Asm.getContext()), nullptr,
+      Target.getConstant());
   MCValue B = MCValue::get(
       MCSymbolRefExpr::create(Target.getSubSym(), Asm.getContext()));
   auto FA = MCFixup::create(


        


More information about the llvm-commits mailing list