Lines Matching refs:MachineLoop
142 SmallDenseMap<MachineLoop *, bool> AllowedToHoistLoads;
145 DenseMap<MachineLoop *, SmallVector<MachineBasicBlock *, 8>> ExitBlockMap;
147 bool isExitBlock(MachineLoop *CurLoop, const MachineBasicBlock *MBB) { in isExitBlock()
220 void HoistRegionPostRA(MachineLoop *CurLoop,
223 void HoistPostRA(MachineInstr *MI, unsigned Def, MachineLoop *CurLoop,
229 MachineLoop *CurLoop);
231 void AddToLiveIns(MCRegister Reg, MachineLoop *CurLoop);
233 bool IsLICMCandidate(MachineInstr &I, MachineLoop *CurLoop);
235 bool IsLoopInvariantInst(MachineInstr &I, MachineLoop *CurLoop);
237 bool HasLoopPHIUse(const MachineInstr *MI, MachineLoop *CurLoop);
240 MachineLoop *CurLoop) const;
249 bool IsProfitableToHoist(MachineInstr &MI, MachineLoop *CurLoop);
251 bool IsGuaranteedToExecute(MachineBasicBlock *BB, MachineLoop *CurLoop);
264 void HoistOutOfLoop(MachineDomTreeNode *HeaderN, MachineLoop *CurLoop,
276 MachineInstr *ExtractHoistableLoad(MachineInstr *MI, MachineLoop *CurLoop);
288 MachineLoop *CurLoop);
296 MachineBasicBlock *getCurPreheader(MachineLoop *CurLoop,
384 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); in INITIALIZE_PASS_DEPENDENCY()
386 MachineLoop *CurLoop = Worklist.pop_back_val(); in INITIALIZE_PASS_DEPENDENCY()
432 MachineLoop *CurLoop) { in ProcessMI()
518 void MachineLICMBase::HoistRegionPostRA(MachineLoop *CurLoop, in HoistRegionPostRA()
536 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistRegionPostRA()
609 void MachineLICMBase::AddToLiveIns(MCRegister Reg, MachineLoop *CurLoop) { in AddToLiveIns()
627 MachineLoop *CurLoop, in HoistPostRA()
659 MachineLoop *CurLoop) { in IsGuaranteedToExecute()
731 MachineLoop *CurLoop, in HoistOutOfLoop()
751 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistOutOfLoop()
802 SmallVector<MachineLoop *> InnerLoopWorkList; in HoistOutOfLoop()
803 for (MachineLoop *L = MLI->getLoopFor(MI.getParent()); L != CurLoop; in HoistOutOfLoop()
808 MachineLoop *InnerLoop = InnerLoopWorkList.pop_back_val(); in HoistOutOfLoop()
1006 bool MachineLICMBase::IsLICMCandidate(MachineInstr &I, MachineLoop *CurLoop) { in IsLICMCandidate()
1042 MachineLoop *CurLoop) { in IsLoopInvariantInst()
1053 MachineLoop *CurLoop) { in HasLoopPHIUse()
1088 MachineLoop *CurLoop) const { in HasHighOperandLatency()
1184 MachineLoop *CurLoop) { in IsProfitableToHoist()
1292 MachineLoop *CurLoop) { in ExtractHoistableLoad()
1364 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); in InitializeLoadsHoistableLoops()
1365 SmallVector<MachineLoop *, 8> LoopsInPreOrder; in InitializeLoadsHoistableLoops()
1393 for (MachineLoop *L = Loop; L != nullptr; L = L->getParentLoop()) in InitializeLoadsHoistableLoops()
1508 MachineLoop *CurLoop) { in Hoist()
1602 MachineLICMBase::getCurPreheader(MachineLoop *CurLoop, in getCurPreheader()