Lines Matching defs:VReg
166 /// Spill the given VReg.
167 void spillVReg(Register VReg, SmallVectorImpl<Register> &NewIntervals,
332 Register VReg = G.getNodeMetadata(NId).getVReg();
333 LiveInterval &LI = LIS.getInterval(VReg);
603 Register VReg = Worklist.back();
606 LiveInterval &VRegLI = LIS.getInterval(VReg);
616 const TargetRegisterClass *TRC = MRI.getRegClass(VReg);
653 spillVReg(VReg, NewVRegs, MF, LIS, VRM, VRegSpiller);
658 VRegAllowedMap[VReg.id()] = std::move(VRegAllowed);
662 auto VReg = KV.first;
665 if (LIS.getInterval(VReg).empty()) {
666 EmptyIntervalVRegs.insert(VReg);
667 VRegsToAlloc.erase(VReg);
682 G.getNodeMetadata(NId).setVReg(VReg);
685 G.getMetadata().setNodeIdForVReg(VReg, NId);
689 void RegAllocPBQP::spillVReg(Register VReg,
693 VRegsToAlloc.erase(VReg);
694 LiveRangeEdit LRE(&LIS.getInterval(VReg), NewIntervals, MF, LIS, &VRM,
700 LLVM_DEBUG(dbgs() << "VREG " << printReg(VReg, &TRI) << " -> SPILLED (Cost: "
733 Register VReg = G.getNodeMetadata(NId).getVReg();
738 LLVM_DEBUG(dbgs() << "VREG " << printReg(VReg, &TRI) << " -> "
741 VRM.assignVirt2Phys(VReg, PReg);
743 // Spill VReg. If this introduces new intervals we'll need another round
746 spillVReg(VReg, NewVRegs, MF, LIS, VRM, VRegSpiller);
896 Register VReg = G.getNodeMetadata(NId).getVReg();
897 const char *RegClassName = TRI->getRegClassName(MRI.getRegClass(VReg));
898 OS << NId << " (" << RegClassName << ':' << printReg(VReg, TRI) << ')';