Searched refs:IVInc (Results 1 – 3 of 3) sorted by relevance
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/ |
H A D | CodeGenPrepare.cpp | 1502 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 D | LoopStrengthReduce.cpp | 2087 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 D | LoopVectorize.cpp | 6982 Instruction *IVInc = cast<Instruction>( in cost() local 6984 SmallVector<Instruction *> IVInsts = {IV, IVInc}; in cost()
|