Home
last modified time | relevance | path

Searched refs:ExtractElementInst (Results 1 – 25 of 47) sorted by relevance

12

/llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp88 ExtractElementInst *getShuffleExtract(ExtractElementInst *Ext0,
91 bool isExtractExtractCheap(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
95 void foldExtExtCmp(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
97 void foldExtExtBinop(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
258 ExtractElementInst *Ext0, ExtractElementInst *Ext1, in getShuffleExtract()
414 static ExtractElementInst *translateExtract(ExtractElementInst *ExtElt, in translateExtract()
503 auto *Ext0 = cast<ExtractElementInst>(I0); in foldExtractExtract()
504 auto *Ext1 = cast<ExtractElementInst>(I1); in foldExtractExtract()
510 ExtractElementInst *ExtractToChange; in foldExtractExtract()
516 ExtractElementInst *NewExtract = in foldExtractExtract()
[all …]
H A DSLPVectorizer.cpp215 if (!isa<InsertElementInst, ExtractElementInst>(V) && in isVectorLikeInstWithConstOps()
223 if (isa<ExtractElementInst>(I)) in isVectorLikeInstWithConstOps()
355 auto *EI0 = cast<ExtractElementInst>(*It); in isFixedVectorShuffle()
369 auto *EI = cast<ExtractElementInst>(VL[I]); in isFixedVectorShuffle()
1274 (isa<ExtractElementInst>(I1) && isa<ExtractElementInst>(I2))) && in getScoreAtLevelRec()
4482 if (isa<ExtractElementInst, UndefValue>(V)) in generateKeySubkey()
5854 auto *EE = cast<ExtractElementInst>(V); in getEntryCost()
7076 if (isa<ExtractElementInst>(EU.Scalar)) in getTreeCost()
10703 if (!isa<ExtractElementInst>(RHS) || in getRdxKind()
10707 if (!isa<ExtractElementInst>(LHS) || in getRdxKind()
[all …]
/llvm-project-15.0.7/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp120 bool tryReplaceExtracts(ArrayRef<ExtractElementInst *> Extracts,
302 SmallVector<ExtractElementInst *, 4> Extracts; in lowerInterleavedLoad()
308 auto *Extract = dyn_cast<ExtractElementInst>(User); in lowerInterleavedLoad()
429 ArrayRef<ExtractElementInst *> Extracts, in tryReplaceExtracts()
438 DenseMap<ExtractElementInst *, std::pair<Value *, int>> ReplacementMap; in tryReplaceExtracts()
/llvm-project-15.0.7/llvm/include/llvm/Analysis/
H A DMemoryBuiltins.h35 class ExtractElementInst; variable
223 SizeOffsetType visitExtractElementInst(ExtractElementInst &I);
297 SizeOffsetEvalType visitExtractElementInst(ExtractElementInst &I);
/llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp100 Instruction *InstCombinerImpl::scalarizePHI(ExtractElementInst &EI, in scalarizePHI()
109 if (ExtractElementInst *EU = dyn_cast<ExtractElementInst>(U)) { in scalarizePHI()
149 ExtractElementInst::Create(B0->getOperand(opId), Elt, in scalarizePHI()
158 Instruction *newEI = ExtractElementInst::Create(PHIInVal, Elt, ""); in scalarizePHI()
252 return ExtractElementInst::Create(NewBC, Ext.getIndexOperand()); in foldBitcastExtElt()
322 ExtractElementInst *EEI = cast<ExtractElementInst>(UserInstr); in findDemandedEltsBySingleUser()
534 return ExtractElementInst::Create( in visitExtractElementInst()
631 } else if (ExtractElementInst *EI = dyn_cast<ExtractElementInst>(ScalarOp)){ in collectSingleShuffleElements()
664 ExtractElementInst *ExtElt, in replaceExtractElements()
726 ExtractElementInst *OldExt = dyn_cast<ExtractElementInst>(U); in replaceExtractElements()
[all …]
H A DInstCombineInternal.h169 Instruction *visitExtractElementInst(ExtractElementInst &EI);
320 Instruction *scalarizePHI(ExtractElementInst &EI, PHINode *PN);
321 Instruction *foldBitcastExtElt(ExtractElementInst &ExtElt);
H A DInstCombineNegator.cpp352 auto *EEI = cast<ExtractElementInst>(I); in visitImpl()
/llvm-project-15.0.7/llvm/test/Analysis/ValueTracking/
H A Dknown-bits-from-operator-constexpr.ll5 ; casting from llvm::Operator to ExtractElementInst. That does not work
/llvm-project-15.0.7/llvm/lib/Transforms/Scalar/
H A DRewriteStatepointsForGC.cpp675 if (isa<ExtractElementInst>(I)) in findBaseDefiningValue()
726 !isa<ExtractElementInst>(V) && !isa<InsertElementInst>(V) && in isOriginalBaseResult()
904 isa<ExtractElementInst>(BDV) || isa<InsertElementInst>(BDV) || in findBasePointer()
931 } else if (auto *EE = dyn_cast<ExtractElementInst>(BDV)) { in findBasePointer()
1101 if (isa<ExtractElementInst>(I)) { in findBasePointer()
1102 auto *EE = cast<ExtractElementInst>(I); in findBasePointer()
1106 auto *BaseInst = ExtractElementInst::Create( in findBasePointer()
1151 } else if (isa<ExtractElementInst>(I)) { in findBasePointer()
1264 dyn_cast<ExtractElementInst>(State.getBaseValue())) { in findBasePointer()
1265 Value *InVal = cast<ExtractElementInst>(BDV)->getVectorOperand(); in findBasePointer()
H A DScalarizer.cpp222 bool visitExtractElementInst(ExtractElementInst &EEI);
832 bool ScalarizerVisitor::visitExtractElementInst(ExtractElementInst &EEI) { in visitExtractElementInst()
H A DEarlyCSE.cpp132 isa<ExtractElementInst>(Inst) || isa<InsertElementInst>(Inst) || in canHandle()
282 isa<ExtractElementInst>(Inst) || isa<InsertElementInst>(Inst) || in getHashValueImpl()
/llvm-project-15.0.7/llvm/lib/Analysis/
H A DCodeMetrics.cpp163 if (isa<ExtractElementInst>(I) || I.getType()->isVectorTy()) in analyzeBasicBlock()
H A DLint.cpp114 void visitExtractElementInst(ExtractElementInst &I);
603 void Lint::visitExtractElementInst(ExtractElementInst &I) { in visitExtractElementInst()
H A DMemoryBuiltins.cpp837 ObjectSizeOffsetVisitor::visitExtractElementInst(ExtractElementInst&) { in visitExtractElementInst() argument
1169 ObjectSizeOffsetEvaluator::visitExtractElementInst(ExtractElementInst&) { in visitExtractElementInst() argument
H A DCFLGraph.h477 void visitExtractElementInst(ExtractElementInst &Inst) { in visitExtractElementInst()
/llvm-project-15.0.7/llvm/lib/Target/X86/
H A DX86PartialReduction.cpp354 static Value *matchAddReduction(const ExtractElementInst &EE, in matchAddReduction()
516 auto *EE = dyn_cast<ExtractElementInst>(&I); in runOnFunction()
/llvm-project-15.0.7/llvm/lib/ExecutionEngine/Interpreter/
H A DInterpreter.h163 void visitExtractElementInst(ExtractElementInst &I);
/llvm-project-15.0.7/llvm/lib/Target/SPIRV/
H A DSPIRVEmitIntrinsics.cpp84 Instruction *visitExtractElementInst(ExtractElementInst &I);
242 SPIRVEmitIntrinsics::visitExtractElementInst(ExtractElementInst &I) { in visitExtractElementInst()
/llvm-project-15.0.7/llvm/include/llvm/IR/
H A DInstructions.h1872 class ExtractElementInst : public Instruction {
1873 ExtractElementInst(Value *Vec, Value *Idx, const Twine &NameStr = "",
1875 ExtractElementInst(Value *Vec, Value *Idx, const Twine &NameStr,
1882 ExtractElementInst *cloneImpl() const;
1885 static ExtractElementInst *Create(Value *Vec, Value *Idx,
1888 return new(2) ExtractElementInst(Vec, Idx, NameStr, InsertBefore);
1891 static ExtractElementInst *Create(Value *Vec, Value *Idx,
1894 return new(2) ExtractElementInst(Vec, Idx, NameStr, InsertAtEnd);
1923 struct OperandTraits<ExtractElementInst> :
1924 public FixedNumOperandTraits<ExtractElementInst, 2> {
[all …]
H A DInstVisitor.h191 RetTy visitExtractElementInst(ExtractElementInst &I) { DELEGATE(Instruction);} in visitExtractElementInst()
H A DInstruction.def214 HANDLE_OTHER_INST(61, ExtractElement, ExtractElementInst)// extract from vector
/llvm-project-15.0.7/llvm/lib/IR/
H A DInstructions.cpp1858 ExtractElementInst::ExtractElementInst(Value *Val, Value *Index, in ExtractElementInst() function in ExtractElementInst
1863 OperandTraits<ExtractElementInst>::op_begin(this), in ExtractElementInst()
1872 ExtractElementInst::ExtractElementInst(Value *Val, Value *Index, in ExtractElementInst() function in ExtractElementInst
1877 OperandTraits<ExtractElementInst>::op_begin(this), in ExtractElementInst()
1887 bool ExtractElementInst::isValidOperands(const Value *Val, const Value *Index) { in isValidOperands()
4772 ExtractElementInst *ExtractElementInst::cloneImpl() const { in cloneImpl()
4773 return ExtractElementInst::Create(getOperand(0), getOperand(1)); in cloneImpl()
/llvm-project-15.0.7/llvm/lib/Target/AMDGPU/
H A DAMDGPUPerfHintAnalysis.cpp188 if (auto E = dyn_cast<ExtractElementInst>(V)) { in isIndirectAccess()
/llvm-project-15.0.7/llvm/lib/FuzzMutate/
H A DOperations.cpp291 return ExtractElementInst::Create(Srcs[0], Srcs[1], "E", Inst); in extractElementDescriptor()
/llvm-project-15.0.7/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp480 Value *V = ExtractElementInst::Create( in Act()

12