Lines Matching refs:Unloop

682   Loop &Unloop;  member in __anon951701df0511::UnloopUpdater
698 UnloopUpdater(Loop *UL, LoopInfo *LInfo) : Unloop(*UL), LI(LInfo), DFS(UL) {} in UnloopUpdater()
714 if (Unloop.getNumBlocks()) { in updateBlockParents()
725 assert((NL != &Unloop && (!NL || NL->contains(&Unloop))) && in updateBlockParents()
731 assert((FoundIB || Unloop.contains(L)) && "uninitialized successor"); in updateBlockParents()
739 assert(NIters < Unloop.getNumBlocks() && "runaway iterative algorithm"); in updateBlockParents()
752 assert(NL != &Unloop && (!NL || NL->contains(&Unloop)) && in updateBlockParents()
765 for (BasicBlock *BB : Unloop.blocks()) { in removeBlocksFromAncestors()
767 if (Unloop.contains(OuterParent)) { in removeBlocksFromAncestors()
768 while (OuterParent->getParentLoop() != &Unloop) in removeBlocksFromAncestors()
774 for (Loop *OldParent = Unloop.getParentLoop(); OldParent != OuterParent; in removeBlocksFromAncestors()
784 while (!Unloop.isInnermost()) { in updateSubloopParents()
785 Loop *Subloop = *std::prev(Unloop.end()); in updateSubloopParents()
786 Unloop.removeChildLoop(std::prev(Unloop.end())); in updateSubloopParents()
808 if (NearLoop != &Unloop && Unloop.contains(NearLoop)) { in getNearestLoop()
811 while (Subloop->getParentLoop() != &Unloop) { in getNearestLoop()
816 NearLoop = SubloopParents.insert({Subloop, &Unloop}).first->second; in getNearestLoop()
829 if (L == &Unloop) { in getNearestLoop()
835 if (L != &Unloop && Unloop.contains(L)) { in getNearestLoop()
841 assert(L->getParentLoop() == &Unloop && "cannot skip into nested loops"); in getNearestLoop()
847 if (L == &Unloop) { in getNearestLoop()
851 if (L && !L->contains(&Unloop)) { in getNearestLoop()
855 if (NearLoop == &Unloop || !NearLoop || NearLoop->contains(L)) in getNearestLoop()
876 void LoopInfo::erase(Loop *Unloop) { in erase() argument
877 assert(!Unloop->isInvalid() && "Loop has already been erased!"); in erase()
879 auto InvalidateOnExit = make_scope_exit([&]() { destroy(Unloop); }); in erase()
882 if (Unloop->isOutermost()) { in erase()
884 for (BasicBlock *BB : Unloop->blocks()) { in erase()
886 if (getLoopFor(BB) != Unloop) in erase()
897 if (*I == Unloop) { in erase()
904 while (!Unloop->isInnermost()) in erase()
905 addTopLevelLoop(Unloop->removeChildLoop(std::prev(Unloop->end()))); in erase()
912 UnloopUpdater Updater(Unloop, this); in erase()
922 Loop *ParentLoop = Unloop->getParentLoop(); in erase()
925 if (*I == Unloop) { in erase()