|
LLVM 22.0.0git
|
This is the complete list of members for llvm::ScalarEvolution, including all inherited members.
| applyLoopGuards(const SCEV *Expr, const Loop *L) | llvm::ScalarEvolution | |
| applyLoopGuards(const SCEV *Expr, const LoopGuards &Guards) | llvm::ScalarEvolution | |
| BlockDisposition enum name | llvm::ScalarEvolution | |
| canReuseInstruction(const SCEV *S, Instruction *I, SmallVectorImpl< Instruction * > &DropPoisonGeneratingInsts) | llvm::ScalarEvolution | |
| clearFlags(SCEV::NoWrapFlags Flags, SCEV::NoWrapFlags OffFlags) | llvm::ScalarEvolution | inlinestatic |
| computeConstantDifference(const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| computeExitLimitFromCond(const Loop *L, Value *ExitCond, bool ExitIfTrue, bool ControlsOnlyExit, bool AllowPredicates=false) | llvm::ScalarEvolution | |
| ConstantMaximum enum value | llvm::ScalarEvolution | |
| containsAddRecurrence(const SCEV *S) | llvm::ScalarEvolution | |
| containsErasedValue(const SCEV *S) const | llvm::ScalarEvolution | |
| containsUndefs(const SCEV *S) const | llvm::ScalarEvolution | |
| convertSCEVToAddRecWithPredicates(const SCEV *S, const Loop *L, SmallVectorImpl< const SCEVPredicate * > &Preds) | llvm::ScalarEvolution | |
| createAddRecFromPHIWithCasts(const SCEVUnknown *SymbolicPHI) | llvm::ScalarEvolution | |
| DoesNotDominateBlock enum value | llvm::ScalarEvolution | |
| dominates(const SCEV *S, const BasicBlock *BB) | llvm::ScalarEvolution | |
| DominatesBlock enum value | llvm::ScalarEvolution | |
| evaluatePredicate(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| evaluatePredicateAt(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS, const Instruction *CtxI) | llvm::ScalarEvolution | |
| Exact enum value | llvm::ScalarEvolution | |
| ExitCountKind enum name | llvm::ScalarEvolution | |
| forgetAllLoops() | llvm::ScalarEvolution | |
| forgetBlockAndLoopDispositions(Value *V=nullptr) | llvm::ScalarEvolution | |
| forgetLcssaPhiWithNewPredecessor(Loop *L, PHINode *V) | llvm::ScalarEvolution | |
| forgetLoop(const Loop *L) | llvm::ScalarEvolution | |
| forgetLoopDispositions() | llvm::ScalarEvolution | |
| forgetTopmostLoop(const Loop *L) | llvm::ScalarEvolution | |
| forgetValue(Value *V) | llvm::ScalarEvolution | |
| getAbsExpr(const SCEV *Op, bool IsNSW) | 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::ScalarEvolution | inline |
| getAddExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0) | llvm::ScalarEvolution | inline |
| 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::ScalarEvolution | inline |
| 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 | |
| getCastExpr(SCEVTypes Kind, const SCEV *Op, Type *Ty) | llvm::ScalarEvolution | |
| getComparePredicate(ICmpInst::Predicate Pred, const SCEV *LHS, const SCEV *RHS) | 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::ScalarEvolution | inline |
| getConstantMultiple(const SCEV *S, const Instruction *CtxI=nullptr) | llvm::ScalarEvolution | |
| getContext() const | llvm::ScalarEvolution | inline |
| getCouldNotCompute() | llvm::ScalarEvolution | |
| getDataLayout() const | llvm::ScalarEvolution | inline |
| getEffectiveSCEVType(Type *Ty) const | llvm::ScalarEvolution | |
| getElementCount(Type *Ty, ElementCount EC, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap) | llvm::ScalarEvolution | |
| getElementSize(Instruction *Inst) | llvm::ScalarEvolution | |
| getEqualPredicate(const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| getExistingSCEV(Value *V) | llvm::ScalarEvolution | |
| getExitCount(const Loop *L, const BasicBlock *ExitingBlock, ExitCountKind Kind=Exact) | llvm::ScalarEvolution | |
| getGEPExpr(GEPOperator *GEP, ArrayRef< const SCEV * > IndexExprs) | llvm::ScalarEvolution | |
| getGEPExpr(const SCEV *BaseExpr, ArrayRef< const SCEV * > IndexExprs, Type *SrcElementTy, GEPNoWrapFlags NW=GEPNoWrapFlags::none()) | llvm::ScalarEvolution | |
| getLoopDisposition(const SCEV *S, const Loop *L) | llvm::ScalarEvolution | |
| getLoopInvariantExitCondDuringFirstIterations(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS, const Loop *L, const Instruction *CtxI, const SCEV *MaxIter) | llvm::ScalarEvolution | |
| getLoopInvariantExitCondDuringFirstIterationsImpl(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS, const Loop *L, const Instruction *CtxI, const SCEV *MaxIter) | llvm::ScalarEvolution | |
| getLoopInvariantPredicate(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS, const Loop *L, const Instruction *CtxI=nullptr) | llvm::ScalarEvolution | |
| getLosslessPtrToIntExpr(const SCEV *Op, unsigned Depth=0) | llvm::ScalarEvolution | |
| getMinMaxExpr(SCEVTypes Kind, SmallVectorImpl< const SCEV * > &Operands) | llvm::ScalarEvolution | |
| getMinTrailingZeros(const SCEV *S, const Instruction *CtxI=nullptr) | llvm::ScalarEvolution | |
| getMinusOne(Type *Ty) | llvm::ScalarEvolution | inline |
| getMinusSCEV(const SCEV *LHS, const SCEV *RHS, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0) | llvm::ScalarEvolution | |
| getMonotonicPredicateType(const SCEVAddRecExpr *LHS, ICmpInst::Predicate Pred) | 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::ScalarEvolution | inline |
| getMulExpr(const SCEV *Op0, const SCEV *Op1, const SCEV *Op2, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap, unsigned Depth=0) | llvm::ScalarEvolution | inline |
| getNegativeSCEV(const SCEV *V, SCEV::NoWrapFlags Flags=SCEV::FlagAnyWrap) | llvm::ScalarEvolution | |
| getNonZeroConstantMultiple(const SCEV *S) | 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::ScalarEvolution | inline |
| getPointerBase(const SCEV *V) | llvm::ScalarEvolution | |
| getPoisonGeneratingValues(SmallPtrSetImpl< const Value * > &Result, const SCEV *S) | llvm::ScalarEvolution | |
| getPowerOfTwo(Type *Ty, unsigned Power) | llvm::ScalarEvolution | inline |
| getPredicatedBackedgeTakenCount(const Loop *L, SmallVectorImpl< const SCEVPredicate * > &Predicates) | llvm::ScalarEvolution | |
| getPredicatedConstantMaxBackedgeTakenCount(const Loop *L, SmallVectorImpl< const SCEVPredicate * > &Predicates) | llvm::ScalarEvolution | |
| getPredicatedExitCount(const Loop *L, const BasicBlock *ExitingBlock, SmallVectorImpl< const SCEVPredicate * > *Predicates, ExitCountKind Kind=Exact) | llvm::ScalarEvolution | |
| getPredicatedSymbolicMaxBackedgeTakenCount(const Loop *L, SmallVectorImpl< const SCEVPredicate * > &Predicates) | llvm::ScalarEvolution | |
| getPtrToIntExpr(const SCEV *Op, Type *Ty) | llvm::ScalarEvolution | |
| getSCEV(Value *V) | llvm::ScalarEvolution | |
| getSCEVAtScope(const SCEV *S, const Loop *L) | llvm::ScalarEvolution | |
| getSCEVAtScope(Value *V, const Loop *L) | llvm::ScalarEvolution | |
| getSequentialMinMaxExpr(SCEVTypes Kind, SmallVectorImpl< const SCEV * > &Operands) | llvm::ScalarEvolution | |
| getSignedRange(const SCEV *S) | llvm::ScalarEvolution | inline |
| getSignedRangeMax(const SCEV *S) | llvm::ScalarEvolution | inline |
| getSignedRangeMin(const SCEV *S) | llvm::ScalarEvolution | inline |
| getSignExtendExpr(const SCEV *Op, Type *Ty, unsigned Depth=0) | llvm::ScalarEvolution | |
| getSignExtendExprImpl(const SCEV *Op, Type *Ty, unsigned Depth=0) | llvm::ScalarEvolution | |
| getSizeOfExpr(Type *IntTy, TypeSize Size) | llvm::ScalarEvolution | |
| getSizeOfExpr(Type *IntTy, Type *AllocTy) | llvm::ScalarEvolution | |
| getSmallConstantMaxTripCount(const Loop *L, SmallVectorImpl< const SCEVPredicate * > *Predicates=nullptr) | llvm::ScalarEvolution | |
| getSmallConstantTripCount(const Loop *L) | llvm::ScalarEvolution | |
| getSmallConstantTripCount(const Loop *L, const BasicBlock *ExitingBlock) | llvm::ScalarEvolution | |
| getSmallConstantTripMultiple(const Loop *L, const SCEV *ExitCount) | llvm::ScalarEvolution | |
| getSmallConstantTripMultiple(const Loop *L) | llvm::ScalarEvolution | |
| getSmallConstantTripMultiple(const Loop *L, const 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 | |
| getStoreSizeOfExpr(Type *IntTy, Type *StoreTy) | llvm::ScalarEvolution | |
| getStrengthenedNoWrapFlagsFromBinOp(const OverflowingBinaryOperator *OBO) | llvm::ScalarEvolution | |
| getSymbolicMaxBackedgeTakenCount(const Loop *L) | llvm::ScalarEvolution | inline |
| getTripCountFromExitCount(const SCEV *ExitCount) | llvm::ScalarEvolution | |
| getTripCountFromExitCount(const SCEV *ExitCount, Type *EvalTy, const Loop *L) | 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) const | llvm::ScalarEvolution | |
| getUDivCeilSCEV(const SCEV *N, const SCEV *D) | llvm::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, bool Sequential=false) | llvm::ScalarEvolution | |
| getUMinExpr(SmallVectorImpl< const SCEV * > &Operands, bool Sequential=false) | llvm::ScalarEvolution | |
| getUMinFromMismatchedTypes(const SCEV *LHS, const SCEV *RHS, bool Sequential=false) | llvm::ScalarEvolution | |
| getUMinFromMismatchedTypes(SmallVectorImpl< const SCEV * > &Ops, bool Sequential=false) | llvm::ScalarEvolution | |
| getUnknown(Value *V) | llvm::ScalarEvolution | |
| getUnsignedRange(const SCEV *S) | llvm::ScalarEvolution | inline |
| getUnsignedRangeMax(const SCEV *S) | llvm::ScalarEvolution | inline |
| getUnsignedRangeMin(const SCEV *S) | llvm::ScalarEvolution | inline |
| getURemExpr(const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| getVScale(Type *Ty) | llvm::ScalarEvolution | |
| getWiderType(Type *Ty1, Type *Ty2) const | llvm::ScalarEvolution | |
| getWrapPredicate(const SCEVAddRecExpr *AR, SCEVWrapPredicate::IncrementWrapFlags AddedFlags) | llvm::ScalarEvolution | |
| getZero(Type *Ty) | llvm::ScalarEvolution | inline |
| getZeroExtendExpr(const SCEV *Op, Type *Ty, unsigned Depth=0) | llvm::ScalarEvolution | |
| getZeroExtendExprImpl(const SCEV *Op, Type *Ty, unsigned Depth=0) | llvm::ScalarEvolution | |
| hasComputableLoopEvolution(const SCEV *S, const Loop *L) | llvm::ScalarEvolution | |
| hasFlags(SCEV::NoWrapFlags Flags, SCEV::NoWrapFlags TestFlags) | llvm::ScalarEvolution | inlinestatic |
| hasLoopInvariantBackedgeTakenCount(const Loop *L) | llvm::ScalarEvolution | |
| hasOperand(const SCEV *S, const SCEV *Op) const | llvm::ScalarEvolution | |
| instructionCouldExistWithOperands(const SCEV *A, const SCEV *B) | llvm::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 | |
| isBasicBlockEntryGuardedByCond(const BasicBlock *BB, CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isKnownMultipleOf(const SCEV *S, uint64_t M, SmallVectorImpl< const SCEVPredicate * > &Assumptions) | 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(CmpPredicate Pred, const SCEVAddRecExpr *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isKnownPositive(const SCEV *S) | llvm::ScalarEvolution | |
| isKnownPredicate(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isKnownPredicateAt(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS, const Instruction *CtxI) | llvm::ScalarEvolution | |
| isKnownToBeAPowerOfTwo(const SCEV *S, bool OrZero=false, bool OrNegative=false) | llvm::ScalarEvolution | |
| isKnownViaInduction(CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isLoopBackedgeGuardedByCond(const Loop *L, CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isLoopEntryGuardedByCond(const Loop *L, CmpPredicate Pred, const SCEV *LHS, const SCEV *RHS) | llvm::ScalarEvolution | |
| isLoopInvariant(const SCEV *S, const Loop *L) | llvm::ScalarEvolution | |
| isSCEVable(Type *Ty) const | llvm::ScalarEvolution | |
| LoopComputable enum value | llvm::ScalarEvolution | |
| LoopDisposition enum name | llvm::ScalarEvolution | |
| loopHasNoAbnormalExits(const Loop *L) | llvm::ScalarEvolution | inline |
| LoopInvariant enum value | llvm::ScalarEvolution | |
| loopIsFiniteByAssumption(const Loop *L) | llvm::ScalarEvolution | |
| LoopVariant enum value | llvm::ScalarEvolution | |
| maskFlags(SCEV::NoWrapFlags Flags, int Mask) | llvm::ScalarEvolution | inlinestatic |
| MonotonicallyDecreasing enum value | llvm::ScalarEvolution | |
| MonotonicallyIncreasing enum value | llvm::ScalarEvolution | |
| MonotonicPredicateType enum name | llvm::ScalarEvolution | |
| print(raw_ostream &OS) const | llvm::ScalarEvolution | |
| properlyDominates(const SCEV *S, const BasicBlock *BB) | llvm::ScalarEvolution | |
| ProperlyDominatesBlock enum value | llvm::ScalarEvolution | |
| registerUser(const SCEV *User, ArrayRef< const SCEV * > Ops) | llvm::ScalarEvolution | |
| removePointerBase(const SCEV *S) | llvm::ScalarEvolution | |
| rewriteUsingPredicate(const SCEV *S, const Loop *L, const SCEVPredicate &A) | llvm::ScalarEvolution | |
| ScalarEvolution(Function &F, TargetLibraryInfo &TLI, AssumptionCache &AC, DominatorTree &DT, LoopInfo &LI) | llvm::ScalarEvolution | |
| ScalarEvolution(ScalarEvolution &&Arg) | llvm::ScalarEvolution | |
| ScalarEvolutionsTest class | llvm::ScalarEvolution | friend |
| SCEVCallbackVH class | llvm::ScalarEvolution | friend |
| SCEVExpander class | llvm::ScalarEvolution | friend |
| SCEVUnknown class | llvm::ScalarEvolution | friend |
| setFlags(SCEV::NoWrapFlags Flags, SCEV::NoWrapFlags OnFlags) | llvm::ScalarEvolution | inlinestatic |
| setNoWrapFlags(SCEVAddRecExpr *AddRec, SCEV::NoWrapFlags Flags) | llvm::ScalarEvolution | |
| SimplifyICmpOperands(CmpPredicate &Pred, const SCEV *&LHS, const SCEV *&RHS, unsigned Depth=0) | llvm::ScalarEvolution | |
| SplitIntoInitAndPostInc(const Loop *L, const SCEV *S) | llvm::ScalarEvolution | |
| SymbolicMaximum enum value | llvm::ScalarEvolution | |
| verify() const | llvm::ScalarEvolution | |
| willNotOverflow(Instruction::BinaryOps BinOp, bool Signed, const SCEV *LHS, const SCEV *RHS, const Instruction *CtxI=nullptr) | llvm::ScalarEvolution | |
| ~ScalarEvolution() | llvm::ScalarEvolution |