|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
include/llvm/Analysis/ScalarEvolution.h 67 class SCEVUnknown;
References
include/llvm/Analysis/ScalarEvolution.h 565 createAddRecFromPHIWithCasts(const SCEVUnknown *SymbolicPHI);
1825 createAddRecFromPHIWithCastsImpl(const SCEVUnknown *SymbolicPHI);
1902 DenseMap<std::pair<const SCEVUnknown *, const Loop *>,
1909 SCEVUnknown *FirstUnknown = nullptr;
include/llvm/Analysis/ScalarEvolutionExpander.h 388 Value *visitUnknown(const SCEVUnknown *S) {
include/llvm/Analysis/ScalarEvolutionExpressions.h 476 SCEVUnknown *Next;
479 ScalarEvolution *se, SCEVUnknown *next) :
776 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
801 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
include/llvm/Support/Casting.h 58 return To::classof(&Val);
106 return isa_impl<To, From>::doit(*Val);
122 return isa_impl_wrap<To, SimpleFrom,
132 return isa_impl_cl<To,FromTy>::doit(Val);
142 return isa_impl_wrap<X, const Y,
172 using ret_type = To *; // Pointer arg case, return Ty*
176 using ret_type = const To *; // Constant pointer arg case, return const Ty*
198 using ret_type = typename cast_retty<To, SimpleFrom>::ret_type;
204 using ret_type = typename cast_retty_impl<To,FromTy>::ret_type;
210 To, From, typename simplify_type<From>::SimpleType>::ret_type;
227 static typename cast_retty<To, FromTy>::ret_type doit(const FromTy &Val) {
228 typename cast_retty<To, FromTy>::ret_type Res2
256 inline typename cast_retty<X, Y>::ret_type cast(Y &Val) {
263 inline typename cast_retty<X, Y *>::ret_type cast(Y *Val) {
265 return cast_convert_val<X, Y*,
337 LLVM_NODISCARD inline typename cast_retty<X, Y>::ret_type dyn_cast(Y &Val) {
342 LLVM_NODISCARD inline typename cast_retty<X, Y *>::ret_type dyn_cast(Y *Val) {
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
343 return isa<X>(Val) ? cast<X>(Val) : nullptr;
include/llvm/Support/PointerLikeTypeTraits.h 56 static inline void *getAsVoidPointer(T *P) { return P; }
57 static inline T *getFromVoidPointer(void *P) { return static_cast<T *>(P); }
59 enum { NumLowBitsAvailable = detail::ConstantLog2<alignof(T)>::value };
91 typedef PointerLikeTypeTraits<T *> NonConst;
93 static inline const void *getAsVoidPointer(const T *P) {
96 static inline const T *getFromVoidPointer(const void *P) {
lib/Analysis/Delinearization.cpp 87 const SCEVUnknown *BasePointer =
88 dyn_cast<SCEVUnknown>(SE->getPointerBase(AccessFn));
lib/Analysis/DependenceAnalysis.cpp 3280 const SCEVUnknown *SrcBase =
3281 dyn_cast<SCEVUnknown>(SE->getPointerBase(SrcAccessFn));
3282 const SCEVUnknown *DstBase =
3283 dyn_cast<SCEVUnknown>(SE->getPointerBase(DstAccessFn));
lib/Analysis/IVDescriptors.cpp 913 const SCEVUnknown *PhiScev,
1014 const auto *SymbolicPhi = dyn_cast<SCEVUnknown>(PhiScev);
1014 const auto *SymbolicPhi = dyn_cast<SCEVUnknown>(PhiScev);
lib/Analysis/Loads.cpp 236 auto *StartS = dyn_cast<SCEVUnknown>(AddRec->getStart());
lib/Analysis/LoopAccessAnalysis.cpp 160 const auto *U = cast<SCEVUnknown>(SE->getSCEV(StrideVal));
160 const auto *U = cast<SCEVUnknown>(SE->getSCEV(StrideVal));
lib/Analysis/LoopCacheAnalysis.cpp 320 BasePointer = dyn_cast<SCEVUnknown>(SE.getPointerBase(AccessFn));
lib/Analysis/LoopUnrollAnalyzer.cpp 49 auto *Base = dyn_cast<SCEVUnknown>(SE.getPointerBase(S));
lib/Analysis/ScalarEvolution.cpp 325 const SCEVUnknown *U = cast<SCEVUnknown>(this);
325 const SCEVUnknown *U = cast<SCEVUnknown>(this);
376 return cast<SCEVUnknown>(this)->getType();
672 const SCEVUnknown *LU = cast<SCEVUnknown>(LHS);
672 const SCEVUnknown *LU = cast<SCEVUnknown>(LHS);
673 const SCEVUnknown *RU = cast<SCEVUnknown>(RHS);
673 const SCEVUnknown *RU = cast<SCEVUnknown>(RHS);
948 void visitUnknown(const SCEVUnknown *Numerator) {}
1055 if (!isa<SCEVUnknown>(Denominator))
1060 RewriteMap[cast<SCEVUnknown>(Denominator)->getValue()] =
1066 RewriteMap[cast<SCEVUnknown>(Denominator)->getValue()] =
2535 if (isa<SCEVConstant>(Fold) || isa<SCEVUnknown>(Fold))
3751 SCEV *S = new (SCEVAllocator) SCEVUnknown(ID.Intern(SCEVAllocator), V, this,
3753 FirstUnknown = cast<SCEVUnknown>(S);
3804 auto *SU = dyn_cast<SCEVUnknown>(S);
3923 if (Offset != nullptr && !isa<SCEVUnknown>(Stripped) &&
4219 !isa<SCEVUnknown>(Old) ||
4250 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
4291 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
4343 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
4407 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
4585 static Type *isSimpleCastedPHI(const SCEV *Op, const SCEVUnknown *SymbolicPHI,
5205 const auto *SU = cast<SCEVUnknown>(S);
5205 const auto *SU = cast<SCEVUnknown>(S);
5503 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
5503 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
5699 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
5699 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
5890 auto *SU = dyn_cast<SCEVUnknown>(S);
6721 if (!isa<PHINode>(I) || !isa<SCEVUnknown>(Old)) {
8056 return dyn_cast<Constant>(cast<SCEVUnknown>(V)->getValue());
8150 if (const SCEVUnknown *SU = dyn_cast<SCEVUnknown>(V)) {
8150 if (const SCEVUnknown *SU = dyn_cast<SCEVUnknown>(V)) {
8883 if (const SCEVUnknown *AU = dyn_cast<SCEVUnknown>(A))
8883 if (const SCEVUnknown *AU = dyn_cast<SCEVUnknown>(A))
8884 if (const SCEVUnknown *BU = dyn_cast<SCEVUnknown>(B))
8884 if (const SCEVUnknown *BU = dyn_cast<SCEVUnknown>(B))
10024 if (const SCEVUnknown *LU = dyn_cast<SCEVUnknown>(LHS))
10024 if (const SCEVUnknown *LU = dyn_cast<SCEVUnknown>(LHS))
10030 if (const SCEVUnknown *RU = dyn_cast<SCEVUnknown>(RHS))
10030 if (const SCEVUnknown *RU = dyn_cast<SCEVUnknown>(RHS))
10279 } else if (auto *LHSUnknownExpr = dyn_cast<SCEVUnknown>(LHS)) {
10895 if (const auto *SU = dyn_cast<SCEVUnknown>(S))
10895 if (const auto *SU = dyn_cast<SCEVUnknown>(S))
10927 if (isa<SCEVUnknown>(S) || isa<SCEVMulExpr>(S) ||
10990 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(Op);
10990 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(Op);
11102 if (SCEVExprContains(T, isa<SCEVUnknown, const SCEV *>))
11118 if (isa<SCEVUnknown>(T))
11452 for (SCEVUnknown *U = FirstUnknown; U;) {
11453 SCEVUnknown *Tmp = U;
11733 if (auto *I = dyn_cast<Instruction>(cast<SCEVUnknown>(S)->getValue()))
11821 dyn_cast<Instruction>(cast<SCEVUnknown>(S)->getValue())) {
11932 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
12119 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
12189 const SCEV *convertToAddRecWithPreds(const SCEVUnknown *Expr) {
lib/Analysis/ScalarEvolutionAliasAnalysis.cpp 109 } else if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
109 } else if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
lib/Analysis/ScalarEvolutionExpander.cpp 627 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
627 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
722 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(X))
722 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(X))
2445 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S))
2445 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S))
lib/Analysis/StackSafetyAnalysis.cpp 41 !isa<SCEVUnknown>(Expr))
46 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
lib/Analysis/VectorUtils.cpp 242 const SCEVUnknown *U = dyn_cast<SCEVUnknown>(V);
242 const SCEVUnknown *U = dyn_cast<SCEVUnknown>(V);
lib/CodeGen/SafeStack.cpp 112 const SCEV *visitUnknown(const SCEVUnknown *Expr) {
lib/Transforms/Scalar/AlignmentFromAssumptions.cpp 268 if (const SCEVUnknown *OpUnk = dyn_cast<SCEVUnknown>(*J))
268 if (const SCEVUnknown *OpUnk = dyn_cast<SCEVUnknown>(*J))
lib/Transforms/Scalar/IndVarSimplify.cpp 669 !isa<SCEVConstant>(ExitValue) && !isa<SCEVUnknown>(ExitValue) &&
lib/Transforms/Scalar/LoopPredication.cpp 542 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S))
542 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S))
lib/Transforms/Scalar/LoopStrengthReduce.cpp 772 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
772 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(S)) {
941 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(Mul->getOperand(1))) {
941 if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(Mul->getOperand(1))) {
1216 if (isa<SCEVUnknown>(Reg) || isa<SCEVConstant>(Reg))
2329 else if (const SCEVUnknown *SU = dyn_cast<SCEVUnknown>(MaxRHS))
2329 else if (const SCEVUnknown *SU = dyn_cast<SCEVUnknown>(MaxRHS))
3003 && !isa<SCEVUnknown>(SE.getSCEV(OtherUse))
3059 if (SE.isSCEVable(I.getType()) && !isa<SCEVUnknown>(SE.getSCEV(&I)))
3407 } else if (const SCEVUnknown *US = dyn_cast<SCEVUnknown>(S)) {
3407 } else if (const SCEVUnknown *US = dyn_cast<SCEVUnknown>(S)) {
3442 if (!isa<SCEVUnknown>(UserS))
3593 if (isa<SCEVUnknown>(*J) && !SE.isLoopInvariant(*J, L))
4463 } else if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(*I)) {
4463 } else if (const SCEVUnknown *U = dyn_cast<SCEVUnknown>(*I)) {
lib/Transforms/Vectorize/LoopVectorize.cpp 1831 Step = cast<SCEVUnknown>(ID.getStep())->getValue();
2859 Value *StepValue = cast<SCEVUnknown>(Step)->getValue();
tools/polly/include/polly/ScopDetection.h 71 const SCEVUnknown *BasePointer;
76 ArrayShape(const SCEVUnknown *B) : BasePointer(B) {}
95 using BaseToAFs = std::map<const SCEVUnknown *, AFs>;
96 using BaseToElSize = std::map<const SCEVUnknown *, const SCEV *>;
138 SetVector<std::pair<const SCEVUnknown *, Loop *>> NonAffineAccesses;
236 const SCEVUnknown *BasePointer) const;
248 const SCEVUnknown *BasePointer, Loop *Scope) const;
261 const SCEVUnknown *BasePointer,
272 const SCEVUnknown *BasePointer, Loop *Scope) const;
381 bool isValidAccess(Instruction *Inst, const SCEV *AF, const SCEVUnknown *BP,
tools/polly/include/polly/Support/SCEVAffinator.h 109 PWACtx visitUnknown(const llvm::SCEVUnknown *E);
tools/polly/lib/Analysis/ScopBuilder.cpp 1606 const SCEVUnknown *BasePointer =
1607 dyn_cast<SCEVUnknown>(SE.getPointerBase(AccessFunction));
1686 const SCEVUnknown *BasePointer =
1687 dyn_cast<SCEVUnknown>(SE.getPointerBase(AccessFunction));
1760 auto *DestPtrSCEV = dyn_cast<SCEVUnknown>(SE.getPointerBase(DestAccFunc));
1782 auto *SrcPtrSCEV = dyn_cast<SCEVUnknown>(SE.getPointerBase(SrcAccFunc));
1831 auto *ArgBasePtr = cast<SCEVUnknown>(SE.getPointerBase(ArgSCEV));
1851 const SCEVUnknown *BasePointer =
1852 dyn_cast<SCEVUnknown>(SE.getPointerBase(AccessFunction));
tools/polly/lib/Analysis/ScopDetection.cpp 505 auto *BasePtr = dyn_cast<SCEVUnknown>(SE.getPointerBase(PtrSCEV));
717 auto *BP = dyn_cast<SCEVUnknown>(SE.getPointerBase(ArgSCEV));
750 const SCEVUnknown *BP;
758 BP = dyn_cast<SCEVUnknown>(SE.getPointerBase(AF));
767 BP = dyn_cast<SCEVUnknown>(SE.getPointerBase(AF));
880 if (auto *Unknown = dyn_cast<SCEVUnknown>(MulOp)) {
903 const SCEVUnknown *BasePointer,
923 if (auto *Unknown = dyn_cast<SCEVUnknown>(DelinearizedSize)) {
967 DetectionContext &Context, const SCEVUnknown *BasePointer,
1019 const SCEVUnknown *BasePointer,
1055 const SCEVUnknown *BP,
1185 const SCEVUnknown *BasePointer;
1187 BasePointer = dyn_cast<SCEVUnknown>(SE.getPointerBase(AccessFunction));
tools/polly/lib/Analysis/ScopInfo.cpp 215 auto *OriginBaseSCEVUnknown = dyn_cast<SCEVUnknown>(OriginBaseSCEV);
1410 const SCEV *visitUnknown(const SCEVUnknown *E) {
1438 } else if (auto *Unknown = dyn_cast<SCEVUnknown>(E)) {
1497 if (const SCEVUnknown *ValueParameter = dyn_cast<SCEVUnknown>(Parameter)) {
1497 if (const SCEVUnknown *ValueParameter = dyn_cast<SCEVUnknown>(Parameter)) {
tools/polly/lib/CodeGen/IRBuilder.cpp 216 auto *SU = dyn_cast<SCEVUnknown>(BaseSCEV);
tools/polly/lib/CodeGen/IslNodeBuilder.cpp 320 Values.insert(cast<SCEVUnknown>(I.second)->getValue());
tools/polly/lib/Support/SCEVAffinator.cpp 530 PWACtx SCEVAffinator::visitUnknown(const SCEVUnknown *Expr) {
tools/polly/lib/Support/SCEVValidator.cpp 430 ValidatorResult visitUnknown(const SCEVUnknown *Expr) {
473 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(S);
473 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(S);
508 if (auto Unknown = dyn_cast<SCEVUnknown>(S)) {
587 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(S);
587 const SCEVUnknown *Unknown = dyn_cast<SCEVUnknown>(S);
775 if (auto *Unknown = dyn_cast<SCEVUnknown>(Expr)) {
tools/polly/lib/Support/ScopHelper.cpp 268 const SCEV *visitGenericInst(const SCEVUnknown *E, Instruction *Inst,
289 const SCEV *visitUnknown(const SCEVUnknown *E) {
unittests/Analysis/ScalarEvolutionTest.cpp 1033 auto Result = SE.createAddRecFromPHIWithCasts(cast<SCEVUnknown>(Expr));
1091 auto Result = SE.createAddRecFromPHIWithCasts(cast<SCEVUnknown>(Expr));