[PATCH] D142037: [RISCV] Make it explicit that attributes use the MCSubtargetInfo from TargetMachine.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 18 09:44:07 PST 2023


craig.topper created this revision.
craig.topper added reviewers: asb, luismarques, reames, jrtc27, kito-cheng.
Herald added subscribers: luke, VincentWu, vkmr, frasercrmck, evandro, apazos, sameer.abuasal, s.egerton, Jim, benna, psnobl, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, shiva0217, niosHD, sabuasal, simoncook, johnrusso, rbar, hiraditya, arichardson.
Herald added a project: All.
craig.topper requested review of this revision.
Herald added subscribers: pcwang-thead, eopXD, MaskRay.
Herald added a project: LLVM.

The MCSTI variable is initialized to TM.getMCSubtargetInfo(), but is
re-assigned in every call to runOnMachineFunction. I think
emitAttributes is called before any call to runOnMachineFunction,
but its not immediately obvious.

This patch removes the use of the MCSTI variable, and instead queries
TM.getMCSubtargetInfo() at the time emitAttributes is called.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D142037

Files:
  llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp


Index: llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
===================================================================
--- llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
+++ llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
@@ -224,7 +224,7 @@
 void RISCVAsmPrinter::emitAttributes() {
   RISCVTargetStreamer &RTS =
       static_cast<RISCVTargetStreamer &>(*OutStreamer->getTargetStreamer());
-  RTS.emitTargetAttributes(*MCSTI);
+  RTS.emitTargetAttributes(*TM.getMCSubtargetInfo());
 }
 
 void RISCVAsmPrinter::emitFunctionEntryLabel() {


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D142037.490207.patch
Type: text/x-patch
Size: 526 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230118/4b0ddec2/attachment.bin>


More information about the llvm-commits mailing list