Home
last modified time | relevance | path

Searched refs:IVInc (Results 1 – 3 of 3) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DCodeGenPrepare.cpp1502 static bool matchIncrement(const Instruction *IVInc, Instruction *&LHS, in matchIncrement() argument
1504 if (match(IVInc, m_Add(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement()
1505 match(IVInc, m_ExtractValue<0>(m_Intrinsic<Intrinsic::uadd_with_overflow>( in matchIncrement()
1508 if (match(IVInc, m_Sub(m_Instruction(LHS), m_Constant(Step))) || in matchIncrement()
1509 match(IVInc, m_ExtractValue<0>(m_Intrinsic<Intrinsic::usub_with_overflow>( in matchIncrement()
1525 auto *IVInc = in getIVIncrement() local
1527 if (!IVInc || LI->getLoopFor(IVInc->getParent()) != L) in getIVIncrement()
1531 if (matchIncrement(IVInc, LHS, Step) && LHS == PN) in getIVIncrement()
1532 return std::make_pair(IVInc, Step); in getIVIncrement()
1545 if (auto IVInc = getIVIncrement(PN, LI)) in isIVIncrement() local
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DLoopStrengthReduce.cpp2087 struct IVInc { struct
2092 IVInc(Instruction *U, Value *O, const SCEV *E) in IVInc() function
2099 SmallVector<IVInc, 1> Incs;
2103 IVChain(const IVInc &Head, const SCEV *Base) in IVChain()
2106 using const_iterator = SmallVectorImpl<IVInc>::const_iterator;
2121 void add(const IVInc &X) { Incs.push_back(X); } in add()
3101 for (const IVInc &Inc : Chain) { in isProfitableChain()
3201 IVChainVec.push_back(IVChain(IVInc(UserInst, IVOper, LastIncExpr), in ChainInstruction()
3210 IVChainVec[ChainIdx].add(IVInc(UserInst, IVOper, LastIncExpr)); in ChainInstruction()
3349 for (const IVInc &Inc : Chain) { in FinalizeChain()
[all …]
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DLoopVectorize.cpp6982 Instruction *IVInc = cast<Instruction>( in cost() local
6984 SmallVector<Instruction *> IVInsts = {IV, IVInc}; in cost()