Lines Matching full:latch
88 "latch (completely or otherwise)");
186 /// PN = PHI [I, Latch], [CI, PreHeader]
192 /// PN = PHI [I2, Latch], [CI, PreHeader]
199 /// PN = PHI [I2, Latch], [NewPN, PreHeader]
443 /// can only fail when the loop's latch block is not terminated by a conditional
448 /// epilogue that ensures the latch has a trip multiple of Count. UnrollLoop
571 // (1) single latch; and in UnrollLoop()
572 // (2a) latch is unconditional; or in UnrollLoop()
573 // (2b) latch is conditional and is an exiting block in UnrollLoop()
583 dbgs() << "Can't unroll; a conditional latch must exit the loop"); in UnrollLoop()
714 // latch. This is a reasonable default placement if we don't have block in UnrollLoop()
837 assert(Latches.back() == LastValueMap[LatchBlock] && "bad last latch"); in UnrollLoop()
864 // nearest common dominator of the previous idom and the first latch, in UnrollLoop()
909 // If runtime unrolling inserts a prologue, information about non-latch in UnrollLoop()
940 // We don't fold known-exiting branches for non-latch exits here, in UnrollLoop()
977 // When completely unrolling, the last latch becomes unreachable. in UnrollLoop()
980 // latch. Hence if the latch is not exiting it must directly branch back to in UnrollLoop()
987 for (BasicBlock *Latch : Latches) { in UnrollLoop()
988 BranchInst *Term = dyn_cast<BranchInst>(Latch->getTerminator()); in UnrollLoop()
990 (CompletelyUnroll && !LatchIsExiting && Latch == Latches.back())) && in UnrollLoop()
992 "unconditional latch"); in UnrollLoop()
1059 // loop's last loop latch is guaranteed to be in the outermost loop in UnrollLoop()