Home
last modified time | relevance | path

Searched refs:SCEVConstant (Results 1 – 25 of 36) sorted by relevance

12

/external/llvm/lib/Analysis/
DScalarEvolution.cpp140 cast<SCEVConstant>(this)->getValue()->printAsOperand(OS, false); in print()
250 return cast<SCEVConstant>(this)->getType(); in getType()
273 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isZero()
279 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isOne()
285 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isAllOnesValue()
295 const SCEVConstant *SC = dyn_cast<SCEVConstant>(Mul->getOperand(0)); in isNonConstantNegative()
315 SCEV *S = new (SCEVAllocator) SCEVConstant(ID.Intern(SCEVAllocator), V); in getConstant()
534 const SCEVConstant *LC = cast<SCEVConstant>(LHS); in compare()
535 const SCEVConstant *RC = cast<SCEVConstant>(RHS); in compare()
763 void visitConstant(const SCEVConstant *Numerator) { in visitConstant()
[all …]
DDependenceAnalysis.cpp445 if (isa<SCEVConstant>(Y->getD())) { in intersectConstraints()
488 const SCEVConstant *C1A2_C2A1 = in intersectConstraints()
489 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1A2, C2A1)); in intersectConstraints()
490 const SCEVConstant *C1B2_C2B1 = in intersectConstraints()
491 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1B2, C2B1)); in intersectConstraints()
492 const SCEVConstant *A1B2_A2B1 = in intersectConstraints()
493 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A1B2, A2B1)); in intersectConstraints()
494 const SCEVConstant *A2B1_A1B2 = in intersectConstraints()
495 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A2B1, A1B2)); in intersectConstraints()
524 if (const SCEVConstant *CUB = in intersectConstraints()
[all …]
DLoopUnrollAnalyzer.cpp34 if (auto *SC = dyn_cast<SCEVConstant>(S)) { in simplifyInstWithSCEV()
45 if (auto *SC = dyn_cast<SCEVConstant>(ValueAtIteration)) { in simplifyInstWithSCEV()
55 dyn_cast<SCEVConstant>(SE.getMinusSCEV(ValueAtIteration, Base)); in simplifyInstWithSCEV()
DScalarEvolutionExpander.cpp240 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in FactorOutConstant()
245 if (const SCEVConstant *FC = dyn_cast<SCEVConstant>(Factor)) { in FactorOutConstant()
266 const SCEVConstant *FC = cast<SCEVConstant>(Factor); in FactorOutConstant()
267 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(M->getOperand(0))) in FactorOutConstant()
455 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(Ops[0])) in expandAddToGEP()
602 if (isa<SCEVConstant>(S)) in getRelevantLoop()
786 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getRHS())) { in visitUDivExpr()
1783 auto *Const = dyn_cast<SCEVConstant>(SE.getSCEV(PN)); in replaceCongruentIVs()
1960 if (auto *SC = dyn_cast<SCEVConstant>(UDivExpr->getRHS())) in isHighCostExpansionHelper()
2186 const SCEVConstant *SC = dyn_cast<SCEVConstant>(D->getRHS()); in follow()
DLoopAccessAnalysis.cpp137 static_cast<const SCEVConstant *>(SE->getOne(StrideVal->getType())); in replaceSymbolicStrideSCEV()
175 if (const auto *CStep = dyn_cast<SCEVConstant>(Step)) { in insert()
227 const SCEVConstant *C = dyn_cast<const SCEVConstant>(Diff); in getMinFromExprs()
933 const SCEVConstant *C = dyn_cast<SCEVConstant>(Step); in getPtrStride()
1028 const SCEVConstant *OffsetDeltaC = dyn_cast<SCEVConstant>(OffsetDeltaSCEV); in isConsecutiveAccess()
1230 const SCEVConstant *C = dyn_cast<SCEVConstant>(Dist); in isDependent()
/external/swiftshader/third_party/LLVM/lib/Analysis/
DScalarEvolution.cpp131 WriteAsOperand(OS, cast<SCEVConstant>(this)->getValue(), false); in print()
234 return cast<SCEVConstant>(this)->getType(); in getType()
260 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isZero()
266 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isOne()
272 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isAllOnesValue()
290 SCEV *S = new (SCEVAllocator) SCEVConstant(ID.Intern(SCEVAllocator), V); in getConstant()
509 const SCEVConstant *LC = cast<SCEVConstant>(LHS); in compare()
510 const SCEVConstant *RC = cast<SCEVConstant>(RHS); in compare()
808 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(Op)) in getTruncateExpr()
888 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(Op)) in getZeroExtendExpr()
[all …]
DScalarEvolutionExpander.cpp201 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in FactorOutConstant()
206 if (const SCEVConstant *FC = dyn_cast<SCEVConstant>(Factor)) { in FactorOutConstant()
233 const SCEVConstant *FC = cast<SCEVConstant>(Factor); in FactorOutConstant()
234 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(M->getOperand(0))) in FactorOutConstant()
438 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(Ops[0])) in expandAddToGEP()
598 const SCEVConstant *SC = dyn_cast<SCEVConstant>(Mul->getOperand(0)); in isNonConstantNegative()
628 if (isa<SCEVConstant>(S)) in getRelevantLoop()
813 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getRHS())) { in visitUDivExpr()
/external/swiftshader/third_party/LLVM/lib/Transforms/Scalar/
DLoopIdiomRecognize.cpp190 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in runOnLoop()
291 const SCEVConstant *Stride = dyn_cast<SCEVConstant>(StoreEv->getOperand(1)); in processLoopStore()
352 const SCEVConstant *Stride = dyn_cast<SCEVConstant>(Ev->getOperand(1)); in processLoopMemSet()
379 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation()
DLoopStrengthReduce.cpp451 const SCEVConstant *RC = dyn_cast<SCEVConstant>(RHS); in getExactSDiv()
464 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(LHS)) { in getExactSDiv()
536 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in ExtractImmediate()
770 if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1))) { in RateRegister()
783 !isa<SCEVConstant>(Reg) && in RateRegister()
786 isa<SCEVConstant>(cast<SCEVAddRecExpr>(Reg)->getStart())))) in RateRegister()
1820 if (const SCEVConstant *D = in OptimizeLoopTermCond()
1821 dyn_cast_or_null<SCEVConstant>(getExactSDiv(B, A, SE))) { in OptimizeLoopTermCond()
2072 if (const SCEVConstant *Factor = in CollectInterestingTypesAndFactors()
2073 dyn_cast_or_null<SCEVConstant>(getExactSDiv(NewStride, OldStride, in CollectInterestingTypesAndFactors()
[all …]
/external/llvm/lib/Target/PowerPC/
DPPCLoopPreIncPrep.cpp107 BucketElement(const SCEVConstant *O, Instruction *I) : Offset(O), Instr(I) {} in BucketElement()
110 const SCEVConstant *Offset;
227 if (const auto *CDiff = dyn_cast<SCEVConstant>(Diff)) { in runOnLoop()
293 E.Offset = cast<SCEVConstant>(SE->getMinusSCEV(E.Offset, Offset)); in runOnLoop()
295 E.Offset = cast<SCEVConstant>(SE->getNegativeSCEV(Offset)); in runOnLoop()
325 const SCEVConstant *BasePtrIncSCEV = in runOnLoop()
326 dyn_cast<SCEVConstant>(BasePtrSCEV->getStepRecurrence(*SE)); in runOnLoop()
/external/llvm/lib/Transforms/Scalar/
DAlignmentFromAssumptions.cpp104 if (const SCEVConstant *ConstDUSCEV = in getNewAlignmentDiff()
105 dyn_cast<SCEVConstant>(DiffUnitsSCEV)) { in getNewAlignmentDiff()
113 cast<SCEVConstant>(AlignSCEV)->getValue()->getSExtValue(); in getNewAlignmentDiff()
234 if (isa<SCEVConstant>(AndLHSSCEV)) { in extractAlignmentInfo()
239 const SCEVConstant *MaskSCEV = dyn_cast<SCEVConstant>(AndRHSSCEV); in extractAlignmentInfo()
DLoopRerollPass.cpp471 static const SCEVConstant *getIncrmentFactorSCEV(ScalarEvolution *SE, in getIncrmentFactorSCEV()
479 if (const SCEVConstant *IncSCEV = dyn_cast<SCEVConstant>(SCEVExpr)) { in getIncrmentFactorSCEV()
487 return dyn_cast<SCEVConstant>(SE->getNegativeSCEV(NewSCEV)); in getIncrmentFactorSCEV()
489 return dyn_cast<SCEVConstant>(SE->getUDivExpr(SCEVExpr, SizeOfExpr)); in getIncrmentFactorSCEV()
498 const SCEVConstant *CIncSCEV = nullptr; in getIncrmentFactorSCEV()
500 if (const SCEVConstant *Constant = dyn_cast<SCEVConstant>(Operand)) { in getIncrmentFactorSCEV()
593 const SCEVConstant *IncSCEV = nullptr; in collectPossibleIVs()
598 IncSCEV = dyn_cast<SCEVConstant>(PHISCEV->getStepRecurrence(*SE)); in collectPossibleIVs()
1449 const SCEVConstant *COp = nullptr; in updateNonLoopCtrlIncr()
1451 COp = dyn_cast<SCEVConstant>(SE->getSCEV(LoopInc->getOperand(1))); in updateNonLoopCtrlIncr()
[all …]
DLoopDataPrefetch.cpp140 const auto *ConstStride = dyn_cast<SCEVConstant>(AR->getStepRecurrence(*SE)); in isStrideLargeEnough()
258 if (const SCEVConstant *ConstPtrDiff = in runOnLoop()
259 dyn_cast<SCEVConstant>(PtrDiff)) { in runOnLoop()
DLoopIdiomRecognize.cpp251 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in runOnCountableLoop()
290 const SCEVConstant *ConstStride = cast<SCEVConstant>(StoreEv->getOperand(1)); in getStoreStride()
362 if (!isa<SCEVConstant>(StoreEv->getOperand(1))) in isLegalStore()
673 const SCEVConstant *ConstStride = dyn_cast<SCEVConstant>(Ev->getOperand(1)); in processLoopMemSet()
710 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation()
DLoopStrengthReduce.cpp545 const SCEVConstant *RC = dyn_cast<SCEVConstant>(RHS); in getExactSDiv()
558 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(LHS)) { in getExactSDiv()
625 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in ExtractImmediate()
769 if (isa<SCEVConstant>(Mul->getOperand(0))) in isHighCostExpansion()
931 if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1))) { in RateRegister()
944 !isa<SCEVConstant>(Reg) && in RateRegister()
947 isa<SCEVConstant>(cast<SCEVAddRecExpr>(Reg)->getStart())))) in RateRegister()
2130 if (const SCEVConstant *D = in OptimizeLoopTermCond()
2131 dyn_cast_or_null<SCEVConstant>(getExactSDiv(B, A, SE))) { in OptimizeLoopTermCond()
2385 if (const SCEVConstant *Factor = in CollectInterestingTypesAndFactors()
[all …]
DInductiveRangeCheckElimination.cpp724 if (const SCEVConstant *StepExpr = in parseLoopStructure()
725 dyn_cast<SCEVConstant>(AR->getStepRecurrence(SE))) { in parseLoopStructure()
1183 const SCEVConstant *MinusOneS = in run()
1184 cast<SCEVConstant>(SE.getConstant(IVTy, -1, true /* isSigned */)); in run()
1313 const SCEVConstant *B = dyn_cast<SCEVConstant>(IndVar->getStepRecurrence(SE)); in computeSafeIterationSpace()
1318 const SCEVConstant *D = dyn_cast<SCEVConstant>(getScale()); in computeSafeIterationSpace()
DLoopInterchange.cpp134 const SCEVConstant *SCEVConst = in populateDependencyMatrix()
135 dyn_cast_or_null<SCEVConstant>(Distance); in populateDependencyMatrix()
318 const SCEVConstant *C = dyn_cast<SCEVConstant>(Step); in getInductionVariable()
/external/swiftshader/third_party/LLVM/include/llvm/Analysis/
DScalarEvolutionExpressions.h36 class SCEVConstant : public SCEV {
40 SCEVConstant(const FoldingSetNodeIDRef ID, ConstantInt *v) : in SCEVConstant() function
48 static inline bool classof(const SCEVConstant *S) { return true; } in classof()
464 return ((SC*)this)->visitConstant((const SCEVConstant*)S); in visit()
DScalarEvolutionExpander.h208 Value *visitConstant(const SCEVConstant *S) {
/external/llvm/lib/Transforms/Utils/
DLoopUtils.cpp686 if (isa<SCEVConstant>(Step)) in getConstIntStepValue()
687 return dyn_cast<ConstantInt>(cast<SCEVConstant>(Step)->getValue()); in getConstIntStepValue()
722 assert(isa<SCEVConstant>(Step) && in transform()
783 const SCEVConstant *ConstStep = dyn_cast<SCEVConstant>(Step); in isInductionPHI()
/external/llvm/include/llvm/Analysis/
DScalarEvolutionExpressions.h36 class SCEVConstant : public SCEV {
40 SCEVConstant(const FoldingSetNodeIDRef ID, ConstantInt *v) : in SCEVConstant() function
443 return ((SC*)this)->visitConstant((const SCEVConstant*)S); in visit()
548 const SCEV *visitConstant(const SCEVConstant *Constant) { in visitConstant()
DScalarEvolution.h52 class SCEVConstant; variable
247 const SCEVConstant *RHS;
251 const SCEVConstant *RHS);
263 const SCEVConstant *getRHS() const { return RHS; }
1627 const SCEVConstant *RHS);
DDependenceAnalysis.h54 class SCEVConstant; variable
580 const SCEVConstant *collectConstantUpperBound(const Loop *l, Type *T) const;
/external/swiftshader/third_party/LLVM/unittests/Analysis/
DScalarEvolutionTest.cpp68 EXPECT_EQ(cast<SCEVConstant>(M0->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
70 EXPECT_EQ(cast<SCEVConstant>(M1->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
72 EXPECT_EQ(cast<SCEVConstant>(M2->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
/external/llvm/unittests/Analysis/
DScalarEvolutionTest.cpp77 EXPECT_EQ(cast<SCEVConstant>(M0->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
79 EXPECT_EQ(cast<SCEVConstant>(M1->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
81 EXPECT_EQ(cast<SCEVConstant>(M2->getOperand(0))->getValue()->getZExtValue(), in TEST_F()

12