| /freebsd/contrib/llvm-project/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineVectorOps.cpp | 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() [all …]
|
| H A D | InstCombineCasts.cpp | 656 auto *InsElt = dyn_cast<InsertElementInst>(Trunc.getOperand(0)); in shrinkInsertElt() 671 return InsertElementInst::Create(NarrowUndef, NarrowOp, Index); in shrinkInsertElt() 2089 return InsertElementInst::Create(Vec, NewCast, Index); in visitPtrToInt() 2685 return InsertElementInst::Create(PoisonValue::get(DestTy), Elem, in visitBitCast() 2724 if (auto *InsElt = dyn_cast<InsertElementInst>(Src)) in visitBitCast()
|
| H A D | InstCombineNegator.cpp | 386 auto *IEI = cast<InsertElementInst>(I); in visitImpl()
|
| H A D | InstCombineInternal.h | 174 Instruction *visitInsertElementInst(InsertElementInst &IE);
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Transforms/Vectorize/ |
| H A D | SLPVectorizer.h | 37 class InsertElementInst; variable 140 bool vectorizeInsertElementInst(InsertElementInst *IEI, BasicBlock *BB,
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/ |
| H A D | SPIRVRegularizer.cpp | 128 Repl = InsertElementInst::Create( in runLowerConstExpr() 224 // CI->getOperand(1) to a vector Arg0Ty. However, we use InsertElementInst in visitCallScalToVec() 238 InsertElementInst::Create(PVal, CI->getOperand(1), ConstInt, "", CI); in visitCallScalToVec()
|
| H A D | SPIRVEmitIntrinsics.cpp | 159 Instruction *visitInsertElementInst(InsertElementInst &I); 1223 Instruction *SPIRVEmitIntrinsics::visitInsertElementInst(InsertElementInst &I) { in visitInsertElementInst()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | SLPVectorizer.cpp | 266 if (!isa<InsertElementInst, ExtractElementInst>(V) && in isVectorLikeInstWithConstOps() 276 assert(isa<InsertElementInst>(V) && "Expected only insertelement."); in isVectorLikeInstWithConstOps() 389 static_assert(std::is_same_v<T, InsertElementInst> || in getInsertExtractIndex() 414 if (auto Index = getInsertExtractIndex<InsertElementInst>(Inst, Offset)) in getElementIndex() 494 while (auto *II = dyn_cast<InsertElementInst>(Base)) { 4877 InsertElementInst *VU, InsertElementInst *V, in areTwoInsertFromSameBuildVector() 4878 function_ref<Value *(InsertElementInst *)> GetBaseOperand) { in areTwoInsertFromSameBuildVector() 4912 IE1 = dyn_cast_or_null<InsertElementInst>(GetBaseOperand(IE1)); in areTwoInsertFromSameBuildVector() 4921 IE2 = dyn_cast_or_null<InsertElementInst>(GetBaseOperan in areTwoInsertFromSameBuildVector() [all...] |
| /freebsd/contrib/llvm-project/llvm/lib/IR/ |
| H A D | ReplaceConstant.cpp | 42 V = InsertElementInst::Create(V, Op, ConstantInt::get(IdxTy, Idx), "", in expandUser()
|
| H A D | Instructions.cpp | 1625 InsertElementInst::InsertElementInst(Value *Vec, Value *Elt, Value *Index, in InsertElementInst() function in InsertElementInst 1629 OperandTraits<InsertElementInst>::op_begin(this), 3, in InsertElementInst() 1639 bool InsertElementInst::isValidOperands(const Value *Vec, const Value *Elt, in isValidOperands() 4330 InsertElementInst *InsertElementInst::cloneImpl() const { in cloneImpl() 4331 return InsertElementInst::Create(getOperand(0), getOperand(1), getOperand(2)); in cloneImpl()
|
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/ |
| H A D | RewriteStatepointsForGC.cpp | 384 if (isa<InsertElementInst>(I)) { in findBaseDefiningValueOfVector() 660 !isa<ExtractElementInst>(V) && !isa<InsertElementInst>(V) && in isOriginalBaseResult() 838 isa<ExtractElementInst>(BDV) || isa<InsertElementInst>(BDV) || in findBasePointer() 867 } else if (auto *IE = dyn_cast<InsertElementInst>(BDV)) { in findBasePointer() 990 if (isa<InsertElementInst>(I) || isa<ExtractElementInst>(I)) in findBasePointer() 1092 assert(!isa<InsertElementInst>(I) || State.isConflict()); in findBasePointer() 1104 } else if (isa<InsertElementInst>(I)) { in findBasePointer() 1221 } else if (auto *BaseIE = dyn_cast<InsertElementInst>(State.getBaseValue())){ in findBasePointer() 1222 auto *BdvIE = cast<InsertElementInst>(BDV); in findBasePointer()
|
| H A D | Scalarizer.cpp | 305 bool visitInsertElementInst(InsertElementInst &IEI); 390 InsertElementInst *Insert = dyn_cast<InsertElementInst>(V); in operator []() 962 bool ScalarizerVisitor::visitInsertElementInst(InsertElementInst &IEI) { in visitInsertElementInst()
|
| H A D | EarlyCSE.cpp | 149 isa<InsertElementInst>(Inst) || isa<ShuffleVectorInst>(Inst) || in canHandle() 312 isa<InsertElementInst>(Inst) || isa<ShuffleVectorInst>(Inst) || in getHashValueImpl()
|
| /freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Interpreter/ |
| H A D | Interpreter.h | 164 void visitInsertElementInst(InsertElementInst &I);
|
| /freebsd/contrib/llvm-project/llvm/lib/Analysis/ |
| H A D | Lint.cpp | 118 void visitInsertElementInst(InsertElementInst &I); 600 void Lint::visitInsertElementInst(InsertElementInst &I) { in visitInsertElementInst()
|
| H A D | LazyValueInfo.cpp | 431 solveBlockValueInsertElement(InsertElementInst *IEI, BasicBlock *BB); 662 if (auto *IEI = dyn_cast<InsertElementInst>(BBI)) in solveBlockValueImpl() 1047 LazyValueInfoImpl::solveBlockValueInsertElement(InsertElementInst *IEI, in solveBlockValueInsertElement()
|
| H A D | VectorUtils.cpp | 178 if (InsertElementInst *III = dyn_cast<InsertElementInst>(V)) { in findScalarElement()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/IR/ |
| H A D | Instructions.h | 1744 class InsertElementInst : public Instruction { 1745 InsertElementInst(Value *Vec, Value *NewElt, Value *Idx, 1753 InsertElementInst *cloneImpl() const; 1756 static InsertElementInst *Create(Value *Vec, Value *NewElt, Value *Idx, 1759 return new(3) InsertElementInst(Vec, NewElt, Idx, NameStr, InsertBefore); 1786 struct OperandTraits<InsertElementInst> : 1787 public FixedNumOperandTraits<InsertElementInst, 3> { 1790 DEFINE_TRANSPARENT_OPERAND_ACCESSORS(InsertElementInst, Value)
|
| H A D | InstVisitor.h | 192 RetTy visitInsertElementInst(InsertElementInst &I) { DELEGATE(Instruction);} in visitInsertElementInst()
|
| H A D | Instruction.def | 215 HANDLE_OTHER_INST(62, InsertElement, InsertElementInst) // insert into vector
|
| /freebsd/contrib/llvm-project/llvm/lib/FuzzMutate/ |
| H A D | Operations.cpp | 322 return InsertElementInst::Create(Srcs[0], Srcs[1], Srcs[2], "I", Inst); in insertElementDescriptor()
|
| /freebsd/contrib/llvm-project/llvm/tools/llvm-stress/ |
| H A D | llvm-stress.cpp | 530 Value *V = InsertElementInst::Create( in Act()
|
| /freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/ |
| H A D | AMDGPULowerBufferFatPointers.cpp | 761 PtrParts visitInsertElementInst(InsertElementInst &I); 1431 PtrParts SplitPtrStructs::visitInsertElementInst(InsertElementInst &I) { in visitInsertElementInst()
|
| H A D | AMDGPUPromoteAlloca.cpp | 1209 if (isa<InsertValueInst>(User) || isa<InsertElementInst>(User)) in collectUsesWithPtrTypes()
|
| /freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/ |
| H A D | TargetTransformInfoImpl.h | 1342 auto *IE = dyn_cast<InsertElementInst>(U); in getInstructionCost()
|