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()
485 MachineLoop *CurLoop) { in ProcessMI()
576 void MachineLICMBase::HoistRegionPostRA(MachineLoop *CurLoop, in HoistRegionPostRA()
594 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistRegionPostRA()
678 void MachineLICMBase::AddToLiveIns(MCRegister Reg, MachineLoop *CurLoop) { in AddToLiveIns()
696 MachineLoop *CurLoop, in HoistPostRA()
728 MachineLoop *CurLoop) { in IsGuaranteedToExecute()
800 MachineLoop *CurLoop, in HoistOutOfLoop()
820 const MachineLoop *ML = MLI->getLoopFor(BB); in HoistOutOfLoop()
871 SmallVector<MachineLoop *> InnerLoopWorkList; in HoistOutOfLoop()
872 for (MachineLoop *L = MLI->getLoopFor(MI.getParent()); L != CurLoop; in HoistOutOfLoop()
877 MachineLoop *InnerLoop = InnerLoopWorkList.pop_back_val(); in HoistOutOfLoop()
1075 bool MachineLICMBase::IsLICMCandidate(MachineInstr &I, MachineLoop *CurLoop) { in IsLICMCandidate()
1111 MachineLoop *CurLoop) { in IsLoopInvariantInst()
1122 MachineLoop *CurLoop) { in HasLoopPHIUse()
1157 MachineLoop *CurLoop) const { in HasHighOperandLatency()
1253 MachineLoop *CurLoop) { in IsProfitableToHoist()
1379 MachineLoop *CurLoop) { in ExtractHoistableLoad()
1451 SmallVector<MachineLoop *, 8> Worklist(MLI->begin(), MLI->end()); in InitializeLoadsHoistableLoops()
1452 SmallVector<MachineLoop *, 8> LoopsInPreOrder; in InitializeLoadsHoistableLoops()
1480 for (MachineLoop *L = Loop; L != nullptr; L = L->getParentLoop()) in InitializeLoadsHoistableLoops()
1595 MachineLoop *CurLoop) { in Hoist()
1689 MachineLICMBase::getCurPreheader(MachineLoop *CurLoop, in getCurPreheader()