| /llvm-project-15.0.7/llvm/include/llvm/CodeGen/ |
| H A D | CalcSpillWeights.h | 48 const VirtRegMap &VRM; variable 58 const VirtRegMap &VRM, const MachineLoopInfo &Loops, in VirtRegAuxInfo() argument 60 : MF(MF), LIS(LIS), VRM(VRM), Loops(Loops), MBFI(MBFI) {} in VirtRegAuxInfo() 80 const VirtRegMap &VRM,
|
| H A D | VirtRegMap.h | 204 inline raw_ostream &operator<<(raw_ostream &OS, const VirtRegMap &VRM) { 205 VRM.print(OS);
|
| H A D | LiveRangeEdit.h | 72 VirtRegMap *VRM; variable 135 VRM(vrm), TII(*MF.getSubtarget().getInstrInfo()), TheDelegate(delegate), in Parent()
|
| H A D | Spiller.h | 39 VirtRegMap &VRM, VirtRegAuxInfo &VRAI);
|
| /llvm-project-15.0.7/llvm/lib/Target/AMDGPU/ |
| H A D | GCNNSAReassign.cpp | 73 VirtRegMap *VRM; member in __anon21a10c190111::GCNNSAReassign 114 if (VRM->hasPhys(Intervals[N]->reg())) in tryAssignRegisters() 183 if (Reg.isPhysical() || !VRM->isAssignedReg(Reg)) in CheckNSA() 186 Register PhysReg = VRM->getPhys(Reg); in CheckNSA() 209 if (VRM->getPreSplitReg(Reg)) in CheckNSA() 245 VRM = &getAnalysis<VirtRegMap>(); in runOnMachineFunction() 302 OrigRegs.push_back(VRM->getPhys(Reg)); in runOnMachineFunction() 321 << " " << llvm::printReg((VRM->getPhys(LI->reg())), TRI); in runOnMachineFunction() 327 if (VRM->hasPhys(Intervals.back()->reg())) // Did not change allocation. in runOnMachineFunction() 346 if (VRM->hasPhys(Intervals[I]->reg())) in runOnMachineFunction() [all …]
|
| H A D | SIPreAllocateWWMRegs.cpp | 40 VirtRegMap *VRM; member in __anon86cdcd170111::SIPreAllocateWWMRegs 98 if (VRM->hasPhys(Reg)) in processDef() 127 if (!VRM->hasPhys(VirtReg)) in rewriteRegs() 130 Register PhysReg = VRM->getPhys(VirtReg); in rewriteRegs() 148 const Register PhysReg = VRM->getPhys(Reg); in rewriteRegs() 196 VRM = &getAnalysis<VirtRegMap>(); in runOnMachineFunction()
|
| /llvm-project-15.0.7/llvm/lib/CodeGen/ |
| H A D | RegAllocBasic.cpp | 148 if (VRM->hasPhys(VirtReg)) { in INITIALIZE_PASS_DEPENDENCY() 162 if (!VRM->hasPhys(VirtReg)) in LRE_WillShrinkVirtReg() 233 if (!VRM->hasPhys(Spill.reg())) in spillInterferences() 241 LiveRangeEdit LRE(&Spill, SplitVRegs, *MF, *LIS, VRM, this, &DeadRemats); in spillInterferences() 266 AllocationOrder::create(VirtReg.reg(), *VRM, RegClassInfo, Matrix); in selectOrSplit() 301 LiveRangeEdit LRE(&VirtReg, SplitVRegs, *MF, *LIS, VRM, this, &DeadRemats); in selectOrSplit() 317 VirtRegAuxInfo VRAI(*MF, *LIS, *VRM, getAnalysis<MachineLoopInfo>(), in runOnMachineFunction() 321 SpillerInstance.reset(createInlineSpiller(*this, *MF, *VRM, VRAI)); in runOnMachineFunction() 327 LLVM_DEBUG(dbgs() << "Post alloc VirtRegMap:\n" << *VRM << "\n"); in runOnMachineFunction()
|
| H A D | RegAllocPBQP.cpp | 176 VirtRegMap &VRM, 182 VirtRegMap &VRM) const; 532 : VirtRegAuxInfo(MF, LIS, VRM, Loops, MBFI) {} in PBQPVirtRegAuxInfo() 718 VirtRegMap &VRM, in mapPBQPToRegAlloc() argument 729 VRM.clearAllVirt(); in mapPBQPToRegAlloc() 742 VRM.assignVirt2Phys(VReg, PReg); in mapPBQPToRegAlloc() 779 VRM.assignVirt2Phys(LI.reg(), PReg); in finalizeAlloc() 798 VirtRegMap &VRM = getAnalysis<VirtRegMap>(); in runOnMachineFunction() local 810 createInlineSpiller(*this, MF, VRM, DefaultVRAI)); in runOnMachineFunction() 853 initializeGraph(G, VRM, *VRegSpiller); in runOnMachineFunction() [all …]
|
| H A D | AllocationOrder.cpp | 29 AllocationOrder AllocationOrder::create(unsigned VirtReg, const VirtRegMap &VRM, in create() argument 32 const MachineFunction &MF = VRM.getMachineFunction(); in create() 33 const TargetRegisterInfo *TRI = &VRM.getTargetRegInfo(); in create() 37 TRI->getRegAllocationHints(VirtReg, Order, Hints, MF, &VRM, Matrix); in create()
|
| H A D | LiveRangeEdit.cpp | 36 if (VRM) in createEmptyIntervalFrom() 37 VRM->setIsSplitFromReg(VReg, VRM->getOriginal(OldReg)); in createEmptyIntervalFrom() 56 if (VRM) { in createFrom() 57 VRM->setIsSplitFromReg(VReg, VRM->getOriginal(OldReg)); in createFrom() 84 unsigned Original = VRM->getOriginal(getReg()); in scanRemattable() 308 if (VRM && MI->getOperand(0).isReg() && MI->getOperand(0).isDef() && in eliminateDeadDef() 312 unsigned Original = VRM->getOriginal(Dest); in eliminateDeadDef() 462 Register Original = VRM ? VRM->getOriginal(VReg) : Register(); in eliminateDeadDefs() 468 VRM->setIsSplitFromReg(SplitLI->reg(), Original); in eliminateDeadDefs() 479 if (VRM) in MRI_NoteNewVirtualRegister() [all …]
|
| H A D | RegAllocBase.cpp | 61 VRM = &vrm; in init() 89 assert(!VRM->hasPhys(VirtReg->reg()) && "Register already assigned"); in allocatePhysRegs() 142 VRM->assignVirt2Phys(VirtReg->reg(), AllocOrder.front()); in allocatePhysRegs() 150 assert(!VRM->hasPhys(SplitVirtReg->reg()) && "Register already assigned"); in allocatePhysRegs() 181 if (VRM->hasPhys(Reg)) in enqueue()
|
| H A D | MIRVRegNamerUtils.cpp | 25 bool VRegRenamer::doVRegRenaming(const VRegRenameMap &VRM) { in doVRegRenaming() argument 28 for (const auto &E : VRM) { in doVRegRenaming() 48 VRegRenameMap VRM; in getVRegRenameMap() local 51 VRM[Reg] = createVirtualRegisterWithLowerName(Reg, GetUniqueVRegName(VReg)); in getVRegRenameMap() 53 return VRM; in getVRegRenameMap()
|
| H A D | InlineSpiller.cpp | 91 VirtRegMap &VRM; member in __anon689c7d9e0111::HoistSpillHelper 162 VirtRegMap &VRM; member in __anon689c7d9e0111::InlineSpiller 201 Loops(Pass.getAnalysis<MachineLoopInfo>()), VRM(VRM), in InlineSpiller() 205 HSpiller(Pass, MF, VRM), VRAI(VRAI) {} in InlineSpiller() 1204 Original = VRM.getOriginal(edit.getReg()); in spill() 1205 StackSlot = VRM.getStackSlot(Original); in spill() 1623 if (VRM.hasPhys(Old)) in LRE_DidCloneVirtReg() 1624 VRM.assignVirt2Phys(New, VRM.getPhys(Old)); in LRE_DidCloneVirtReg() 1626 VRM.assignVirt2StackSlot(New, VRM.getStackSlot(Old)); in LRE_DidCloneVirtReg() 1629 if (VRM.hasShape(Old)) in LRE_DidCloneVirtReg() [all …]
|
| H A D | LiveRegMatrix.cpp | 58 VRM = &getAnalysis<VirtRegMap>(); in runOnMachineFunction() 107 assert(!VRM->hasPhys(VirtReg.reg()) && "Duplicate VirtReg assignment"); in assign() 108 VRM->assignVirt2Phys(VirtReg.reg(), PhysReg); in assign() 122 Register PhysReg = VRM->getPhys(VirtReg.reg()); in unassign() 125 VRM->clearVirt(VirtReg.reg()); in unassign()
|
| H A D | CalcSpillWeights.cpp | 82 const VirtRegMap &VRM, in isRematerializable() argument 85 Register Original = VRM.getOriginal(Reg); in isRematerializable() 110 if (!Register::isVirtualRegister(Reg) || VRM.getOriginal(Reg) != Original) in isRematerializable() 131 return any_of(VRM.getRegInfo().reg_operands(LI.reg()), in isLiveAtStatepointVarArg() 164 Register Original = VRM.getOriginal(Reg); in weightCalcHelper() 317 if (isRematerializable(LI, LIS, VRM, *MF.getSubtarget().getInstrInfo())) in weightCalcHelper()
|
| H A D | RegAllocGreedy.cpp | 231 if (VRM->hasPhys(VirtReg)) { in LRE_CanEraseVirtReg() 245 if (!VRM->hasPhys(VirtReg)) in LRE_WillShrinkVirtReg() 341 if (VRM->hasKnownPreference(Reg)) in enqueue() 473 if (!VRM->hasPhys(Intf->reg())) in evictInterference() 1833 assert(VRM->hasPhys(ItVirtReg) && in tryLastChanceRecoloring() 1891 if (VRM->hasPhys(LI->reg())) in tryLastChanceRecoloring() 2103 MCRegister PhysReg = VRM->getPhys(Reg); in tryHintRecoloring() 2120 if (!VRM->hasPhys(Reg)) { in tryHintRecoloring() 2129 MCRegister CurrPhys = VRM->getPhys(Reg); in tryHintRecoloring() 2214 if (!VRM->hasPhys(LI->reg())) in tryHintsRecoloring() [all …]
|
| H A D | VirtRegMap.cpp | 190 VirtRegMap *VRM; member in __anon1619f7c50111::VirtRegRewriter 263 VRM = &getAnalysis<VirtRegMap>(); in runOnMachineFunction() 267 LLVM_DEBUG(VRM->dump()); in runOnMachineFunction() 270 LIS->addKillFlags(VRM); in runOnMachineFunction() 283 DebugVars->emitDebugValues(VRM); in runOnMachineFunction() 287 VRM->clearAllVirt(); in runOnMachineFunction() 350 Register PhysReg = VRM->getPhys(VirtReg); in addMBBLiveIns() 553 MCRegister PhysReg = VRM->getPhys(VirtReg); in rewrite()
|
| H A D | LiveDebugVariables.cpp | 484 void emitDebugValues(VirtRegMap *VRM, LiveIntervals &LIS, 667 void emitDebugValues(VirtRegMap *VRM); 1528 if (VRM.isAssignedReg(VirtReg) && in rewriteLocations() 1533 Loc.substPhysReg(VRM.getPhys(VirtReg), TRI); in rewriteLocations() 1806 void LDVImpl::emitDebugValues(VirtRegMap *VRM) { in emitDebugValues() argument 1838 if (VRM->isAssignedReg(Reg) && in emitDebugValues() 1839 Register::isPhysicalRegister(VRM->getPhys(Reg))) { in emitDebugValues() 1840 unsigned PhysReg = VRM->getPhys(Reg); in emitDebugValues() 1866 Builder.addFrameIndex(VRM->getStackSlot(Reg)); in emitDebugValues() 1957 void LiveDebugVariables::emitDebugValues(VirtRegMap *VRM) { in emitDebugValues() argument [all …]
|
| H A D | RegAllocEvictionAdvisor.cpp | 128 LIS(RA.getLiveIntervals()), VRM(RA.getVirtRegMap()), in RegAllocEvictionAdvisor() 129 MRI(&VRM->getRegInfo()), TRI(MF.getSubtarget().getRegisterInfo()), in RegAllocEvictionAdvisor() 250 bool BreaksHint = VRM->hasPreferredPhys(Intf->reg()); in canEvictInterferenceBasedOnCost()
|
| H A D | SplitKit.cpp | 154 : MF(vrm.getMachineFunction()), VRM(vrm), LIS(lis), Loops(mli), in SplitAnalysis() 326 unsigned OrigReg = VRM.getOriginal(CurLI->reg()); in isOriginalEndpoint() 353 : SA(SA), LIS(LIS), VRM(VRM), MRI(VRM.getMachineFunction().getRegInfo()), in SplitEditor() 355 TRI(*VRM.getMachineFunction().getSubtarget().getRegisterInfo()), in SplitEditor() 366 LICalc[0].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset() 369 LICalc[1].reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in reset() 593 unsigned Original = VRM.getOriginal(Edit->get(RegIdx)); in defFromParent() 1295 SubLIC.reset(&VRM.getMachineFunction(), LIS.getSlotIndexes(), &MDT, in extendPHIKillRanges() 1557 Register Original = VRM.getOriginal(VReg); in finish() 1559 VRM.setIsSplitFromReg(SplitLI->reg(), Original); in finish() [all …]
|
| H A D | SplitKit.h | 100 const VirtRegMap &VRM; variable 261 VirtRegMap &VRM; variable 438 SplitEditor(SplitAnalysis &SA, LiveIntervals &LIS, VirtRegMap &VRM,
|
| H A D | LiveDebugVariables.h | 50 void emitDebugValues(VirtRegMap *VRM);
|
| /llvm-project-15.0.7/llvm/lib/Target/X86/ |
| H A D | X86TileConfig.cpp | 85 VirtRegMap &VRM = getAnalysis<VirtRegMap>(); in INITIALIZE_PASS_DEPENDENCY() local 87 if (VRM.isShapeMapEmpty()) in INITIALIZE_PASS_DEPENDENCY() 126 if (VRM.getPhys(VirtReg) == VirtRegMap::NO_PHYS_REG) in INITIALIZE_PASS_DEPENDENCY() 128 unsigned Index = VRM.getPhys(VirtReg) - X86::TMM0; in INITIALIZE_PASS_DEPENDENCY() 140 ShapeT Shape = VRM.getShape(Phys2Virt[I]); in INITIALIZE_PASS_DEPENDENCY()
|
| H A D | X86RegisterInfo.cpp | 937 static ShapeT getTileShape(Register VirtReg, VirtRegMap *VRM, in getTileShape() argument 939 if (VRM->hasShape(VirtReg)) in getTileShape() 940 return VRM->getShape(VirtReg); in getTileShape() 951 ShapeT Shape = getTileShape(SrcReg, VRM, MRI); in getTileShape() 952 VRM->assignVirt2Shape(VirtReg, Shape); in getTileShape() 967 VRM->assignVirt2Shape(VirtReg, Shape); in getTileShape() 976 const VirtRegMap *VRM, in getRegAllocationHints() argument 981 VirtReg, Order, Hints, MF, VRM, Matrix); in getRegAllocationHints() 986 ShapeT VirtShape = getTileShape(VirtReg, const_cast<VirtRegMap *>(VRM), MRI); in getRegAllocationHints() 993 ShapeT PhysShape = getTileShape(VReg, const_cast<VirtRegMap *>(VRM), MRI); in getRegAllocationHints()
|
| /llvm-project-15.0.7/llvm/lib/Target/SystemZ/ |
| H A D | SystemZRegisterInfo.cpp | 28 const VirtRegMap *VRM, in getRC32() argument 41 if (VRM && VRM->hasPhys(MO.getReg())) { in getRC32() 42 Register PhysReg = VRM->getPhys(MO.getReg()); in getRC32() 77 const VirtRegMap *VRM, const LiveRegMatrix *Matrix) const { in getRegAllocationHints() argument 83 VirtReg, Order, Hints, MF, VRM, Matrix); in getRegAllocationHints() 85 if (VRM != nullptr) { in getRegAllocationHints() 112 : Register(VRM->getPhys(Reg)); in getRegAllocationHints() 151 TRI->getCommonSubClass(getRC32(FalseMO, VRM, MRI), in getRegAllocationHints() 152 getRC32(TrueMO, VRM, MRI)); in getRegAllocationHints() 155 getRC32(Use.getOperand(0), VRM, MRI)); in getRegAllocationHints()
|