Lines Matching refs:Loop

44 template class llvm::LoopBase<BasicBlock, Loop>;
45 template class llvm::LoopInfoBase<BasicBlock, Loop>;
61 bool Loop::isLoopInvariant(const Value *V) const { in isLoopInvariant()
67 bool Loop::hasLoopInvariantOperands(const Instruction *I) const { in hasLoopInvariantOperands()
71 bool Loop::makeLoopInvariant(Value *V, bool &Changed, Instruction *InsertPt, in makeLoopInvariant()
79 bool Loop::makeLoopInvariant(Instruction *I, bool &Changed, in makeLoopInvariant()
125 bool Loop::getIncomingAndBackEdge(BasicBlock *&Incoming, in getIncomingAndBackEdge()
151 PHINode *Loop::getCanonicalInductionVariable() const { in getCanonicalInductionVariable()
175 ICmpInst *Loop::getLatchCmpInst() const { in getLatchCmpInst()
185 static Value *findFinalIVValue(const Loop &L, const PHINode &IndVar, in findFinalIVValue()
202 std::optional<Loop::LoopBounds>
203 Loop::LoopBounds::getBounds(const Loop &L, PHINode &IndVar, in getBounds()
231 using Direction = Loop::LoopBounds::Direction;
233 ICmpInst::Predicate Loop::LoopBounds::getCanonicalPredicate() const { in getCanonicalPredicate()
275 Direction Loop::LoopBounds::getDirection() const { in getDirection()
288 std::optional<Loop::LoopBounds> Loop::getBounds(ScalarEvolution &SE) const { in getBounds()
295 PHINode *Loop::getInductionVariable(ScalarEvolution &SE) const { in getInductionVariable()
334 bool Loop::getInductionDescriptor(ScalarEvolution &SE, in getInductionDescriptor()
342 bool Loop::isAuxiliaryInductionVariable(PHINode &AuxIndVar, in isAuxiliaryInductionVariable()
368 BranchInst *Loop::getLoopGuardBranch() const { in getLoopGuardBranch()
412 bool Loop::isCanonical(ScalarEvolution &SE) const { in isCanonical()
432 static bool isBlockInLCSSAForm(const Loop &L, const BasicBlock &BB, in isBlockInLCSSAForm()
463 bool Loop::isLCSSAForm(const DominatorTree &DT, bool IgnoreTokens) const { in isLCSSAForm()
470 bool Loop::isRecursivelyLCSSAForm(const DominatorTree &DT, const LoopInfo &LI, in isRecursivelyLCSSAForm()
480 bool Loop::isLoopSimplifyForm() const { in isLoopSimplifyForm()
487 bool Loop::isSafeToClone() const { in isSafeToClone()
502 MDNode *Loop::getLoopID() const { in getLoopID()
526 void Loop::setLoopID(MDNode *LoopID) const { in setLoopID()
538 void Loop::setLoopAlreadyUnrolled() { in setLoopAlreadyUnrolled()
549 void Loop::setLoopMustProgress() { in setLoopMustProgress()
565 bool Loop::isAnnotatedParallel() const { in isAnnotatedParallel()
632 DebugLoc Loop::getStartLoc() const { return getLocRange().getStart(); } in getStartLoc()
634 Loop::LocRange Loop::getLocRange() const { in getLocRange()
667 std::string Loop::getLocStr() const { in getLocStr()
679 LLVM_DUMP_METHOD void Loop::dump() const { print(dbgs()); } in dump()
681 LLVM_DUMP_METHOD void Loop::dumpVerbose() const { in dumpVerbose()
694 Loop &Unloop;
703 DenseMap<Loop *, Loop *> SubloopParents;
710 UnloopUpdater(Loop *UL, LoopInfo *LInfo) : Unloop(*UL), LI(LInfo), DFS(UL) {} in UnloopUpdater()
719 Loop *getNearestLoop(BasicBlock *BB, Loop *BBLoop);
732 Loop *L = LI->getLoopFor(POI); in updateBlockParents()
733 Loop *NL = getNearestLoop(POI, L); in updateBlockParents()
761 Loop *L = LI->getLoopFor(*POI); in updateBlockParents()
762 Loop *NL = getNearestLoop(*POI, L); in updateBlockParents()
778 Loop *OuterParent = LI->getLoopFor(BB); in removeBlocksFromAncestors()
786 for (Loop *OldParent = Unloop.getParentLoop(); OldParent != OuterParent; in removeBlocksFromAncestors()
797 Loop *Subloop = *std::prev(Unloop.end()); in updateSubloopParents()
801 if (Loop *Parent = SubloopParents[Subloop]) in updateSubloopParents()
813 Loop *UnloopUpdater::getNearestLoop(BasicBlock *BB, Loop *BBLoop) { in getNearestLoop()
817 Loop *NearLoop = BBLoop; in getNearestLoop()
819 Loop *Subloop = nullptr; in getNearestLoop()
839 Loop *L = LI->getLoopFor(Succ); in getNearestLoop()
887 void LoopInfo::erase(Loop *Unloop) { in erase()
933 Loop *ParentLoop = Unloop->getParentLoop(); in erase()
934 for (Loop::iterator I = ParentLoop->begin();; ++I) { in erase()
953 const Loop *L = getLoopFor(I->getParent()); in wouldBeOutOfLoopUseRequiringLCSSA()
989 void llvm::printLoop(Loop &L, raw_ostream &OS, const std::string &Banner) { in printLoop()
1055 MDNode *llvm::findOptionMDForLoop(const Loop *TheLoop, StringRef Name) { in findOptionMDForLoop()
1065 llvm::findStringMetadataForLoop(const Loop *TheLoop, StringRef Name) { in findStringMetadataForLoop()
1079 std::optional<bool> llvm::getOptionalBoolLoopAttribute(const Loop *TheLoop, in getOptionalBoolLoopAttribute()
1097 bool llvm::getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name) { in getBooleanLoopAttribute()
1101 std::optional<int> llvm::getOptionalIntLoopAttribute(const Loop *TheLoop, in getOptionalIntLoopAttribute()
1115 int llvm::getIntLoopAttribute(const Loop *TheLoop, StringRef Name, in getIntLoopAttribute()
1120 CallBase *llvm::getLoopConvergenceHeart(const Loop *TheLoop) { in getLoopConvergenceHeart()
1140 bool llvm::isFinite(const Loop *L) { in isFinite()
1146 bool llvm::hasMustProgress(const Loop *L) { in hasMustProgress()
1150 bool llvm::isMustProgress(const Loop *L) { in isMustProgress()