Home
last modified time | relevance | path

Searched refs:getLoopLatch (Results 1 – 25 of 38) sorted by relevance

12

/freebsd-12.1/contrib/llvm/lib/Transforms/Scalar/
H A DLoopInterchange.cpp300 if (L->getLoopLatch() == nullptr || L->getLoopPredecessor() == nullptr) in getInductionVariable()
600 BasicBlock *OuterLoopLatch = OuterLoop->getLoopLatch(); in tightlyNested()
683 if (!L->getLoopLatch() || !L->getLoopPredecessor()) in findInductionAndReductions()
742 BasicBlock *InnerLoopLatch = InnerLoop->getLoopLatch(); in currentLimitations()
747 OuterLoop->getExitingBlock() != OuterLoop->getLoopLatch() || in currentLimitations()
749 !isa<BranchInst>(OuterLoop->getLoopLatch()->getTerminator())) { in currentLimitations()
956 if (OuterLoop->getLoopLatch()->getUniquePredecessor() == nullptr) in areLoopExitPHIsSupported()
1202 BasicBlock *OuterLatch = NewOuter->getLoopLatch(); in restructureLoops()
1268 BasicBlock *InnerLoopLatch = InnerLoop->getLoopLatch(); in splitInnerLoopLatch()
1384 BasicBlock *InnerLoopLatch = InnerLoop->getLoopLatch(); in adjustLoopBranches()
[all …]
H A DLoopSimplifyCFG.cpp246 DeleteCurrentLoop = !IsEdgeLive(L.getLoopLatch(), L.getHeader()); in analyze()
255 BlocksInLoopAfterFolding.insert(L.getLoopLatch()); in analyze()
468 assert(L.getLoopLatch() && "Should be single latch!"); in run()
554 if (!L.getLoopLatch()) in constantFoldTerminators()
H A DLoopVersioningLICM.cpp270 if (CurLoop->getExitingBlock() != CurLoop->getLoopLatch()) { in legalLoopStructure()
561 Instruction *I = VerLoop->getLoopLatch()->getTerminator(); in setNoAliasToLoop()
H A DIndVarSimplify.cpp1726 if (BasicBlock *LatchBlock = L->getLoopLatch()) { in createWideIV()
2016 BasicBlock *LatchBlock = L->getLoopLatch(); in getLoopTest()
2057 int Idx = Phi->getBasicBlockIndex(L->getLoopLatch()); in needsLFTR()
2170 assert(L->getLoopLatch()); in isLoopCounter()
2183 int LatchIdx = Phi->getBasicBlockIndex(L->getLoopLatch()); in isLoopCounter()
2205 BasicBlock *LatchBlock = L->getLoopLatch(); in FindLoopCounter()
2373 assert(L->getLoopLatch() && "Loop no longer in simplified form?"); in linearFunctionTestReplace()
2376 cast<Instruction>(IndVar->getIncomingValueForBlock(L->getLoopLatch())); in linearFunctionTestReplace()
2385 if (ExitingBB == L->getLoopLatch()) { in linearFunctionTestReplace()
H A DLoopUnrollAndJamPass.cpp289 BasicBlock *Latch = L->getLoopLatch(); in tryToUnrollAndJamLoop()
291 BasicBlock *SubLoopLatch = SubLoop->getLoopLatch(); in tryToUnrollAndJamLoop()
H A DLoopPredication.cpp644 BasicBlock *LoopLatch = L->getLoopLatch(); in parseLoopLatchICmp()
749 auto *LatchBlock = L->getLoopLatch(); in isLoopProfitableToPredicate()
H A DLoopUnrollPass.cpp402 PhiI->getIncomingValueForBlock(L->getLoopLatch()))) in analyzeLoopUnrollCost()
471 Iteration == 0 ? L->getLoopPreheader() : L->getLoopLatch()); in analyzeLoopUnrollCost()
1024 BasicBlock *ExitingBlock = L->getLoopLatch(); in tryToUnrollLoop()
H A DInductiveRangeCheckElimination.cpp390 if (BI->isUnconditional() || BI->getParent() == L->getLoopLatch()) in extractRangeChecksFromBranch()
753 BasicBlock *Latch = L.getLoopLatch(); in parseLoopStructure()
1140 cast<BasicBlock>(GetClonedValue(OriginalLoop.getLoopLatch())); in cloneLoop()
H A DLoopLoadElimination.cpp438 PHI->addIncoming(Cand.Store->getOperand(0), L->getLoopLatch()); in propagateStoredValueToLoadUsers()
H A DLoopStrengthReduce.cpp2346 BasicBlock *LatchBlock = L->getLoopLatch(); in OptimizeLoopTermCond()
2477 IVIncInsertPos = L->getLoopLatch()->getTerminator(); in OptimizeLoopTermCond()
3016 for (DomTreeNode *Rung = DT.getNode(L->getLoopLatch()); in CollectChains()
3058 dyn_cast<Instruction>(PN.getIncomingValueForBlock(L->getLoopLatch())); in CollectChains()
3151 InsertPt = L->getLoopLatch()->getTerminator(); in GenerateIVChain()
3195 Phi.getIncomingValueForBlock(L->getLoopLatch())); in GenerateIVChain()
3202 IRBuilder<> Builder(L->getLoopLatch()->getTerminator()); in GenerateIVChain()
4986 Inputs.push_back(L->getLoopLatch()->getTerminator()); in AdjustInsertPositionForExpand()
/freebsd-12.1/contrib/llvm/lib/Transforms/Utils/
H A DLoopUnrollPeel.cpp85 if (L->getLoopLatch() != L->getExitingBlock()) in canPeel()
109 assert(BackEdge == L->getLoopLatch() && "Wrong latch?"); in calculateIterationsToInvariance()
162 if (L.getLoopLatch() == BB) in countToEliminateCompares()
280 BasicBlock *BackEdge = L->getLoopLatch(); in computePeelCount()
402 BasicBlock *Latch = L->getLoopLatch(); in cloneLoopBlocks()
514 BasicBlock *Latch = L->getLoopLatch(); in peelLoop()
H A DLoopRotationUtils.cpp211 BasicBlock *OrigLatch = L->getLoopLatch(); in rotateLoop()
470 SplitLatchEdge |= L->getLoopLatch() == ExitPred; in rotateLoop()
495 assert(L->getLoopLatch() && "Invalid loop latch after loop rotation"); in rotateLoop()
594 BasicBlock *Latch = L->getLoopLatch(); in simplifyLoopLatch()
661 assert((!MadeChange || L->isLoopExiting(L->getLoopLatch())) && in processLoop()
H A DLoopUnrollAndJam.cpp57 BasicBlock *SubLoopLatch = SubLoop->getLoopLatch(); in partitionOuterLoopBlocks()
250 BasicBlock *LatchBlock = L->getLoopLatch(); in UnrollAndJamLoop()
257 SubLoop->getLoopLatch()->getTerminator()->getSuccessor(0)); in UnrollAndJamLoop()
730 BasicBlock *Latch = L->getLoopLatch(); in isSafeToUnrollAndJam()
733 BasicBlock *SubLoopLatch = SubLoop->getLoopLatch(); in isSafeToUnrollAndJam()
H A DLoopUnrollRuntime.cpp84 BasicBlock *Latch = L->getLoopLatch(); in ConnectProlog()
189 BasicBlock *Latch = L->getLoopLatch(); in ConnectEpilog()
309 BasicBlock *Latch = L->getLoopLatch(); in CloneLoopBlocks()
573 BasicBlock *Latch = L->getLoopLatch(); in UnrollRuntimeLoopRemainder()
H A DLoopSimplify.cpp535 BasicBlock *LoopLatch = L->getLoopLatch(); in simplifyOneLoop()
829 if (!L->getLoopPreheader() || !L->getLoopLatch()) {
H A DLoopUtils.cpp623 dyn_cast<BranchInst>(L->getLoopLatch()->getTerminator()); in getLoopEstimatedTripCount()
656 BasicBlock *InnerLoopLatch = InnerLoop->getLoopLatch(); in hasIterationCountInvariantInParent()
/freebsd-12.1/contrib/llvm/lib/CodeGen/
H A DMachineLoopInfo.cpp82 if (MachineBasicBlock *Latch = getLoopLatch()) { in findLoopControlBlock()
116 MachineBasicBlock *HB = L->getHeader(), *LB = L->getLoopLatch(); in findLoopPreheader()
/freebsd-12.1/contrib/llvm/lib/Transforms/Vectorize/
H A DLoopVectorizationLegality.cpp344 assert(Lp->getLoopLatch() && "Expected loop with a single latch."); in isUniformLoop()
359 BasicBlock *Latch = Lp->getLoopLatch(); in isUniformLoop()
581 AllowedExit.insert(Phi->getIncomingValueForBlock(TheLoop->getLoopLatch())); in addInductionPhi()
1027 if (Lp->getExitingBlock() != Lp->getLoopLatch()) { in canVectorizeLoopCFG()
H A DLoopVectorize.cpp1577 auto *LoopVectorLatch = LI->getLoopFor(LoopVectorBody)->getLoopLatch(); in createVectorIntOrFpInductionPHI()
2361 BasicBlock *Latch = L->getLoopLatch(); in createInductionVariable()
3370 auto *Latch = OrigLoop->getLoopLatch(); in fixFirstOrderRecurrence()
3546 BasicBlock *Latch = OrigLoop->getLoopLatch(); in fixReduction()
3651 Phi->getBasicBlockIndex(OrigLoop->getLoopLatch()); in fixReduction()
4164 LI->getLoopFor(LoopVectorBody)->getLoopLatch()); in updateAnalysis()
4271 auto *Latch = TheLoop->getLoopLatch(); in collectLoopScalars()
4472 BasicBlock *Latch = TheLoop->getLoopLatch(); in collectLoopUniforms()
5827 } else if (I->getParent() == TheLoop->getLoopLatch() || VF == 1) in getInstructionCost()
6201 BasicBlock *Latch = OrigLoop->getLoopLatch(); in collectTriviallyDeadInstructions()
[all …]
/freebsd-12.1/contrib/llvm/lib/Target/Hexagon/
H A DHexagonHardwareLoops.cpp409 MachineBasicBlock *Latch = L->getLoopLatch(); in findInductionRegister()
606 MachineBasicBlock *Latch = L->getLoopLatch(); in getLoopTripCount()
1223 if (ExitingBlock != L->getLoopLatch()) { in convertToHardwareLoop()
1609 MachineBasicBlock *Latch = L->getLoopLatch(); in fixupInductionVariable()
1857 MachineBasicBlock *Latch = L->getLoopLatch(); in createPreheaderForLoop()
/freebsd-12.1/contrib/llvm/lib/Target/ARM/
H A DARMParallelDSP.cpp180 if (Header != TheLoop->getLoopLatch()) { in runOnLoop()
464 const BasicBlock *Latch = TheLoop->getLoopLatch(); in MatchReductions()
/freebsd-12.1/contrib/llvm/lib/Analysis/
H A DIVUsers.cpp135 BasicBlock *LatchBlock = L->getLoopLatch(); in IVUseShouldUsePostIncValue()
H A DIVDescriptors.cpp678 auto *Latch = TheLoop->getLoopLatch(); in isFirstOrderRecurrence()
941 BasicBlock *Latch = L->getLoopLatch(); in getCastsForInductionPHI()
H A DLoopInfo.cpp196 return getLoopPreheader() && getLoopLatch() && hasDedicatedExits(); in isLoopSimplifyForm()
/freebsd-12.1/contrib/llvm/lib/Target/PowerPC/
H A DPPCLoopPreIncPrep.cpp199 BasicBlock *LatchBB = L->getLoopLatch(); in alreadyPrepared()

12