Lines Matching refs:LatchCheck

263   LoopICmp LatchCheck;  member in __anon082da8af0111::LoopPredication
292 Optional<Value *> widenICmpRangeCheckIncrementingLoop(LoopICmp LatchCheck,
296 Optional<Value *> widenICmpRangeCheckDecrementingLoop(LoopICmp LatchCheck,
445 const LoopICmp LatchCheck, in isSafeToTruncateWideIVType() argument
449 assert(DL.getTypeSizeInBits(LatchCheck.IV->getType()).getFixedSize() > in isSafeToTruncateWideIVType()
455 auto *Limit = dyn_cast<SCEVConstant>(LatchCheck.Limit); in isSafeToTruncateWideIVType()
456 auto *Start = dyn_cast<SCEVConstant>(LatchCheck.IV->getStart()); in isSafeToTruncateWideIVType()
464 if (!SE.getMonotonicPredicateType(LatchCheck.IV, LatchCheck.Pred)) in isSafeToTruncateWideIVType()
480 const LoopICmp LatchCheck, in generateLoopLatchCheck() argument
483 auto *LatchType = LatchCheck.IV->getType(); in generateLoopLatchCheck()
485 return LatchCheck; in generateLoopLatchCheck()
490 if (!isSafeToTruncateWideIVType(DL, SE, LatchCheck, RangeCheckType)) in generateLoopLatchCheck()
495 NewLatchCheck.Pred = LatchCheck.Pred; in generateLoopLatchCheck()
497 SE.getTruncateExpr(LatchCheck.IV, RangeCheckType)); in generateLoopLatchCheck()
500 NewLatchCheck.Limit = SE.getTruncateExpr(LatchCheck.Limit, RangeCheckType); in generateLoopLatchCheck()
572 LoopICmp LatchCheck, LoopICmp RangeCheck, in widenICmpRangeCheckIncrementingLoop() argument
583 const SCEV *LatchStart = LatchCheck.IV->getStart(); in widenICmpRangeCheckIncrementingLoop()
584 const SCEV *LatchLimit = LatchCheck.Limit; in widenICmpRangeCheckIncrementingLoop()
606 ICmpInst::getFlippedStrictnessPredicate(LatchCheck.Pred); in widenICmpRangeCheckIncrementingLoop()
621 LoopICmp LatchCheck, LoopICmp RangeCheck, in widenICmpRangeCheckDecrementingLoop() argument
626 const SCEV *LatchStart = LatchCheck.IV->getStart(); in widenICmpRangeCheckDecrementingLoop()
627 const SCEV *LatchLimit = LatchCheck.Limit; in widenICmpRangeCheckDecrementingLoop()
645 auto *PostDecLatchCheckIV = LatchCheck.IV->getPostIncExpr(*SE); in widenICmpRangeCheckDecrementingLoop()
658 ICmpInst::getFlippedStrictnessPredicate(LatchCheck.Pred); in widenICmpRangeCheckDecrementingLoop()
718 auto CurrLatchCheckOpt = generateLoopLatchCheck(*DL, *SE, LatchCheck, Ty); in widenICmpRangeCheck()
1282 LatchCheck = *LatchCheckOpt; in runOnLoop()
1285 LLVM_DEBUG(LatchCheck.dump()); in runOnLoop()