Lines Matching refs:InsertElementInst

501     if (auto *IE = dyn_cast<InsertElementInst>(I)) {  in visitExtractElementInst()
644 if (InsertElementInst *IEI = dyn_cast<InsertElementInst>(V)) { in collectSingleShuffleElements()
694 static bool replaceExtractElements(InsertElementInst *InsElt, in replaceExtractElements()
740 if (InsElt->hasOneUse() && isa<InsertElementInst>(InsElt->user_back())) in replaceExtractElements()
798 if (InsertElementInst *IEI = dyn_cast<InsertElementInst>(V)) { in collectShuffleElements()
1213 static Instruction *foldInsSequenceIntoSplat(InsertElementInst &InsElt) { in foldInsSequenceIntoSplat()
1216 if (InsElt.hasOneUse() && isa<InsertElementInst>(InsElt.user_back())) in foldInsSequenceIntoSplat()
1232 InsertElementInst *CurrIE = &InsElt; in foldInsSequenceIntoSplat()
1234 InsertElementInst *FirstIE = nullptr; in foldInsSequenceIntoSplat()
1243 auto *NextIE = dyn_cast<InsertElementInst>(CurrIE->getOperand(0)); in foldInsSequenceIntoSplat()
1273 FirstIE = InsertElementInst::Create(PoisonVec, SplatVal, Zero, "", in foldInsSequenceIntoSplat()
1287 static Instruction *foldInsEltIntoSplat(InsertElementInst &InsElt) { in foldInsEltIntoSplat()
1324 static Instruction *foldInsEltIntoIdentityShuffle(InsertElementInst &InsElt) { in foldInsEltIntoIdentityShuffle()
1383 static Instruction *hoistInsEltConst(InsertElementInst &InsElt2, in hoistInsEltConst()
1385 auto *InsElt1 = dyn_cast<InsertElementInst>(InsElt2.getOperand(0)); in hoistInsEltConst()
1398 return InsertElementInst::Create(NewInsElt1, Y, IdxC1); in hoistInsEltConst()
1406 static Instruction *foldConstantInsEltIntoShuffle(InsertElementInst &InsElt) { in foldConstantInsEltIntoShuffle()
1461 } else if (auto *IEI = dyn_cast<InsertElementInst>(Inst)) { in foldConstantInsEltIntoShuffle()
1510 static Instruction *narrowInsElt(InsertElementInst &InsElt, in narrowInsElt()
1543 static Instruction *foldTruncInsEltPair(InsertElementInst &InsElt, in foldTruncInsEltPair()
1606 Instruction *InstCombinerImpl::visitInsertElementInst(InsertElementInst &IE) { in visitInsertElementInst()
1627 return InsertElementInst::Create(NewIns, OtherScalar, in visitInsertElementInst()
1692 auto isShuffleRootCandidate = [](InsertElementInst &Insert) { in visitInsertElementInst()
1695 auto *InsertUser = dyn_cast<InsertElementInst>(Insert.user_back()); in visitInsertElementInst()
2682 return InsertElementInst::Create(V1, Scalar, IndexC); in foldShuffleWithInsert()
2690 return InsertElementInst::Create(V1, Scalar, IndexC); in foldShuffleWithInsert()