Lines Matching refs:Latch

4311     if (BasicBlock *Latch = L->getLoopLatch()) {  in rewrite()  local
4312 BranchInst *BI = dyn_cast<BranchInst>(Latch->getTerminator()); in rewrite()
6859 const BasicBlock *Latch = L->getLoopLatch(); in getExact() local
6861 if (!Latch) in getExact()
6870 assert(SE->DT.dominates(ENT.ExitingBlock, Latch) && in getExact()
7016 BasicBlock *Latch = L->getLoopLatch(); // may be NULL. in computeBackedgeTakenCount() local
7050 if (EL.MaxNotTaken != getCouldNotCompute() && Latch && in computeBackedgeTakenCount()
7051 DT.dominates(ExitBB, Latch)) { in computeBackedgeTakenCount()
7083 const BasicBlock *Latch = L->getLoopLatch(); in computeExitLimit() local
7084 if (!Latch || !DT.dominates(ExitingBlock, Latch)) in computeExitLimit()
7512 const BasicBlock *Latch = L->getLoopLatch(); in computeShiftCompareExitLimit() local
7513 if (!Latch) in computeShiftCompareExitLimit()
7575 Value *BEValue = PNOut->getIncomingValueForBlock(Latch); in computeShiftCompareExitLimit()
7831 BasicBlock *Latch = L->getLoopLatch(); in getConstantEvolutionLoopExitValue() local
7832 if (!Latch) in getConstantEvolutionLoopExitValue()
7836 if (auto *StartCST = getOtherIncomingValue(&PHI, Latch)) in getConstantEvolutionLoopExitValue()
7842 Value *BEValue = PN->getIncomingValueForBlock(Latch); in getConstantEvolutionLoopExitValue()
7881 Value *BEValue = PHI->getIncomingValueForBlock(Latch); in getConstantEvolutionLoopExitValue()
7911 BasicBlock *Latch = L->getLoopLatch(); in computeExitCountExhaustively() local
7912 assert(Latch && "Should follow from NumIncomingValues == 2!"); in computeExitCountExhaustively()
7915 if (auto *StartCST = getOtherIncomingValue(&PHI, Latch)) in computeExitCountExhaustively()
7954 Value *BEValue = PHI->getIncomingValueForBlock(Latch); in computeExitCountExhaustively()
9387 BasicBlock *Latch = L->getLoopLatch(); in isLoopBackedgeGuardedByCond() local
9388 if (!Latch) in isLoopBackedgeGuardedByCond()
9392 dyn_cast<BranchInst>(Latch->getTerminator()); in isLoopBackedgeGuardedByCond()
9408 const SCEV *LatchBECount = BETakenInfo.getExact(Latch, this); in isLoopBackedgeGuardedByCond()
9427 if (!DT.dominates(CI, Latch->getTerminator())) in isLoopBackedgeGuardedByCond()
9440 if (isImpliedViaGuard(Latch, Pred, LHS, RHS)) in isLoopBackedgeGuardedByCond()
9443 for (DomTreeNode *DTN = DT[Latch], *HeaderDTN = DT[L->getHeader()]; in isLoopBackedgeGuardedByCond()
9470 assert(DT.dominates(DominatingEdge, Latch) && "should be!"); in isLoopBackedgeGuardedByCond()
10008 auto *Latch = RLoop->getLoopLatch(); in isImpliedViaMerge() local
10009 assert(Latch && "Loop with AddRec with no latch?"); in isImpliedViaMerge()
10010 const SCEV *L2 = getSCEV(LPhi->getIncomingValueForBlock(Latch)); in isImpliedViaMerge()