Home
last modified time | relevance | path

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

12

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/PowerPC/
H A DPPCLoopInstrFormPrep.cpp128 BucketElement(const SCEVConstant *O, Instruction *I) : Offset(O), Instr(I) {} in BucketElement()
131 const SCEVConstant *Offset;
189 const SCEVConstant *BasePtrIncSCEV,
318 if (const auto *CDiff = dyn_cast<SCEVConstant>(Diff)) { in addOneCandidate()
436 E.Offset = cast<SCEVConstant>(SE->getMinusSCEV(E.Offset, Offset)); in prepareBaseForDispFormChain()
438 E.Offset = cast<SCEVConstant>(SE->getNegativeSCEV(Offset)); in prepareBaseForDispFormChain()
481 E.Offset = cast<SCEVConstant>(SE->getMinusSCEV(E.Offset, Offset)); in prepareBaseForUpdateFormChain()
483 E.Offset = cast<SCEVConstant>(SE->getNegativeSCEV(Offset)); in prepareBaseForUpdateFormChain()
518 const SCEVConstant *BasePtrIncSCEV = in rewriteLoadStores()
519 dyn_cast<SCEVConstant>(BasePtrSCEV->getStepRecurrence(*SE)); in rewriteLoadStores()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DDependenceAnalysis.cpp466 if (isa<SCEVConstant>(Y->getD())) { in intersectConstraints()
509 const SCEVConstant *C1A2_C2A1 = in intersectConstraints()
510 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1A2, C2A1)); in intersectConstraints()
511 const SCEVConstant *C1B2_C2B1 = in intersectConstraints()
512 dyn_cast<SCEVConstant>(SE->getMinusSCEV(C1B2, C2B1)); in intersectConstraints()
513 const SCEVConstant *A1B2_A2B1 = in intersectConstraints()
514 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A1B2, A2B1)); in intersectConstraints()
515 const SCEVConstant *A2B1_A1B2 = in intersectConstraints()
516 dyn_cast<SCEVConstant>(SE->getMinusSCEV(A2B1, A1B2)); in intersectConstraints()
545 if (const SCEVConstant *CUB = in intersectConstraints()
[all …]
H A DScalarEvolution.cpp254 cast<SCEVConstant>(this)->getValue()->printAsOperand(OS, false); in print()
382 return cast<SCEVConstant>(this)->getType(); in getType()
408 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isZero()
414 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isOne()
420 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(this)) in isAllOnesValue()
430 const SCEVConstant *SC = dyn_cast<SCEVConstant>(Mul->getOperand(0)); in isNonConstantNegative()
450 SCEV *S = new (SCEVAllocator) SCEVConstant(ID.Intern(SCEVAllocator), V); in getConstant()
727 const SCEVConstant *LC = cast<SCEVConstant>(LHS); in CompareSCEVComplexity()
728 const SCEVConstant *RC = cast<SCEVConstant>(RHS); in CompareSCEVComplexity()
1192 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(Op)) in getTruncateExpr()
[all …]
H A DLoopUnrollAnalyzer.cpp33 if (auto *SC = dyn_cast<SCEVConstant>(S)) { in simplifyInstWithSCEV()
49 if (auto *SC = dyn_cast<SCEVConstant>(ValueAtIteration)) { in simplifyInstWithSCEV()
59 dyn_cast<SCEVConstant>(SE.getMinusSCEV(ValueAtIteration, Base)); in simplifyInstWithSCEV()
H A DLoopCacheAnalysis.cpp110 !isa<SCEVConstant>(BackedgeTakenCount)) in computeTripCount()
182 const SCEVConstant *Diff = dyn_cast<SCEVConstant>( in hasSpacialReuse()
238 const SCEVConstant *SCEVConst = dyn_cast_or_null<SCEVConstant>(Distance); in hasTemporalReuse()
313 if (auto ConstantCost = dyn_cast<SCEVConstant>(RefCost)) in computeRefCost()
H A DScalarEvolutionDivision.cpp110 void SCEVDivision::visitConstant(const SCEVConstant *Numerator) { in visitConstant()
111 if (const SCEVConstant *D = dyn_cast<SCEVConstant>(Denominator)) { in visitConstant()
H A DLoopAccessAnalysis.cpp161 static_cast<const SCEVConstant *>(SE->getOne(StrideVal->getType())); in replaceSymbolicStrideSCEV()
215 if (const auto *CStep = dyn_cast<SCEVConstant>(Step)) { in insert()
273 const SCEVConstant *C = dyn_cast<const SCEVConstant>(Diff); in getMinFromExprs()
1083 const SCEVConstant *C = dyn_cast<SCEVConstant>(Step); in getPtrStride()
1172 dyn_cast<SCEVConstant>(SE.getMinusSCEV(PtrSCEVB, PtrSCEVA)); in getPointersDiff()
1508 const SCEVConstant *C = dyn_cast<SCEVConstant>(Dist); in isDependent()
H A DIVDescriptors.cpp977 if (isa<SCEVConstant>(Step)) in getConstIntStepValue()
978 return dyn_cast<ConstantInt>(cast<SCEVConstant>(Step)->getValue()); in getConstIntStepValue()
1222 const SCEVConstant *ConstStep = dyn_cast<SCEVConstant>(Step); in isInductionPHI()
H A DVectorUtils.cpp230 const APInt &APStepVal = cast<SCEVConstant>(M->getOperand(0))->getAPInt(); in getStrideFromPointer()
1149 const SCEVConstant *DistToB = dyn_cast<SCEVConstant>( in analyzeInterleaving()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DLoopStrengthReduce.cpp679 const SCEVConstant *RC = dyn_cast<SCEVConstant>(RHS); in getExactSDiv()
692 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(LHS)) { in getExactSDiv()
759 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in ExtractImmediate()
965 if (isa<SCEVConstant>(Mul->getOperand(0))) in isHighCostExpansion()
1220 if (isa<SCEVUnknown>(Reg) || isa<SCEVConstant>(Reg)) in getSetupCost()
1270 if (auto *Step = dyn_cast<SCEVConstant>(AR->getStepRecurrence(*SE))) in RateRegister()
1275 if (isa<SCEVConstant>(LoopStep)) { in RateRegister()
1277 if (!isa<SCEVConstant>(LoopStart) && in RateRegister()
1287 if (!AR->isAffine() || !isa<SCEVConstant>(AR->getOperand(1))) { in RateRegister()
2444 if (const SCEVConstant *D = in OptimizeLoopTermCond()
[all …]
H A DAlignmentFromAssumptions.cpp104 if (const SCEVConstant *ConstDUSCEV = in getNewAlignmentDiff()
105 dyn_cast<SCEVConstant>(DiffUnitsSCEV)) { in getNewAlignmentDiff()
112 return cast<SCEVConstant>(AlignSCEV)->getValue()->getAlignValue(); in getNewAlignmentDiff()
H A DLoopIdiomRecognize.cpp393 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in runOnCountableLoop()
426 const SCEVConstant *ConstStride = cast<SCEVConstant>(StoreEv->getOperand(1)); in getStoreStride()
512 if (!isa<SCEVConstant>(StoreEv->getOperand(1))) in isLegalStore()
859 const SCEVConstant *StoreStride = in processLoopMemCpy()
860 dyn_cast<SCEVConstant>(StoreEv->getOperand(1)); in processLoopMemCpy()
861 const SCEVConstant *LoadStride = in processLoopMemCpy()
862 dyn_cast<SCEVConstant>(LoadEv->getOperand(1)); in processLoopMemCpy()
921 const SCEVConstant *ConstStride = dyn_cast<SCEVConstant>(Ev->getOperand(1)); in processLoopMemSet()
958 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation()
2633 if (auto *ExtraOffsetExprC = dyn_cast<SCEVConstant>(ExtraOffsetExpr)) in recognizeShiftUntilZero()
H A DLoopDataPrefetch.cpp159 const auto *ConstStride = dyn_cast<SCEVConstant>(AR->getStepRecurrence(*SE)); in isStrideLargeEnough()
351 if (const SCEVConstant *ConstPtrDiff = in runOnLoop()
352 dyn_cast<SCEVConstant>(PtrDiff)) { in runOnLoop()
H A DInductiveRangeCheckElimination.cpp855 if (!isa<SCEVConstant>(StepRec)) { in parseLoopStructure()
859 ConstantInt *StepCI = cast<SCEVConstant>(StepRec)->getValue(); in parseLoopStructure()
1438 const SCEVConstant *MinusOneS = in run()
1439 cast<SCEVConstant>(SE.getConstant(IVTy, -1, true /* isSigned */)); in run()
1615 const SCEVConstant *B = dyn_cast<SCEVConstant>( in computeSafeIterationSpace()
1622 const SCEVConstant *D = dyn_cast<SCEVConstant>(getStep()); in computeSafeIterationSpace()
H A DLoopInterchange.cpp140 const SCEVConstant *SCEVConst = in populateDependencyMatrix()
141 dyn_cast_or_null<SCEVConstant>(Distance); in populateDependencyMatrix()
312 if (!isa<SCEVConstant>(Step)) in getInductionVariable()
H A DIndVarSimplify.cpp872 const SCEV *Step = dyn_cast<SCEVConstant>(AR->getStepRecurrence(*SE)); in isLoopCounter()
1034 if (isa<SCEVConstant>(IVInit) && isa<SCEVConstant>(ExitCount)) in genLoopLimit()
H A DLoopPredication.cpp448 auto *Limit = dyn_cast<SCEVConstant>(LatchCheck.Limit); in isSafeToTruncateWideIVType()
449 auto *Start = dyn_cast<SCEVConstant>(LatchCheck.IV->getStart()); in isSafeToTruncateWideIVType()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DScalarEvolutionExpander.cpp300 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(S)) { in FactorOutConstant()
305 if (const SCEVConstant *FC = dyn_cast<SCEVConstant>(Factor)) { in FactorOutConstant()
326 if (const SCEVConstant *FC = dyn_cast<SCEVConstant>(Factor)) in FactorOutConstant()
327 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(M->getOperand(0))) in FactorOutConstant()
516 if (const SCEVConstant *C = dyn_cast<SCEVConstant>(Ops[0])) in expandAddToGEP()
668 if (isa<SCEVConstant>(S)) in getRelevantLoop()
903 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getRHS())) { in visitUDivExpr()
1932 if (const auto *SC = dyn_cast<SCEVConstant>(D->getRHS())) in expand()
2075 auto *Const = dyn_cast<SCEVConstant>(SE.getSCEV(PN)); in replaceCongruentIVs()
2288 if (auto *SC = dyn_cast<SCEVConstant>(S->getOperand(1))) in costAndCollectOperands()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
H A DScalarEvolutionDivision.h48 void visitConstant(const SCEVConstant *Numerator);
H A DScalarEvolutionExpressions.h47 class SCEVConstant : public SCEV {
52 SCEVConstant(const FoldingSetNodeIDRef ID, ConstantInt *v) : in SCEVConstant() function
572 return ((SC*)this)->visitConstant((const SCEVConstant*)S); in visit()
729 const SCEV *visitConstant(const SCEVConstant *Constant) { in visitConstant()
H A DDependenceAnalysis.h54 class SCEVConstant; variable
585 const SCEVConstant *collectConstantUpperBound(const Loop *l, Type *T) const;
H A DTargetTransformInfoImpl.h821 const SCEVConstant *getConstantStrideStep(ScalarEvolution *SE, in getConstantStrideStep()
826 return dyn_cast<SCEVConstant>(AddRec->getStepRecurrence(*SE)); in getConstantStrideStep()
831 const SCEVConstant *Step = getConstantStrideStep(SE, Ptr); in isConstantStridedAccessLessThan()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
H A DMVETailPredication.cpp327 auto *Base = dyn_cast<SCEVConstant>(AddExpr->getOperand(0)); in IsSafeActiveMask()
332 auto *Step = dyn_cast<SCEVConstant>(AddExpr->getOperand(1)); in IsSafeActiveMask()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
H A DHexagonLoopIdiomRecognition.cpp1805 if (auto *CV = dyn_cast<SCEVConstant>(CT)) in recognize()
1928 if (const SCEVConstant *SC = dyn_cast<SCEVConstant>(S->getOperand(1))) in getSCEVStride()
1998 if (const SCEVConstant *BECst = dyn_cast<SCEVConstant>(BECount)) in mayLoopAccessLocation()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Transforms/Utils/
H A DScalarEvolutionExpander.h446 Value *visitConstant(const SCEVConstant *S) { return S->getValue(); }

12