HomeSort by: relevance | last modified time | path
    Searched refs:AddRec (Results 1 - 10 of 10) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
DependenceAnalysis.cpp 891 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Expr);
892 if (!AddRec)
894 const SCEV *Start = AddRec->getStart();
895 const SCEV *Step = AddRec->getStepRecurrence(*SE);
896 const SCEV *UB = SE->getBackedgeTakenCount(AddRec->getLoop());
900 if (!AddRec->getNoWrapFlags())
907 Loops.set(mapSrcLoop(AddRec->getLoop()));
909 Loops.set(mapDstLoop(AddRec->getLoop()));
1011 /// with some extra checking if S is an AddRec and we can prove less-than using
1026 if (const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Bound))
    [all...]
Loads.cpp 293 auto *AddRec = dyn_cast<SCEVAddRecExpr>(SE.getSCEV(Ptr));
294 if (!AddRec || AddRec->getLoop() != L || !AddRec->isAffine())
296 auto* Step = dyn_cast<SCEVConstant>(AddRec->getStepRecurrence(SE));
309 auto *StartS = dyn_cast<SCEVUnknown>(AddRec->getStart());
312 assert(SE.isLoopInvariant(StartS, L) && "implied by addrec definition");
ScalarEvolution.cpp 217 cl::desc("Max coefficients in AddRec during evolving"),
758 // Addrec complexity grows with operand count.
1248 if (const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(Op)) {
1250 for (const SCEV *Op : AddRec->operands())
1252 return getAddRecExpr(Operands, AddRec->getLoop(), SCEV::FlagAnyWrap);
1360 // allows normalizing a sign/zero extended AddRec as such: {sext/zext(Step +
1437 // Get the normalized zero or sign extended expression for this AddRec's Start.
1550 // Finds an integer D for an affine AddRec expression {C,+,x} such that the top
1627 // If we have special knowledge that this addrec won't overflow,
1647 // the addrec's type. The count is always unsigned
    [all...]
IVDescriptors.cpp 1120 auto *AddRec = dyn_cast<SCEVAddRecExpr>(PSE.getSCEV(Val));
1121 if (AddRec && PSE.areAddRecsEqualWithPreds(AddRec, AR))
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
SimplifyIndVar.cpp 1350 /// operands is an AddRec for this loop, return the AddRec and the kind of
1392 const SCEVAddRecExpr *AddRec =
1395 if (!AddRec || AddRec->getLoop() != L)
1398 return {AddRec, ExtKind};
1435 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(WideExpr);
1436 if (!AddRec || AddRec->getLoop() != L)
1438 return {AddRec, ExtKind}
    [all...]
LoopUtils.cpp 1368 if (auto *AddRec = dyn_cast<SCEVAddRecExpr>(SE->getSCEV(Inst)))
1369 if (AddRec->getLoop() == L)
1370 ExitValue = AddRec->evaluateAtIteration(ExitCount, *SE);
  /src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
LoopInterchange.cpp 307 const SCEVAddRecExpr *AddRec =
309 if (!AddRec || !AddRec->isAffine())
311 const SCEV *Step = AddRec->getStepRecurrence(*SE);
LoopFuse.cpp 1094 const SCEVAddRecExpr *AddRec = dyn_cast<SCEVAddRecExpr>(S);
1095 if (!AddRec)
1097 return !DT.dominates(L0Header, AddRec->getLoop()->getHeader()) &&
1098 !DT.dominates(AddRec->getLoop()->getHeader(), L0Header);
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
TargetTransformInfoImpl.h 825 const SCEVAddRecExpr *AddRec = cast<SCEVAddRecExpr>(Ptr);
826 return dyn_cast<SCEVConstant>(AddRec->getStepRecurrence(*SE));
ScalarEvolution.h 104 /// AddRec expressions may have a no-self-wraparound <NW> property if, in
294 /// This class represents an assumption made on an AddRec expression. Given an
295 /// affine AddRec expression {a,+,b}, we assume that it has the nssw or nusw
324 /// extending affine AddRec SCEV expressions when a SCEVWrapPredicate is
897 /// \p S by substitution of all AddRec sub-expression related to loop \p L
899 /// substitution of all AddRec sub-expressions related to loop \p L with post
900 /// increment of this AddRec in the loop \p L. In both cases all other AddRec
908 /// We can see that for the first AddRec sub-expression it was replaced with
910 /// increment value) for the second one. In both cases AddRec expressio
    [all...]

Completed in 30 milliseconds