Lines Matching refs:Latch
5668 BasicBlock *Latch = L->getLoopLatch(); // may be NULL. in computeBackedgeTakenCount() local
5700 if (EL.Max != getCouldNotCompute() && Latch && in computeBackedgeTakenCount()
5701 DT.dominates(ExitBB, Latch)) { in computeBackedgeTakenCount()
6149 const BasicBlock *Latch = L->getLoopLatch(); in computeShiftCompareExitLimit() local
6150 if (!Latch) in computeShiftCompareExitLimit()
6212 Value *BEValue = PNOut->getIncomingValueForBlock(Latch); in computeShiftCompareExitLimit()
6467 BasicBlock *Latch = L->getLoopLatch(); in getConstantEvolutionLoopExitValue() local
6468 if (!Latch) in getConstantEvolutionLoopExitValue()
6474 auto *StartCST = getOtherIncomingValue(PHI, Latch); in getConstantEvolutionLoopExitValue()
6481 Value *BEValue = PN->getIncomingValueForBlock(Latch); in getConstantEvolutionLoopExitValue()
6520 Value *BEValue = PHI->getIncomingValueForBlock(Latch); in getConstantEvolutionLoopExitValue()
6550 BasicBlock *Latch = L->getLoopLatch(); in computeExitCountExhaustively() local
6551 assert(Latch && "Should follow from NumIncomingValues == 2!"); in computeExitCountExhaustively()
6557 auto *StartCST = getOtherIncomingValue(PHI, Latch); in computeExitCountExhaustively()
6597 Value *BEValue = PHI->getIncomingValueForBlock(Latch); in computeExitCountExhaustively()
7880 BasicBlock *Latch = L->getLoopLatch(); in isLoopBackedgeGuardedByCond() local
7881 if (!Latch) in isLoopBackedgeGuardedByCond()
7885 dyn_cast<BranchInst>(Latch->getTerminator()); in isLoopBackedgeGuardedByCond()
7901 const SCEV *LatchBECount = BETakenInfo.getExact(Latch, this); in isLoopBackedgeGuardedByCond()
7920 if (!DT.dominates(CI, Latch->getTerminator())) in isLoopBackedgeGuardedByCond()
7933 if (isImpliedViaGuard(Latch, Pred, LHS, RHS)) in isLoopBackedgeGuardedByCond()
7936 for (DomTreeNode *DTN = DT[Latch], *HeaderDTN = DT[L->getHeader()]; in isLoopBackedgeGuardedByCond()
7964 assert(DT.dominates(DominatingEdge, Latch) && "should be!"); in isLoopBackedgeGuardedByCond()