LLVM  12.0.0git
llvm::ScalarEvolution Member List

This is the complete list of members for llvm::ScalarEvolution, including all inherited members.

BlockDisposition enum namellvm::ScalarEvolution
clearFlags(SCEV::NoWrapFlags Flags, SCEV::NoWrapFlags OffFlags)llvm::ScalarEvolutioninlinestatic
collectParametricTerms(const SCEV *Expr, SmallVectorImpl< const SCEV *> &Terms)llvm::ScalarEvolution
computeAccessFunctions(const SCEV *Expr, SmallVectorImpl< const SCEV *> &Subscripts, SmallVectorImpl< const SCEV *> &Sizes)llvm::ScalarEvolution
ConstantMaximum enum valuellvm::ScalarEvolution
containsAddRecurrence(const SCEV *S)llvm::ScalarEvolution
convertSCEVToAddRecWithPredicates(const SCEV *S, const Loop *L, SmallPtrSetImpl< const SCEVPredicate *> &Preds)llvm::ScalarEvolution
createAddRecFromPHIWithCasts(const SCEVUnknown *SymbolicPHI)llvm::ScalarEvolution
delinearize(const SCEV *Expr, SmallVectorImpl< const SCEV *> &Subscripts, SmallVectorImpl< const SCEV *> &Sizes, const SCEV *ElementSize)llvm::ScalarEvolution
DoesNotDominateBlock enum valuellvm::ScalarEvolution
dominates(const SCEV *S, const BasicBlock *BB)llvm::ScalarEvolution
DominatesBlock enum valuellvm::ScalarEvolution
eraseValueFromMap(Value *V)llvm::ScalarEvolution
Exact enum valuellvm::ScalarEvolution
ExitCountKind enum namellvm::ScalarEvolution
findArrayDimensions(SmallVectorImpl< const SCEV *> &Terms, SmallVectorImpl< const SCEV *> &Sizes, const SCEV *ElementSize)llvm::ScalarEvolution
forgetAllLoops()llvm::ScalarEvolution
forgetLoop(const Loop *L)llvm::ScalarEvolution
forgetLoopDispositions(const Loop *L)llvm::ScalarEvolution
forgetTopmostLoop(const Loop *L)llvm::ScalarEvolution
forgetValue(Value *V)llvm::ScalarEvolution
getAddExpr(SmallVectorImpl< const SCEV *> &Ops, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolution
getAddExpr(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolutioninline
getAddExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolutioninline
getAddRecExpr(const SCEV *Start, const SCEV *Step, const Loop *L, SCEV::NoWrapFlags Flags)llvm::ScalarEvolution
getAddRecExpr(SmallVectorImpl< const SCEV *> &Operands, const Loop *L, SCEV::NoWrapFlags Flags)llvm::ScalarEvolution
getAddRecExpr(const SmallVectorImpl< const SCEV *> &Operands, const Loop *L, SCEV::NoWrapFlags Flags)llvm::ScalarEvolutioninline
getAnyExtendExpr(const SCEV *Op, Type *Ty)llvm::ScalarEvolution
getBackedgeTakenCount(const Loop *L, ExitCountKind Kind=Exact)llvm::ScalarEvolution
getBlockDisposition(const SCEV *S, const BasicBlock *BB)llvm::ScalarEvolution
getConstant(ConstantInt *V)llvm::ScalarEvolution
getConstant(const APInt &Val)llvm::ScalarEvolution
getConstant(Type *Ty, uint64_t V, bool isSigned=false)llvm::ScalarEvolution
getConstantMaxBackedgeTakenCount(const Loop *L)llvm::ScalarEvolutioninline
getContext() constllvm::ScalarEvolutioninline
getCouldNotCompute()llvm::ScalarEvolution
getDataLayout() constllvm::ScalarEvolutioninline
getEffectiveSCEVType(Type *Ty) constllvm::ScalarEvolution
getElementSize(Instruction *Inst)llvm::ScalarEvolution
getEqualPredicate(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getExitCount(const Loop *L, BasicBlock *ExitingBlock, ExitCountKind Kind=Exact)llvm::ScalarEvolution
getGEPExpr(GEPOperator *GEP, const SmallVectorImpl< const SCEV *> &IndexExprs)llvm::ScalarEvolution
getIndexExpressionsFromGEP(const GetElementPtrInst *GEP, SmallVectorImpl< const SCEV *> &Subscripts, SmallVectorImpl< int > &Sizes)llvm::ScalarEvolution
getLoopDisposition(const SCEV *S, const Loop *L)llvm::ScalarEvolution
getMinMaxExpr(unsigned Kind, SmallVectorImpl< const SCEV *> &Operands)llvm::ScalarEvolution
GetMinTrailingZeros(const SCEV *S)llvm::ScalarEvolution
getMinusSCEV(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolution
getMulExpr(SmallVectorImpl< const SCEV *> &Ops, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolution
getMulExpr(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolutioninline
getMulExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0)llvm::ScalarEvolutioninline
getNegativeSCEV(const SCEV *V, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap)llvm::ScalarEvolution
getNoopOrAnyExtend(const SCEV *V, Type *Ty)llvm::ScalarEvolution
getNoopOrSignExtend(const SCEV *V, Type *Ty)llvm::ScalarEvolution
getNoopOrZeroExtend(const SCEV *V, Type *Ty)llvm::ScalarEvolution
getNotSCEV(const SCEV *V)llvm::ScalarEvolution
getOffsetOfExpr(Type *IntTy, StructType *STy, unsigned FieldNo)llvm::ScalarEvolution
getOne(Type *Ty)llvm::ScalarEvolutioninline
getPointerBase(const SCEV *V)llvm::ScalarEvolution
getPredicatedBackedgeTakenCount(const Loop *L, SCEVUnionPredicate &Predicates)llvm::ScalarEvolution
getSCEV(Value *V)llvm::ScalarEvolution
getSCEVAtScope(const SCEV *S, const Loop *L)llvm::ScalarEvolution
getSCEVAtScope(Value *V, const Loop *L)llvm::ScalarEvolution
getSignedRange(const SCEV *S)llvm::ScalarEvolutioninline
getSignedRangeMax(const SCEV *S)llvm::ScalarEvolutioninline
getSignedRangeMin(const SCEV *S)llvm::ScalarEvolutioninline
getSignExtendExpr(const SCEV *Op, Type *Ty, unsigned Depth=0)llvm::ScalarEvolution
getSizeOfExpr(Type *IntTy, Type *AllocTy)llvm::ScalarEvolution
getSmallConstantMaxTripCount(const Loop *L)llvm::ScalarEvolution
getSmallConstantTripCount(const Loop *L)llvm::ScalarEvolution
getSmallConstantTripCount(const Loop *L, BasicBlock *ExitingBlock)llvm::ScalarEvolution
getSmallConstantTripMultiple(const Loop *L)llvm::ScalarEvolution
getSmallConstantTripMultiple(const Loop *L, BasicBlock *ExitingBlock)llvm::ScalarEvolution
getSMaxExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getSMaxExpr(SmallVectorImpl< const SCEV *> &Operands)llvm::ScalarEvolution
getSMinExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getSMinExpr(SmallVectorImpl< const SCEV *> &Operands)llvm::ScalarEvolution
getTruncateExpr(const SCEV *Op, Type *Ty, unsigned Depth=0)llvm::ScalarEvolution
getTruncateOrNoop(const SCEV *V, Type *Ty)llvm::ScalarEvolution
getTruncateOrSignExtend(const SCEV *V, Type *Ty, unsigned Depth=0)llvm::ScalarEvolution
getTruncateOrZeroExtend(const SCEV *V, Type *Ty, unsigned Depth=0)llvm::ScalarEvolution
getTypeSizeInBits(Type *Ty) constllvm::ScalarEvolution
getUDivExactExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUDivExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUMaxExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUMaxExpr(SmallVectorImpl< const SCEV *> &Operands)llvm::ScalarEvolution
getUMaxFromMismatchedTypes(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUMinExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUMinExpr(SmallVectorImpl< const SCEV *> &Operands)llvm::ScalarEvolution
getUMinFromMismatchedTypes(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getUMinFromMismatchedTypes(SmallVectorImpl< const SCEV *> &Ops)llvm::ScalarEvolution
getUnknown(Value *V)llvm::ScalarEvolution
getUnsignedRange(const SCEV *S)llvm::ScalarEvolutioninline
getUnsignedRangeMax(const SCEV *S)llvm::ScalarEvolutioninline
getUnsignedRangeMin(const SCEV *S)llvm::ScalarEvolutioninline
getURemExpr(const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
getWiderType(Type *Ty1, Type *Ty2) constllvm::ScalarEvolution
getWrapPredicate(const SCEVAddRecExpr *AR, SCEVWrapPredicate::IncrementWrapFlags AddedFlags)llvm::ScalarEvolution
getZero(Type *Ty)llvm::ScalarEvolutioninline
getZeroExtendExpr(const SCEV *Op, Type *Ty, unsigned Depth=0)llvm::ScalarEvolution
hasComputableLoopEvolution(const SCEV *S, const Loop *L)llvm::ScalarEvolution
hasLoopInvariantBackedgeTakenCount(const Loop *L)llvm::ScalarEvolution
hasOperand(const SCEV *S, const SCEV *Op) constllvm::ScalarEvolution
invalidate(Function &F, const PreservedAnalyses &PA, FunctionAnalysisManager::Invalidator &Inv)llvm::ScalarEvolution
isAvailableAtLoopEntry(const SCEV *S, const Loop *L)llvm::ScalarEvolution
isBackedgeTakenCountMaxOrZero(const Loop *L)llvm::ScalarEvolution
isKnownNegative(const SCEV *S)llvm::ScalarEvolution
isKnownNonNegative(const SCEV *S)llvm::ScalarEvolution
isKnownNonPositive(const SCEV *S)llvm::ScalarEvolution
isKnownNonZero(const SCEV *S)llvm::ScalarEvolution
isKnownOnEveryIteration(ICmpInst::Predicate Pred, const SCEVAddRecExpr *LHS, const SCEV *RHS)llvm::ScalarEvolution
isKnownPositive(const SCEV *S)llvm::ScalarEvolution
isKnownPredicate(ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
isKnownViaInduction(ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
isLoopBackedgeGuardedByCond(const Loop *L, ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
isLoopEntryGuardedByCond(const Loop *L, ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS)llvm::ScalarEvolution
isLoopInvariant(const SCEV *S, const Loop *L)llvm::ScalarEvolution
isLoopInvariantPredicate(ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS, const Loop *L, ICmpInst::Predicate &InvariantPred, const SCEV *&InvariantLHS, const SCEV *&InvariantRHS)llvm::ScalarEvolution
isMonotonicPredicate(const SCEVAddRecExpr *LHS, ICmpInst::Predicate Pred, bool &Increasing)llvm::ScalarEvolution
isSCEVable(Type *Ty) constllvm::ScalarEvolution
LoopComputable enum valuellvm::ScalarEvolution
LoopDisposition enum namellvm::ScalarEvolution
LoopInvariant enum valuellvm::ScalarEvolution
LoopVariant enum valuellvm::ScalarEvolution
maskFlags(SCEV::NoWrapFlags Flags, int Mask)llvm::ScalarEvolutioninlinestatic
print(raw_ostream &OS) constllvm::ScalarEvolution
properlyDominates(const SCEV *S, const BasicBlock *BB)llvm::ScalarEvolution
ProperlyDominatesBlock enum valuellvm::ScalarEvolution
rewriteUsingPredicate(const SCEV *S, const Loop *L, SCEVUnionPredicate &A)llvm::ScalarEvolution
ScalarEvolution(Function &F, TargetLibraryInfo &TLI, AssumptionCache &AC, DominatorTree &DT, LoopInfo &LI)llvm::ScalarEvolution
ScalarEvolution(ScalarEvolution &&Arg)llvm::ScalarEvolution
ScalarEvolutionsTest classllvm::ScalarEvolutionfriend
SCEVCallbackVH classllvm::ScalarEvolutionfriend
SCEVExpander classllvm::ScalarEvolutionfriend
SCEVUnknown classllvm::ScalarEvolutionfriend
setFlags(SCEV::NoWrapFlags Flags, SCEV::NoWrapFlags OnFlags)llvm::ScalarEvolutioninlinestatic
SimplifyICmpOperands(ICmpInst::Predicate &Pred, const SCEV *&LHS, const SCEV *&RHS, unsigned Depth=0)llvm::ScalarEvolution
SplitIntoInitAndPostInc(const Loop *L, const SCEV *S)llvm::ScalarEvolution
verify() constllvm::ScalarEvolution
~ScalarEvolution()llvm::ScalarEvolution