Lines Matching refs:ML

119     MachineLoop &ML;  member in __anon59c8a0920111::PostOrderLoopTraversal
125 PostOrderLoopTraversal(MachineLoop &ML, MachineLoopInfo &MLI) in PostOrderLoopTraversal() argument
126 : ML(ML), MLI(MLI) { } in PostOrderLoopTraversal()
142 if (!ML.contains(Succ)) in ProcessLoop()
151 ML.getExitBlocks(ExitBlocks); in ProcessLoop()
155 Search(ML.getHeader()); in ProcessLoop()
165 if (auto *Preheader = ML.getLoopPreheader()) in ProcessLoop()
167 else if (auto *Preheader = MLI.findLoopPreheader(&ML, true, true)) in ProcessLoop()
362 MachineLoop &ML; member
383 LowOverheadLoop(MachineLoop &ML, MachineLoopInfo &MLI, in LowOverheadLoop()
386 : ML(ML), MLI(MLI), RDA(RDA), TRI(TRI), TII(TII), in LowOverheadLoop()
388 MF = ML.getHeader()->getParent(); in LowOverheadLoop()
389 if (auto *MBB = ML.getLoopPreheader()) in LowOverheadLoop()
391 else if (auto *MBB = MLI.findLoopPreheader(&ML, true, true)) in LowOverheadLoop()
409 !CannotTailPredicate && ML.getNumBlocks() == 1; in IsTailPredicationLegal()
508 bool ProcessLoop(MachineLoop *ML);
617 assert(ML.getBlocks().size() == 1 && in ValidateTailPredicate()
952 MachineBasicBlock *Header = ML.getHeader(); in ValidateLiveOuts()
1028 ML.getExitBlocks(ExitBlocks); in ValidateLiveOuts()
1029 assert(ML.getNumBlocks() == 1 && "Expected single block loop!"); in ValidateLiveOuts()
1079 ARMBasicBlockUtils *BBUtils, MachineLoop &ML) { in Validate() argument
1085 if (TgtBB != ML.getHeader()) { in Validate()
1092 if (BBUtils->getOffsetOf(End) < BBUtils->getOffsetOf(ML.getHeader()) || in Validate()
1093 !BBUtils->isBBInRange(End, ML.getHeader(), 4094)) { in Validate()
1114 Revert = !ValidateRanges(Start, End, BBUtils, ML); in Validate()
1138 static bool ValidateMVEStore(MachineInstr *MI, MachineLoop *ML) { in ValidateMVEStore() argument
1180 ML->getExitBlocks(Frontier); in ValidateMVEStore()
1279 if (MI->mayStore() && !ValidateMVEStore(MI, &ML)) in ValidateMVEInst()
1320 for (auto ML : *MLI) { in runOnMachineFunction()
1321 if (ML->isOutermost()) in runOnMachineFunction()
1322 Changed |= ProcessLoop(ML); in runOnMachineFunction()
1328 bool ARMLowOverheadLoops::ProcessLoop(MachineLoop *ML) { in ProcessLoop() argument
1333 for (MachineLoop *L : *ML) in ProcessLoop()
1338 if (auto *Preheader = ML->getLoopPreheader()) in ProcessLoop()
1340 else if (auto *Preheader = MLI->findLoopPreheader(ML, true, true)) in ProcessLoop()
1342 for (auto *MBB : ML->getBlocks()) in ProcessLoop()
1359 LowOverheadLoop LoLoop(*ML, *MLI, *RDA, *TRI, *TII); in ProcessLoop()
1371 for (auto *MBB : reverse(ML->getBlocks())) { in ProcessLoop()
1804 PostOrderLoopTraversal DFS(LoLoop.ML, *MLI); in Expand()