Lines Matching refs:Loop
38 template class llvm::LoopBase<BasicBlock, Loop>;
39 template class llvm::LoopInfoBase<BasicBlock, Loop>;
55 bool Loop::isLoopInvariant(const Value *V) const { in isLoopInvariant()
61 bool Loop::hasLoopInvariantOperands(const Instruction *I) const { in hasLoopInvariantOperands()
65 bool Loop::makeLoopInvariant(Value *V, bool &Changed, in makeLoopInvariant()
72 bool Loop::makeLoopInvariant(Instruction *I, bool &Changed, in makeLoopInvariant()
110 PHINode *Loop::getCanonicalInductionVariable() const { in getCanonicalInductionVariable()
146 bool Loop::isLCSSAForm(DominatorTree &DT) const { in isLCSSAForm()
176 bool Loop::isRecursivelyLCSSAForm(DominatorTree &DT) const { in isRecursivelyLCSSAForm()
180 return std::all_of(begin(), end(), [&](const Loop *L) { in isRecursivelyLCSSAForm()
185 bool Loop::isLoopSimplifyForm() const { in isLoopSimplifyForm()
192 bool Loop::isSafeToClone() const { in isSafeToClone()
207 MDNode *Loop::getLoopID() const { in getLoopID()
241 void Loop::setLoopID(MDNode *LoopID) const { in setLoopID()
261 bool Loop::isAnnotatedParallel() const { in isAnnotatedParallel()
302 DebugLoc Loop::getStartLoc() const { in getStartLoc()
322 bool Loop::hasDedicatedExits() const { in hasDedicatedExits()
336 Loop::getUniqueExitBlocks(SmallVectorImpl<BasicBlock *> &ExitBlocks) const { in getUniqueExitBlocks()
378 BasicBlock *Loop::getUniqueExitBlock() const { in getUniqueExitBlock()
387 LLVM_DUMP_METHOD void Loop::dump() const { in dump()
400 Loop &Unloop;
409 DenseMap<Loop*, Loop*> SubloopParents;
416 UnloopUpdater(Loop *UL, LoopInfo *LInfo) : in UnloopUpdater()
426 Loop *getNearestLoop(BasicBlock *BB, Loop *BBLoop);
439 Loop *L = LI->getLoopFor(POI); in updateBlockParents()
440 Loop *NL = getNearestLoop(POI, L); in updateBlockParents()
467 Loop *L = LI->getLoopFor(*POI); in updateBlockParents()
468 Loop *NL = getNearestLoop(*POI, L); in updateBlockParents()
483 for (Loop::block_iterator BI = Unloop.block_begin(), in removeBlocksFromAncestors()
485 Loop *OuterParent = LI->getLoopFor(*BI); in removeBlocksFromAncestors()
493 for (Loop *OldParent = Unloop.getParentLoop(); OldParent != OuterParent; in removeBlocksFromAncestors()
504 Loop *Subloop = *std::prev(Unloop.end()); in updateSubloopParents()
508 if (Loop *Parent = SubloopParents[Subloop]) in updateSubloopParents()
520 Loop *UnloopUpdater::getNearestLoop(BasicBlock *BB, Loop *BBLoop) { in getNearestLoop()
524 Loop *NearLoop = BBLoop; in getNearestLoop()
526 Loop *Subloop = nullptr; in getNearestLoop()
548 Loop *L = LI->getLoopFor(*I); in getNearestLoop()
589 void LoopInfo::markAsRemoved(Loop *Unloop) { in markAsRemoved()
597 for (Loop::block_iterator I = Unloop->block_begin(), in markAsRemoved()
638 Loop *ParentLoop = Unloop->getParentLoop(); in markAsRemoved()
639 for (Loop::iterator I = ParentLoop->begin();; ++I) { in markAsRemoved()
672 PreservedAnalyses PrintLoopPass::run(Loop &L, AnalysisManager<Loop> &) { in run() argument