[llvm] [NVPTX] Skip numbering unreferenced virtual registers (readability) (PR #154391)
Alex MacLean via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 19 10:54:58 PDT 2025
================
@@ -1479,13 +1478,13 @@ void NVPTXAsmPrinter::setAndEmitFunctionVirtualRegisters(
// global virtual
// register number and the per class virtual register number.
// We use the per class virtual register number in the ptx output.
- unsigned int numVRs = MRI->getNumVirtRegs();
- for (unsigned i = 0; i < numVRs; i++) {
- Register vr = Register::index2VirtReg(i);
- const TargetRegisterClass *RC = MRI->getRegClass(vr);
- DenseMap<unsigned, unsigned> ®map = VRegMapping[RC];
- int n = regmap.size();
- regmap.insert(std::make_pair(vr, n + 1));
+ for (unsigned I : llvm::seq(MRI->getNumVirtRegs())) {
+ Register VR = Register::index2VirtReg(I);
+ if (MRI->use_empty(VR) && MRI->def_empty(VR))
+ continue;
+ const TargetRegisterClass *RC = MRI->getRegClass(VR);
+ DenseMap<unsigned, unsigned> &RCRegMap = VRegMapping[RC];
+ RCRegMap.insert(std::make_pair(VR, RCRegMap.size() + 1));
----------------
AlexMaclean wrote:
Nice, updated
https://github.com/llvm/llvm-project/pull/154391
More information about the llvm-commits
mailing list