Lines Matching refs:SCEV

19 static bool isSafeDecreasingBound(const SCEV *Start, const SCEV *BoundSCEV,  in isSafeDecreasingBound()
20 const SCEV *Step, ICmpInst::Predicate Pred, in isSafeDecreasingBound()
50 const SCEV *StepPlusOne = SE.getAddExpr(Step, SE.getOne(Step->getType())); in isSafeDecreasingBound()
54 const SCEV *Limit = SE.getMinusSCEV(SE.getConstant(Min), StepPlusOne); in isSafeDecreasingBound()
56 const SCEV *MinusOne = in isSafeDecreasingBound()
65 static bool isSafeIncreasingBound(const SCEV *Start, const SCEV *BoundSCEV, in isSafeIncreasingBound()
66 const SCEV *Step, ICmpInst::Predicate Pred, in isSafeIncreasingBound()
94 const SCEV *StepMinusOne = SE.getMinusSCEV(Step, SE.getOne(Step->getType())); in isSafeIncreasingBound()
98 const SCEV *Limit = SE.getMinusSCEV(SE.getConstant(Max), StepMinusOne); in isSafeIncreasingBound()
109 static const SCEV *getNarrowestLatchMaxTakenCountEstimate(ScalarEvolution &SE, in getNarrowestLatchMaxTakenCountEstimate()
111 const SCEV *FromBlock = in getNarrowestLatchMaxTakenCountEstimate()
161 const SCEV *MaxBETakenCount = getNarrowestLatchMaxTakenCountEstimate(SE, L); in parseLoopStructure()
172 const SCEV *LeftSCEV = SE.getSCEV(LeftValue); in parseLoopStructure()
176 const SCEV *RightSCEV = SE.getSCEV(RightValue); in parseLoopStructure()
191 if (AR->getNoWrapFlags(SCEV::FlagNSW)) in parseLoopStructure()
201 const SCEV *ExtendedStart = SE.getSignExtendExpr(AR->getStart(), WideTy); in parseLoopStructure()
202 const SCEV *ExtendedStep = in parseLoopStructure()
213 return AR->getNoWrapFlags(SCEV::FlagNSW) != SCEV::FlagAnyWrap; in parseLoopStructure()
228 const SCEV *StepRec = IndVarBase->getStepRecurrence(SE); in parseLoopStructure()
243 const SCEV *StartNext = IndVarBase->getStart(); in parseLoopStructure()
244 const SCEV *Addend = SE.getNegativeSCEV(IndVarBase->getStepRecurrence(SE)); in parseLoopStructure()
245 const SCEV *IndVarStart = SE.getAddExpr(StartNext, Addend); in parseLoopStructure()
246 const SCEV *Step = SE.getSCEV(StepCI); in parseLoopStructure()
248 const SCEV *FixedRightSCEV = nullptr; in parseLoopStructure()
278 if (IndVarBase->getNoWrapFlags(SCEV::FlagNUW) && in parseLoopStructure()
342 if (IndVarBase->getNoWrapFlags(SCEV::FlagNUW) && in parseLoopStructure()
748 const SCEV *ExitPreLoopAtSCEV = nullptr; in run()
775 const SCEV *ExitMainLoopAtSCEV = nullptr; in run()