Home
last modified time | relevance | path

Searched refs:LIS (Results 1 – 25 of 116) sorted by relevance

12345

/llvm-project-15.0.7/llvm/unittests/MI/
H A DLiveIntervalTest.cpp89 T(MF, LIS); in runOnMachineFunction()
128 LIS.handleMove(FromInstr, true); in testHandleMove()
207 testHandleMove(MF, LIS, 2, 1); in TEST()
218 testHandleMove(MF, LIS, 2, 1); in TEST()
229 testHandleMove(MF, LIS, 2, 1); in TEST()
240 testHandleMove(MF, LIS, 2, 1); in TEST()
250 testHandleMove(MF, LIS, 2, 1); in TEST()
261 testHandleMove(MF, LIS, 2, 1); in TEST()
276 testHandleMove(MF, LIS, 1, 2); in TEST()
645 testSplitAt(MF, LIS, 1, 0); in TEST()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DSIOptimizeExecMaskingPreRA.cpp33 LiveIntervals *LIS; member in __anon6b0c42990111::SIOptimizeExecMaskingPreRA
256 *LIS->getSlotIndexes(), *TRI); in optimizeVcndVcmpPair()
263 LIS->removeAllRegUnitsForPhysReg(CCReg); in optimizeVcndVcmpPair()
277 LIS->RemoveMachineInstrFromMaps(*Cmp); in optimizeVcndVcmpPair()
283 LIS->shrinkToUses(SelLI); in optimizeVcndVcmpPair()
289 LIS->RemoveMachineInstrFromMaps(*Sel); in optimizeVcndVcmpPair()
359 LIS->removeInterval(SavedExecReg); in optimizeElseBranch()
360 LIS->removeInterval(DstReg); in optimizeElseBranch()
380 LIS = &getAnalysis<LiveIntervals>(); in runOnMachineFunction()
497 LIS->removeInterval(SavedExec); in runOnMachineFunction()
[all …]
H A DSILowerControlFlow.cpp278 if (!LIS) { in emitIf()
334 if (LIS) in emitElse()
350 if (!LIS) { in emitElse()
401 if (LIS) in emitIfBreak()
413 if (LIS) { in emitIfBreak()
436 if (LIS) { in emitLoop()
545 if (LIS) in emitEndCf()
550 if (LIS) in emitEndCf()
713 if (LIS) in lowerInitExec()
772 if (!LIS) { in lowerInitExec()
[all …]
H A DGCNPreRAOptimizations.cpp45 LiveIntervals *LIS; member in __anon62f2d32f0111::GCNPreRAOptimizations
179 LIS->removeInterval(RegToUpdate); in processReg()
180 LIS->createAndComputeVirtRegInterval(RegToUpdate); in processReg()
194 if (SlotIndex::isEarlierInstr(LIS->getInstructionIndex(*Def1), in processReg()
198 LIS->RemoveMachineInstrFromMaps(*Def0); in processReg()
199 LIS->RemoveMachineInstrFromMaps(*Def1); in processReg()
206 LIS->InsertMachineInstrInMaps(*NewI); in processReg()
207 LIS->removeInterval(Reg); in processReg()
208 LIS->createAndComputeVirtRegInterval(Reg); in processReg()
222 LIS = &getAnalysis<LiveIntervals>(); in runOnMachineFunction()
[all …]
H A DGCNRegPressure.h112 const LiveIntervals &LIS;
118 GCNRPTracker(const LiveIntervals &LIS_) : LIS(LIS_) {} in GCNRPTracker()
198 const LiveIntervals &LIS,
202 const LiveIntervals &LIS,
212 getLiveRegMap(Range &&R, bool After, LiveIntervals &LIS) { in getLiveRegMap() argument
215 auto &SII = *LIS.getSlotIndexes(); in getLiveRegMap()
227 if (!LIS.hasInterval(Reg)) in getLiveRegMap()
229 auto &LI = LIS.getInterval(Reg); in getLiveRegMap()
251 return getLiveRegs(LIS.getInstructionIndex(MI).getDeadSlot(), LIS, in getLiveRegsAfter()
257 return getLiveRegs(LIS.getInstructionIndex(MI).getBaseIndex(), LIS, in getLiveRegsBefore()
[all …]
H A DGCNRegPressure.cpp24 const LiveIntervals &LIS, in printLivesAt() argument
27 << *LIS.getInstructionFromIndex(SI); in printLivesAt()
31 if (!LIS.hasInterval(Reg)) in printLivesAt()
33 const auto &LI = LIS.getInterval(Reg); in printLivesAt()
215 return getLiveLaneMask(MO.getReg(), SI, LIS, MRI); in getUsedRegMask()
228 auto const UsedMask = getUsedRegMask(MO, MRI, LIS); in collectVirtualRegUses()
249 const auto &LI = LIS.getInterval(Reg); in getLiveLaneMask()
269 if (!LIS.hasInterval(Reg)) in getLiveRegs()
287 LiveRegs = After ? getLiveRegsAfter(MI, LIS) in reset()
288 : getLiveRegsBefore(MI, LIS); in reset()
[all …]
H A DSIWholeQuadMode.cpp158 LiveIntervals *LIS; member in __anon487d63ae0111::SIWholeQuadMode
754 LIS->InsertMachineInstrInMaps(*Save); in saveSCC()
1018 LIS->RemoveMachineInstrFromMaps(MI); in lowerKillI1()
1032 LIS->removeInterval(CndReg); in lowerKillI1()
1105 Last != MBBE ? LIS->getInstructionIndex(*Last) : LIS->getMBBEndIdx(&MBB); in prepareInsertion()
1178 LIS->InsertMachineInstrInMaps(*MI); in toExact()
1194 LIS->InsertMachineInstrInMaps(*MI); in toWQM()
1215 LIS->InsertMachineInstrInMaps(*MI); in toStrictMode()
1238 LIS->InsertMachineInstrInMaps(*MI); in fromStrictMode()
1472 LIS->removeInterval(Reg); in lowerCopyInstrs()
[all …]
H A DGCNIterativeScheduler.cpp56 if (!I->isDebugInstr() && LIS) in printRegion()
57 OS << LIS->getInstructionIndex(*I); in printRegion()
63 if (!I->isDebugInstr() && LIS) in printRegion()
64 OS << LIS->getInstructionIndex(*I); in printRegion()
69 if (LIS) OS << LIS->getInstructionIndex(*End) << '\t'; in printRegion()
97 printRegion(OS, R->Begin, R->End, LIS, 1); in printRegions()
109 printRegion(OS, R->Begin, R->End, LIS); in printSchedResult()
227 , UPTracker(*LIS) { in GCNIterativeScheduler()
267 GCNUpwardRPTracker RPTracker(*LIS); in getSchedulePressure()
359 assert(LIS != nullptr); in scheduleRegion()
[all …]
H A DSILowerSGPRSpills.cpp39 LiveIntervals *LIS = nullptr; member in __anon3bd1a61b0111::SILowerSGPRSpills
78 LiveIntervals *LIS) { in insertCSRSaves() argument
106 if (LIS) { in insertCSRSaves()
110 LIS->InsertMachineInstrInMaps(Inst); in insertCSRSaves()
111 LIS->removeAllRegUnitsForPhysReg(Reg); in insertCSRSaves()
120 LiveIntervals *LIS) { in insertCSRRestores() argument
144 if (LIS) { in insertCSRRestores()
146 LIS->InsertMachineInstrInMaps(Inst); in insertCSRRestores()
147 LIS->removeAllRegUnitsForPhysReg(Reg); in insertCSRRestores()
231 insertCSRSaves(*SaveBlock, CSI, LIS); in spillCalleeSavedRegs()
[all …]
/llvm-project-15.0.7/llvm/lib/Target/WebAssembly/
H A DWebAssemblyRegStackify.cpp274 LIS.getInstructionIndex(*Insert))) in getVRegDef()
508 if (LIS.shrinkToUses(&LI)) { in shrinkToUses()
526 LIS.handleMove(*Def); in moveForSingleUse()
575 LIS.InsertMachineInstrInMaps(*Clone); in rematerializeCheapDef()
586 shrinkToUses(LI, LIS); in rematerializeCheapDef()
596 LIS.removeInterval(Reg); in rematerializeCheapDef()
597 LIS.RemoveMachineInstrFromMaps(Def); in rematerializeCheapDef()
639 LIS.handleMove(*Def); in moveAndTeeForMultiUse()
658 LiveInterval &LI = LIS.getInterval(Reg); in moveAndTeeForMultiUse()
663 shrinkToUses(LI, LIS); in moveAndTeeForMultiUse()
[all …]
H A DWebAssemblyMemIntrinsicResults.cpp88 LiveIntervals &LIS) { in replaceDominatedUses() argument
91 LiveInterval *FromLI = &LIS.getInterval(FromReg); in replaceDominatedUses()
92 LiveInterval *ToLI = &LIS.getInterval(ToReg); in replaceDominatedUses()
94 SlotIndex FromIdx = LIS.getInstructionIndex(MI).getRegSlot(); in replaceDominatedUses()
108 SlotIndex WhereIdx = LIS.getInstructionIndex(*Where); in replaceDominatedUses()
133 LIS.extendToIndices(*ToLI, Indices); in replaceDominatedUses()
136 LIS.shrinkToUses(FromLI); in replaceDominatedUses()
150 MachineDominatorTree &MDT, LiveIntervals &LIS, in optimizeCall() argument
173 return replaceDominatedUses(MBB, MI, FromReg, ToReg, MRI, MDT, LIS); in optimizeCall()
188 auto &LIS = getAnalysis<LiveIntervals>(); in runOnMachineFunction() local
[all …]
H A DWebAssemblyOptimizeLiveIntervals.cpp80 auto &LIS = getAnalysis<LiveIntervals>(); in runOnMachineFunction() local
96 LIS.splitSeparateComponents(LIS.getInterval(Reg), SplitLIs); in runOnMachineFunction()
116 LiveInterval &LI = LIS.getInterval(MI.getOperand(0).getReg()); in runOnMachineFunction()
117 LIS.removeVRegDefAt(LI, LIS.getInstructionIndex(MI).getRegSlot()); in runOnMachineFunction()
118 LIS.RemoveMachineInstrFromMaps(MI); in runOnMachineFunction()
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DLiveRangeEdit.cpp39 LiveInterval &LI = LIS.createEmptyInterval(VReg); in createEmptyIntervalFrom()
46 LiveInterval &OldLI = LIS.getInterval(OldReg); in createEmptyIntervalFrom()
66 LIS.getInterval(VReg).markNotSpillable(); in createFrom()
166 DefIdx = LIS.getInstructionIndex(*RM.OrigMI); in canRematerializeAt()
197 LIS.removeInterval(Reg); in eraseVirtReg()
338 LiveInterval &LI = LIS.getInterval(Reg); in eliminateDeadDef()
354 LIS.removeVRegDefAt(LI, Idx); in eliminateDeadDef()
409 LIS.RemoveMachineInstrFromMaps(*MI); in eliminateDeadDef()
420 ToShrink.remove(&LIS.getInterval(Reg)); in eliminateDeadDef()
445 if (!LIS.shrinkToUses(LI, &Dead)) in eliminateDeadDefs()
[all …]
H A DPHIElimination.cpp68 LiveIntervals *LIS; member in __anon5187251e0111::PHIElimination
204 if (LIS) in runOnMachineFunction()
212 if (LIS) in runOnMachineFunction()
388 if (LIS) { in LowerPHINode()
564 if (LIS) { in LowerPHINode()
625 if (LIS) in LowerPHINode()
733 assert((LV || LIS) && in isLiveIn()
735 if (LIS) in isLiveIn()
736 return LIS->isLiveInToMBB(LIS->getInterval(Reg), MBB); in isLiveIn()
743 assert((LV || LIS) && in isLiveOutPastPHIs()
[all …]
H A DSplitKit.cpp60 : LIS(lis), LastInsertPoint(BBNum) {} in InsertPointAnalysis()
67 SlotIndex MBBEnd = LIS.getMBBEndIdx(&MBB); in computeLastInsertPoint()
143 if (LIP == LIS.getMBBEndIdx(&MBB)) in getLastInsertPointIter()
145 return LIS.getInstructionFromIndex(LIP); in getLastInsertPointIter()
320 Stop = LIS.getMBBEndIdx(&*MFI); in countLiveBlocks()
353 : SA(SA), LIS(LIS), VRM(VRM), MRI(VRM.getMachineFunction().getRegInfo()), in SplitEditor()
727 useIntv(LIS.getMBBStartIdx(&MBB), LIS.getMBBEndIdx(&MBB)); in useIntv()
817 assert(LIS.getMBBFromIndex(Start) == LIS.getMBBFromIndex(End) && in overlapIntv()
860 LIS.removeVRegDefAt(*LI, Def); in removeBackCopies()
861 LIS.RemoveMachineInstrFromMaps(*MI); in removeBackCopies()
[all …]
H A DTwoAddressInstructionPass.cpp292 if (LIS && Reg.isVirtual() && !LIS->isNotInMIMap(*MI)) { in isPlainlyKilled()
817 if (LIS) { in rescheduleMIBelowKill()
940 if (LIS) { in rescheduleMIBelowKill()
958 if (LIS) { in rescheduleMIBelowKill()
1007 if (LIS) { in rescheduleKillAboveMI()
1123 if (LIS) { in rescheduleKillAboveMI()
1522 if (LIS) { in processTiedPairs()
1596 if (LIS) { in processTiedPairs()
1867 if (LIS) { in eliminateRegSequence()
1925 if (LIS) in eliminateRegSequence()
[all …]
H A DInlineSpiller.cpp87 LiveIntervals &LIS; member in __anon689c7d9e0111::HoistSpillHelper
147 IPA(LIS, mf.getNumBlockIDs()) {} in HoistSpillHelper()
158 LiveIntervals &LIS; member in __anon689c7d9e0111::InlineSpiller
274 LIS.getInterval(MO.getReg()); in getVDefInterval()
423 getVDefInterval(MI, LIS); in hoistSpillInsideBB()
716 assert(LIS.hasInterval(Reg) && in reMaterializeAll()
747 LIS.RemoveMachineInstrFromMaps(*MI); in coalesceStackAccess()
959 LIS.InsertMachineInstrInMaps(MI); in foldMemoryOperand()
1045 getVDefInterval(MI, LIS); in insertSpill()
1188 LIS.RemoveMachineInstrFromMaps(MI); in spillAll()
[all …]
H A DRegAllocPBQP.cpp193 LiveIntervals &LIS = G.getMetadata().LIS; in apply() local
310 LiveIntervals &LIS = G.getMetadata().LIS; in apply() local
334 LiveInterval &LI = LIS.getInterval(VReg); in apply()
594 LiveIntervals &LIS = G.getMetadata().LIS; in initializeGraph() local
666 if (LIS.getInterval(VReg).empty()) { in initializeGraph()
695 LiveRangeEdit LRE(&LIS.getInterval(VReg), NewIntervals, MF, LIS, &VRM, in spillVReg()
721 LiveIntervals &LIS = G.getMetadata().LIS; in mapPBQPToRegAlloc() local
762 LiveInterval &LI = LIS.getInterval(R); in finalizeAlloc()
826 findVRegIntervalsToAlloc(MF, LIS); in runOnMachineFunction()
877 finalizeAlloc(MF, LIS, VRM); in runOnMachineFunction()
[all …]
H A DRegisterCoalescer.cpp131 LiveIntervals *LIS = nullptr; member in __anoncc82f7ba0111::RegisterCoalescer
722 LIS->getMBBStartIdx(LIS->getMBBFromIndex(FillerStart)); in adjustCopiesBackFrom()
1714 LIS->shrinkToUses(&DstLI); in eliminateUndefCopy()
1894 LIS->shrinkToUses(&LI); in setUndefOnPrunedSubRegUses()
2355 LiveIntervals *LIS; member in __anoncc82f7ba0311::JoinVals
2509 NewVNInfo(newVNInfo), CP(cp), LIS(lis), Indexes(LIS->getSlotIndexes()), in JoinVals()
3892 return LIS->intervalIsInOneMBB(LIS->getInterval(SrcReg)) in isLocalCopy()
3893 || LIS->intervalIsInOneMBB(LIS->getInterval(DstReg)); in isLocalCopy()
3898 if (!LIS->hasInterval(reg)) in lateLiveIntervalUpdate()
4009 if (isLocalCopy(&MI, LIS)) { in copyCoalesceInMBB()
[all …]
H A DRenameIndependentSubregs.cpp74 : ConEQ(LIS), SR(&SR), Index(Index) {} in SubRangeInfo()
104 LiveIntervals *LIS; member in __anon4f5f40e50111::RenameIndependentSubregs
223 SlotIndex Pos = LIS->getInstructionIndex(*MI); in rewriteOperands()
271 BumpPtrAllocator &Allocator = LIS->getVNInfoAllocator(); in distribute()
303 BumpPtrAllocator &Allocator = LIS->getVNInfoAllocator(); in computeMainRangesFixFlags()
304 const SlotIndexes &Indexes = *LIS->getSlotIndexes(); in computeMainRangesFixFlags()
368 LIS->constructMainRangeFromSubranges(LI); in computeMainRangesFixFlags()
373 LIS->shrinkToUses(&LI); in computeMainRangesFixFlags()
386 LIS = &getAnalysis<LiveIntervals>(); in runOnMachineFunction()
395 if (!LIS->hasInterval(Reg)) in runOnMachineFunction()
[all …]
H A DLiveDebugVariables.cpp317 LiveIntervals &LIS);
447 LiveIntervals &LIS);
473 LiveIntervals &LIS);
534 LiveIntervals *LIS; member in __anon41ad64740411::LDVImpl
825 if (!LIS->hasInterval(Reg)) { in handleDebugValue()
959 LiveIntervals &LIS) { in extendDef() argument
1048 if (!LIS.hasInterval(DstReg)) in addDefsFromCopies()
1158 MRI, LIS); in computeIntervals()
1644 if (!LIS.isNotInMIMap(*I) && in findNextInsertLocation()
1782 MBBEnd = LIS.getMBBEndIdx(&*MBB); in emitDebugValues()
[all …]
H A DCalcSpillWeights.cpp41 calculateSpillWeightAndHint(LIS.getInterval(Reg)); in calculateSpillWeightsAndHints()
81 const LiveIntervals &LIS, in isRematerializable() argument
94 MachineInstr *MI = LIS.getInstructionFromIndex(VNI->def); in isRematerializable()
114 const LiveInterval &SrcLI = LIS.getInterval(Reg); in isRematerializable()
120 MI = LIS.getInstructionFromIndex(VNI->def); in isRematerializable()
165 const LiveInterval &OrigInt = LIS.getInterval(Original); in weightCalcHelper()
182 MachineBasicBlock *LocalMBB = LIS.getMBBFromIndex(*End); in weightCalcHelper()
183 assert(LocalMBB == LIS.getMBBFromIndex(*Start) && in weightCalcHelper()
222 SlotIndex SI = LIS.getInstructionIndex(*MI); in weightCalcHelper()
254 if (Writes && IsExiting && LIS.isLiveOutOfMBB(LI, MBB)) in weightCalcHelper()
[all …]
H A DRegAllocBase.cpp62 LIS = &lis; in init()
78 enqueue(&LIS->getInterval(Reg)); in seedLiveRegs()
95 LIS->removeInterval(VirtReg->reg()); in allocatePhysRegs()
147 assert(LIS->hasInterval(Reg)); in allocatePhysRegs()
149 LiveInterval *SplitVirtReg = &LIS->getInterval(Reg); in allocatePhysRegs()
155 LIS->removeInterval(SplitVirtReg->reg()); in allocatePhysRegs()
170 LIS->RemoveMachineInstrFromMaps(*DeadInst); in postOptimization()
/llvm-project-15.0.7/llvm/lib/Target/PowerPC/
H A DPPCVSXFMAMutate.cpp67 LiveIntervals *LIS; member
109 SlotIndex FMAIdx = LIS->getInstructionIndex(MI); in processBlock()
192 if (LIS->getInterval(Reg2).Query(FMAIdx).isKill() in processBlock()
196 } else if (LIS->getInterval(Reg3).Query(FMAIdx).isKill() in processBlock()
213 !LIS->getInterval(AddendSrcReg).liveAt(FMAIdx)) in processBlock()
281 LiveInterval &FMAInt = LIS->getInterval(OldFMAReg); in processBlock()
299 LiveInterval &NewFMAInt = LIS->getInterval(KilledProdReg); in processBlock()
321 LiveRange &AddendSrcRange = LIS->getRegUnit(Unit); in processBlock()
322 AddendSrcRange.extendInBlock(LIS->getMBBStartIdx(&MBB), in processBlock()
333 LIS->RemoveMachineInstrFromMaps(*AddendMI); in processBlock()
[all …]
/llvm-project-15.0.7/llvm/include/llvm/CodeGen/
H A DCalcSpillWeights.h47 LiveIntervals &LIS; variable
57 VirtRegAuxInfo(MachineFunction &MF, LiveIntervals &LIS, in VirtRegAuxInfo() argument
60 : MF(MF), LIS(LIS), VRM(VRM), Loops(Loops), MBFI(MBFI) {} in VirtRegAuxInfo()
79 const LiveIntervals &LIS,

12345