Home
last modified time | relevance | path

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

123

/external/swiftshader/third_party/llvm-7.0/llvm/lib/Target/PowerPC/
DPPCLoopPreIncPrep.cpp97 const SCEVConstant *BasePtrIncSCEV);
128 BucketElement(const SCEVConstant *O, Instruction *I) : Offset(O), Instr(I) {} in BucketElement()
131 const SCEVConstant *Offset;
193 const SCEVConstant *BasePtrIncSCEV) { in alreadyPrepared()
220 const SCEVConstant *PHIBasePtrIncSCEV = in alreadyPrepared()
221 dyn_cast<SCEVConstant>(PHIBasePtrSCEV->getStepRecurrence(*SE)); in alreadyPrepared()
303 if (const SCEVConstant *StepConst = in runOnLoop()
304 dyn_cast<SCEVConstant>(LARSCEV->getStepRecurrence(*SE))) { in runOnLoop()
317 if (const auto *CDiff = dyn_cast<SCEVConstant>(Diff)) { in runOnLoop()
383 E.Offset = cast<SCEVConstant>(SE->getMinusSCEV(E.Offset, Offset)); in runOnLoop()
[all …]
/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()
/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-7.0/llvm/lib/Analysis/
DDependenceAnalysis.cpp446 if (isa<SCEVConstant>(Y->getD())) { in intersectConstraints()
489 const SCEVConstant *C1A2_C2A1 = in intersectConstraints()
490 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1A2, C2A1)); in intersectConstraints()
491 const SCEVConstant *C1B2_C2B1 = in intersectConstraints()
492 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1B2, C2B1)); in intersectConstraints()
493 const SCEVConstant *A1B2_A2B1 = in intersectConstraints()
494 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A1B2, A2B1)); in intersectConstraints()
495 const SCEVConstant *A2B1_A1B2 = in intersectConstraints()
496 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A2B1, A1B2)); in intersectConstraints()
525 if (const SCEVConstant *CUB = in intersectConstraints()
[all …]
DScalarEvolution.cpp227 cast<SCEVConstant>(this)->getValue()->printAsOperand(OS, false); in print()
337 return cast<SCEVConstant>(this)->getType(); in getType()
360 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isZero()
366 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isOne()
372 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isAllOnesValue()
382 const SCEVConstant *SC = dyn_cast<SCEVConstant>(Mul->getOperand(0)); in isNonConstantNegative()
402 SCEV *S = new (SCEVAllocator) SCEVConstant(ID.Intern(SCEVAllocator), V); in getConstant()
659 const SCEVConstant *LC = cast<SCEVConstant>(LHS); in CompareSCEVComplexity()
660 const SCEVConstant *RC = cast<SCEVConstant>(RHS); in CompareSCEVComplexity()
921 void visitConstant(const SCEVConstant *Numerator) { in visitConstant()
[all …]
DLoopUnrollAnalyzer.cpp33 if (auto *SC = dyn_cast<SCEVConstant>(S)) { in simplifyInstWithSCEV()
44 if (auto *SC = dyn_cast<SCEVConstant>(ValueAtIteration)) { in simplifyInstWithSCEV()
54 dyn_cast<SCEVConstant>(SE.getMinusSCEV(ValueAtIteration, Base)); in simplifyInstWithSCEV()
DScalarEvolutionExpander.cpp253 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in FactorOutConstant()
258 if (const SCEVConstant *FC = dyn_cast<SCEVConstant>(Factor)) { in FactorOutConstant()
279 const SCEVConstant *FC = cast<SCEVConstant>(Factor); in FactorOutConstant()
280 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(M->getOperand(0))) in FactorOutConstant()
468 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(Ops[0])) in expandAddToGEP()
620 if (isa<SCEVConstant>(S)) in getRelevantLoop()
842 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getRHS())) { in visitUDivExpr()
1753 if (const auto *SC = dyn_cast<SCEVConstant>(D->getRHS())) in expand()
1888 auto *Const = dyn_cast<SCEVConstant>(SE.getSCEV(PN)); in replaceCongruentIVs()
2076 if (auto *SC = dyn_cast<SCEVConstant>(UDivExpr->getRHS())) in isHighCostExpansionHelper()
[all …]
/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/swiftshader/third_party/llvm-7.0/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()
DLoopStrengthReduce.cpp653 const SCEVConstant *RC = dyn_cast<SCEVConstant>(RHS); in getExactSDiv()
666 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(LHS)) { in getExactSDiv()
733 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in ExtractImmediate()
923 if (isa<SCEVConstant>(Mul->getOperand(0))) in isHighCostExpansion()
1236 if (isa<SCEVConstant>(LoopStep)) { in RateRegister()
1241 if (!isa<SCEVConstant>(LoopStart) && in RateRegister()
1251 if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1))) { in RateRegister()
1264 !isa<SCEVConstant>(Reg) && in RateRegister()
1267 isa<SCEVConstant>(cast<SCEVAddRecExpr>(Reg)->getStart())))) in RateRegister()
2407 if (const SCEVConstant *D = in OptimizeLoopTermCond()
[all …]
DLoopDataPrefetch.cpp147 const auto *ConstStride = dyn_cast<SCEVConstant>(AR->getStepRecurrence(*SE)); in isStrideLargeEnough()
289 if (const SCEVConstant *ConstPtrDiff = in runOnLoop()
290 dyn_cast<SCEVConstant>(PtrDiff)) { in runOnLoop()
DLoopIdiomRecognize.cpp307 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in runOnCountableLoop()
339 const SCEVConstant *ConstStride = cast<SCEVConstant>(StoreEv->getOperand(1)); in getStoreStride()
419 if (!isa<SCEVConstant>(StoreEv->getOperand(1))) in isLegalStore()
742 const SCEVConstant *ConstStride = dyn_cast<SCEVConstant>(Ev->getOperand(1)); in processLoopMemSet()
779 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation()
/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 …]
/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()
/external/swiftshader/third_party/llvm-7.0/llvm/unittests/Analysis/
DScalarEvolutionTest.cpp91 EXPECT_EQ(cast<SCEVConstant>(M0->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
93 EXPECT_EQ(cast<SCEVConstant>(M1->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
95 EXPECT_EQ(cast<SCEVConstant>(M2->getOperand(0))->getValue()->getZExtValue(), in TEST_F()
856 EXPECT_TRUE(isa<SCEVConstant>(EC)); in TEST_F()
857 EXPECT_EQ(cast<SCEVConstant>(EC)->getAPInt().getLimitedValue(), 999u); in TEST_F()
866 EXPECT_TRUE(isa<SCEVConstant>(ARAtLoopExit)); in TEST_F()
867 EXPECT_EQ(cast<SCEVConstant>(ARAtLoopExit)->getAPInt().getLimitedValue(), in TEST_F()
880 EXPECT_TRUE(isa<SCEVConstant>(NewEC)); in TEST_F()
881 EXPECT_EQ(cast<SCEVConstant>(NewEC)->getAPInt().getLimitedValue(), 1999u); in TEST_F()
884 EXPECT_TRUE(isa<SCEVConstant>(NewARAtLoopExit)); in TEST_F()
[all …]

123