Home
last modified time | relevance | path

Searched refs:VRM (Results 1 – 25 of 54) sorted by relevance

123

/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DCalcSpillWeights.h48 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 DVirtRegMap.h204 inline raw_ostream &operator<<(raw_ostream &OS, const VirtRegMap &VRM) {
205 VRM.print(OS);
H A DLiveRangeEdit.h72 VirtRegMap *VRM; variable
135 VRM(vrm), TII(*MF.getSubtarget().getInstrInfo()), TheDelegate(delegate), in Parent()
H A DSpiller.h39 VirtRegMap &VRM, VirtRegAuxInfo &VRAI);
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DGCNNSAReassign.cpp73 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 DSIPreAllocateWWMRegs.cpp40 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 DRegAllocBasic.cpp148 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 DRegAllocPBQP.cpp176 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 DAllocationOrder.cpp29 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 DLiveRangeEdit.cpp36 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 DRegAllocBase.cpp61 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 DMIRVRegNamerUtils.cpp25 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 DInlineSpiller.cpp91 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 DLiveRegMatrix.cpp58 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 DCalcSpillWeights.cpp82 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 DRegAllocGreedy.cpp231 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 DVirtRegMap.cpp190 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 DLiveDebugVariables.cpp484 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 DRegAllocEvictionAdvisor.cpp128 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 DSplitKit.cpp154 : 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 DSplitKit.h100 const VirtRegMap &VRM; variable
261 VirtRegMap &VRM; variable
438 SplitEditor(SplitAnalysis &SA, LiveIntervals &LIS, VirtRegMap &VRM,
H A DLiveDebugVariables.h50 void emitDebugValues(VirtRegMap *VRM);
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86TileConfig.cpp85 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 DX86RegisterInfo.cpp937 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 DSystemZRegisterInfo.cpp28 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()

123