Lines Matching refs:Loop

43 template class llvm::LoopBase<BasicBlock, Loop>;
44 template class llvm::LoopInfoBase<BasicBlock, Loop>;
60 bool Loop::isLoopInvariant(const Value *V) const { in isLoopInvariant()
66 bool Loop::hasLoopInvariantOperands(const Instruction *I) const { in hasLoopInvariantOperands()
70 bool Loop::makeLoopInvariant(Value *V, bool &Changed, Instruction *InsertPt, in makeLoopInvariant()
77 bool Loop::makeLoopInvariant(Instruction *I, bool &Changed, in makeLoopInvariant()
120 bool Loop::getIncomingAndBackEdge(BasicBlock *&Incoming, in getIncomingAndBackEdge()
146 PHINode *Loop::getCanonicalInductionVariable() const { in getCanonicalInductionVariable()
170 ICmpInst *Loop::getLatchCmpInst() const { in getLatchCmpInst()
180 static Value *findFinalIVValue(const Loop &L, const PHINode &IndVar, in findFinalIVValue()
197 Optional<Loop::LoopBounds> Loop::LoopBounds::getBounds(const Loop &L, in getBounds()
226 using Direction = Loop::LoopBounds::Direction;
228 ICmpInst::Predicate Loop::LoopBounds::getCanonicalPredicate() const { in getCanonicalPredicate()
270 Direction Loop::LoopBounds::getDirection() const { in getDirection()
283 Optional<Loop::LoopBounds> Loop::getBounds(ScalarEvolution &SE) const { in getBounds()
290 PHINode *Loop::getInductionVariable(ScalarEvolution &SE) const { in getInductionVariable()
329 bool Loop::getInductionDescriptor(ScalarEvolution &SE, in getInductionDescriptor()
337 bool Loop::isAuxiliaryInductionVariable(PHINode &AuxIndVar, in isAuxiliaryInductionVariable()
363 BranchInst *Loop::getLoopGuardBranch() const { in getLoopGuardBranch()
407 bool Loop::isCanonical(ScalarEvolution &SE) const { in isCanonical()
427 static bool isBlockInLCSSAForm(const Loop &L, const BasicBlock &BB, in isBlockInLCSSAForm()
458 bool Loop::isLCSSAForm(const DominatorTree &DT, bool IgnoreTokens) const { in isLCSSAForm()
465 bool Loop::isRecursivelyLCSSAForm(const DominatorTree &DT, const LoopInfo &LI, in isRecursivelyLCSSAForm()
475 bool Loop::isLoopSimplifyForm() const { in isLoopSimplifyForm()
482 bool Loop::isSafeToClone() const { in isSafeToClone()
497 MDNode *Loop::getLoopID() const { in getLoopID()
521 void Loop::setLoopID(MDNode *LoopID) const { in setLoopID()
533 void Loop::setLoopAlreadyUnrolled() { in setLoopAlreadyUnrolled()
544 void Loop::setLoopMustProgress() { in setLoopMustProgress()
560 bool Loop::isAnnotatedParallel() const { in isAnnotatedParallel()
627 DebugLoc Loop::getStartLoc() const { return getLocRange().getStart(); } in getStartLoc()
629 Loop::LocRange Loop::getLocRange() const { in getLocRange()
663 LLVM_DUMP_METHOD void Loop::dump() const { print(dbgs()); } in dump()
665 LLVM_DUMP_METHOD void Loop::dumpVerbose() const { in dumpVerbose()
678 Loop &Unloop;
687 DenseMap<Loop *, Loop *> SubloopParents;
694 UnloopUpdater(Loop *UL, LoopInfo *LInfo) : Unloop(*UL), LI(LInfo), DFS(UL) {} in UnloopUpdater()
703 Loop *getNearestLoop(BasicBlock *BB, Loop *BBLoop);
716 Loop *L = LI->getLoopFor(POI); in updateBlockParents()
717 Loop *NL = getNearestLoop(POI, L); in updateBlockParents()
745 Loop *L = LI->getLoopFor(*POI); in updateBlockParents()
746 Loop *NL = getNearestLoop(*POI, L); in updateBlockParents()
762 Loop *OuterParent = LI->getLoopFor(BB); in removeBlocksFromAncestors()
770 for (Loop *OldParent = Unloop.getParentLoop(); OldParent != OuterParent; in removeBlocksFromAncestors()
781 Loop *Subloop = *std::prev(Unloop.end()); in updateSubloopParents()
785 if (Loop *Parent = SubloopParents[Subloop]) in updateSubloopParents()
797 Loop *UnloopUpdater::getNearestLoop(BasicBlock *BB, Loop *BBLoop) { in getNearestLoop()
801 Loop *NearLoop = BBLoop; in getNearestLoop()
803 Loop *Subloop = nullptr; in getNearestLoop()
824 Loop *L = LI->getLoopFor(*I); in getNearestLoop()
872 void LoopInfo::erase(Loop *Unloop) { in erase()
918 Loop *ParentLoop = Unloop->getParentLoop(); in erase()
919 for (Loop::iterator I = ParentLoop->begin();; ++I) { in erase()
939 const Loop *L = getLoopFor(I->getParent()); in wouldBeOutOfLoopUseRequiringLCSSA()
973 void llvm::printLoop(Loop &L, raw_ostream &OS, const std::string &Banner) { in printLoop()
1039 MDNode *llvm::findOptionMDForLoop(const Loop *TheLoop, StringRef Name) { in findOptionMDForLoop()
1048 Optional<const MDOperand *> llvm::findStringMetadataForLoop(const Loop *TheLoop, in findStringMetadataForLoop()
1063 Optional<bool> llvm::getOptionalBoolLoopAttribute(const Loop *TheLoop, in getOptionalBoolLoopAttribute()
1081 bool llvm::getBooleanLoopAttribute(const Loop *TheLoop, StringRef Name) { in getBooleanLoopAttribute()
1085 llvm::Optional<int> llvm::getOptionalIntLoopAttribute(const Loop *TheLoop, in getOptionalIntLoopAttribute()
1099 int llvm::getIntLoopAttribute(const Loop *TheLoop, StringRef Name, in getIntLoopAttribute()
1104 bool llvm::isFinite(const Loop *L) { in isFinite()
1110 bool llvm::hasMustProgress(const Loop *L) { in hasMustProgress()
1114 bool llvm::isMustProgress(const Loop *L) { in isMustProgress()