Home
last modified time | relevance | path

Searched refs:AddRec (Results 1 – 10 of 10) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DDependenceAnalysis.cpp891 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Expr); in checkSubscript() local
892 if (!AddRec) in checkSubscript()
894 const SCEV *Start = AddRec->getStart(); in checkSubscript()
895 const SCEV *Step = AddRec->getStepRecurrence(*SE); in checkSubscript()
896 const SCEV *UB = SE->getBackedgeTakenCount(AddRec->getLoop()); in checkSubscript()
900 if (!AddRec->getNoWrapFlags()) in checkSubscript()
907 Loops.set(mapSrcLoop(AddRec->getLoop())); in checkSubscript()
909 Loops.set(mapDstLoop(AddRec->getLoop())); in checkSubscript()
1026 if (const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Bound)) { in isKnownLessThan() local
1027 if (AddRec->isAffine()) { in isKnownLessThan()
[all …]
H A DScalarEvolution.cpp1248 if (const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Op)) { in getTruncateExpr() local
1250 for (const SCEV *Op : AddRec->operands()) in getTruncateExpr()
1252 return getAddRecExpr(Operands, AddRec->getLoop(), SCEV::FlagAnyWrap); in getTruncateExpr()
2615 const SCEVAddRecExpr *AddRec = cast<SCEVAddRecExpr>(Ops[Idx]); in getAddExpr() local
2616 const Loop *AddRecLoop = AddRec->getLoop(); in getAddExpr()
2628 LIOps.push_back(AddRec); in getAddExpr()
2633 LIOps.push_back(AddRec->getStart()); in getAddExpr()
2635 SmallVector<const SCEV *, 4> AddRecOps(AddRec->operands()); in getAddExpr()
2644 Flags = AddRec->getNoWrapFlags(setFlags(Flags, SCEV::FlagNW)); in getAddExpr()
2652 if (Ops[i] == AddRec) { in getAddExpr()
[all …]
H A DLoads.cpp293 auto *AddRec = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(Ptr)); in isDereferenceableAndAlignedInLoop() local
294 if (!AddRec || AddRec->getLoop() != L || !AddRec->isAffine()) in isDereferenceableAndAlignedInLoop()
296 auto* Step = dyn_cast<SCEVConstant>(AddRec->getStepRecurrence(SE)); in isDereferenceableAndAlignedInLoop()
309 auto *StartS = dyn_cast<SCEVUnknown>(AddRec->getStart()); in isDereferenceableAndAlignedInLoop()
H A DIVDescriptors.cpp1120 auto *AddRec = dyn_cast<SCEVAddRecExpr>(PSE.getSCEV(Val)); in getCastsForInductionPHI() local
1121 if (AddRec && PSE.areAddRecsEqualWithPreds(AddRec, AR)) in getCastsForInductionPHI()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DSimplifyIndVar.cpp1392 const SCEVAddRecExpr *AddRec = in getExtendedOperandRecurrence() local
1395 if (!AddRec || AddRec->getLoop() != L) in getExtendedOperandRecurrence()
1398 return {AddRec, ExtKind}; in getExtendedOperandRecurrence()
1435 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(WideExpr); in getWideRecurrence() local
1436 if (!AddRec || AddRec->getLoop() != L) in getWideRecurrence()
1438 return {AddRec, ExtKind}; in getWideRecurrence()
1877 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(OrigPhi)); in createWideIV() local
1878 if (!AddRec) in createWideIV()
1883 ? SE->getSignExtendExpr(AddRec, WideType) in createWideIV()
1884 : SE->getZeroExtendExpr(AddRec, WideType); in createWideIV()
[all …]
H A DLoopUtils.cpp1368 if (auto *AddRec = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(Inst))) in rewriteLoopExitValues() local
1369 if (AddRec->getLoop() == L) in rewriteLoopExitValues()
1370 ExitValue = AddRec->evaluateAtIteration(ExitCount, *SE); in rewriteLoopExitValues()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DLoopInterchange.cpp307 const SCEVAddRecExpr *AddRec = in getInductionVariable() local
309 if (!AddRec || !AddRec->isAffine()) in getInductionVariable()
311 const SCEV *Step = AddRec->getStepRecurrence(*SE); in getInductionVariable()
H A DLoopFuse.cpp1094 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(S); in accessDiffIsPositive() local
1095 if (!AddRec) in accessDiffIsPositive()
1097 return !DT.dominates(L0Header, AddRec->getLoop()->getHeader()) && in accessDiffIsPositive()
1098 !DT.dominates(AddRec->getLoop()->getHeader(), L0Header); in accessDiffIsPositive()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
H A DTargetTransformInfoImpl.h825 const SCEVAddRecExpr *AddRec = cast<SCEVAddRecExpr>(Ptr); in getConstantStrideStep() local
826 return dyn_cast<SCEVConstant>(AddRec->getStepRecurrence(*SE)); in getConstantStrideStep()
H A DScalarEvolution.h1191 void setNoWrapFlags(SCEVAddRecExpr *AddRec, SCEV::NoWrapFlags Flags);
1561 ConstantRange getRangeForAffineNoSelfWrappingAR(const SCEVAddRecExpr *AddRec,