Lines Matching defs:ML
129 MachineLoop &ML;
135 PostOrderLoopTraversal(MachineLoop &ML, MachineLoopInfo &MLI)
136 : ML(ML), MLI(MLI) { }
152 if (!ML.contains(Succ))
161 ML.getExitBlocks(ExitBlocks);
165 Search(ML.getHeader());
175 if (auto *Preheader = ML.getLoopPreheader())
177 else if (auto *Preheader = MLI.findLoopPreheader(&ML, true, true))
366 MachineLoop &ML;
388 LowOverheadLoop(MachineLoop &ML, MachineLoopInfo &MLI,
391 : ML(ML), MLI(MLI), RDA(RDA), TRI(TRI), TII(TII),
393 MF = ML.getHeader()->getParent();
394 if (auto *MBB = ML.getLoopPreheader())
396 else if (auto *MBB = MLI.findLoopPreheader(&ML, true, true))
413 !CannotTailPredicate && ML.getNumBlocks() == 1;
505 bool ProcessLoop(MachineLoop *ML);
610 assert(ML.getBlocks().size() == 1 &&
941 MachineBasicBlock *Header = ML.getHeader();
1017 ML.getExitBlocks(ExitBlocks);
1018 assert(ML.getNumBlocks() == 1 && "Expected single block loop!");
1068 ARMBasicBlockUtils *BBUtils, MachineLoop &ML) {
1074 if (TgtBB != ML.getHeader()) {
1081 if (BBUtils->getOffsetOf(End) < BBUtils->getOffsetOf(ML.getHeader()) ||
1082 !BBUtils->isBBInRange(End, ML.getHeader(), 4094)) {
1103 Revert = !ValidateRanges(Start, End, BBUtils, ML);
1127 static bool ValidateMVEStore(MachineInstr *MI, MachineLoop *ML) {
1169 ML->getExitBlocks(Frontier);
1268 if (MI->mayStore() && !ValidateMVEStore(MI, &ML))
1309 for (auto *ML : *MLI) {
1310 if (ML->isOutermost())
1311 Changed |= ProcessLoop(ML);
1317 bool ARMLowOverheadLoops::ProcessLoop(MachineLoop *ML) {
1321 for (MachineLoop *L : *ML)
1326 if (auto *Preheader = ML->getLoopPreheader())
1328 else if (auto *Preheader = MLI->findLoopPreheader(ML, true, true))
1330 for (auto *MBB : ML->getBlocks())
1347 LowOverheadLoop LoLoop(*ML, *MLI, *RDA, *TRI, *TII);
1359 for (auto *MBB : reverse(ML->getBlocks())) {
1793 PostOrderLoopTraversal DFS(LoLoop.ML, *MLI);