Home
last modified time | relevance | path

Searched refs:BoundSCEV (Results 1 – 4 of 4) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopBoundSplit.cpp45 const SCEV *BoundSCEV = nullptr; member
57 const SCEV *BoundSCEV = SE.getSCEV(Cond.BoundValue); in analyzeICmp() local
59 const SCEVAddRecExpr *RHSAddRecSCEV = dyn_cast<SCEVAddRecExpr>(BoundSCEV); in analyzeICmp()
63 std::swap(AddRecSCEV, BoundSCEV); in analyzeICmp()
68 Cond.BoundSCEV = BoundSCEV; in analyzeICmp()
87 Cond.BoundSCEV = ExitCount; in calculateUpperBound()
102 dyn_cast<IntegerType>(Cond.BoundSCEV->getType())) { in calculateUpperBound()
111 if (SE.isKnownPredicate(Pred, Cond.BoundSCEV, MaxSCEV)) { in calculateUpperBound()
113 SE.getAddExpr(Cond.BoundSCEV, SE.getOne(BoundSCEVIntType)); in calculateUpperBound()
114 Cond.BoundSCEV = BoundPlusOneSCEV; in calculateUpperBound()
[all …]
H A DInductiveRangeCheckElimination.cpp791 isSafeDecreasingBound(const SCEV * Start,const SCEV * BoundSCEV,const SCEV * Step,ICmpInst::Predicate Pred,unsigned LatchBrExitIdx,Loop * L,ScalarEvolution & SE) isSafeDecreasingBound() argument
840 isSafeIncreasingBound(const SCEV * Start,const SCEV * BoundSCEV,const SCEV * Step,ICmpInst::Predicate Pred,unsigned LatchBrExitIdx,Loop * L,ScalarEvolution & SE) isSafeIncreasingBound() argument
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DLoopConstrainer.cpp19 static bool isSafeDecreasingBound(const SCEV *Start, const SCEV *BoundSCEV, in isSafeDecreasingBound() argument
27 if (!SE.isAvailableAtLoopEntry(BoundSCEV, L)) in isSafeDecreasingBound()
35 LLVM_DEBUG(dbgs() << "BoundSCEV: " << *BoundSCEV << "\n"); in isSafeDecreasingBound()
46 auto BoundLG = SE.applyLoopGuards(BoundSCEV, L); in isSafeDecreasingBound()
54 unsigned BitWidth = cast<IntegerType>(BoundSCEV->getType())->getBitWidth(); in isSafeDecreasingBound()
68 static bool isSafeIncreasingBound(const SCEV *Start, const SCEV *BoundSCEV, in isSafeIncreasingBound() argument
76 if (!SE.isAvailableAtLoopEntry(BoundSCEV, L)) in isSafeIncreasingBound()
82 LLVM_DEBUG(dbgs() << "BoundSCEV: " << *BoundSCEV << "\n"); in isSafeIncreasingBound()
93 auto BoundLG = SE.applyLoopGuards(BoundSCEV, L); in isSafeIncreasingBound()
101 unsigned BitWidth = cast<IntegerType>(BoundSCEV->getType())->getBitWidth(); in isSafeIncreasingBound()
H A DLoopPeel.cpp358 [&](unsigned &PeelCount, const SCEV *&IterVal, const SCEV *BoundSCEV, in countToEliminateCompares()
361 SE.isKnownPredicate(Pred, IterVal, BoundSCEV)) { in countToEliminateCompares()
366 BoundSCEV); in countToEliminateCompares()
454 const SCEV *BoundSCEV, *IterSCEV; in countToEliminateCompares() local
456 BoundSCEV = SE.getSCEV(LHS); in countToEliminateCompares()
459 BoundSCEV = SE.getSCEV(RHS); in countToEliminateCompares()
484 if (!PeelWhilePredicateIsKnown(NewPeelCount, IterVal, BoundSCEV, Step, in countToEliminateCompares()