Home
last modified time | relevance | path

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

12

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp93 ExtractElementInst *getShuffleExtract(ExtractElementInst *Ext0,
96 bool isExtractExtractCheap(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
100 void foldExtExtCmp(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
102 void foldExtExtBinop(ExtractElementInst *Ext0, ExtractElementInst *Ext1,
338 ExtractElementInst *Ext0, ExtractElementInst *Ext1, in getShuffleExtract()
496 static ExtractElementInst *translateExtract(ExtractElementInst *ExtElt, in translateExtract()
585 auto *Ext0 = cast<ExtractElementInst>(I0); in foldExtractExtract()
586 auto *Ext1 = cast<ExtractElementInst>(I1); in foldExtractExtract()
592 ExtractElementInst *ExtractToChange; in foldExtractExtract()
598 ExtractElementInst *NewExtract = in foldExtractExtract()
[all …]
H A DSLPVectorizer.cpp225 if (isa<ExtractElementInst>(I)) in isVectorLikeInstWithConstOps()
450 auto *EI0 = cast<ExtractElementInst>(*It); in isFixedVectorShuffle()
464 auto *EI = cast<ExtractElementInst>(VL[I]); in isFixedVectorShuffle()
1450 (isa<ExtractElementInst>(I1) && isa<ExtractElementInst>(I2))) && in getScoreAtLevelRec()
5159 if (isa<ExtractElementInst, UndefValue>(V)) in generateKeySubkey()
5578 return isa<ExtractElementInst>(V) || in buildTree_rec()
7467 auto *EE = cast<ExtractElementInst>(V); in adjustExtracts()
7996 auto *EE = cast<ExtractElementInst>(I); in getEntryCost()
14168 if (!isa<ExtractElementInst>(RHS) || in getRdxKind()
14172 if (!isa<ExtractElementInst>(LHS) || in getRdxKind()
[all …]
H A DLoopVectorizationLegality.cpp955 isa<ExtractElementInst>(I)) { in canVectorizeInstrs()
/freebsd/contrib/llvm-project/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp124 bool tryReplaceExtracts(ArrayRef<ExtractElementInst *> Extracts,
285 SmallVector<ExtractElementInst *, 4> Extracts; in lowerInterleavedLoad()
291 auto *Extract = dyn_cast<ExtractElementInst>(User); in lowerInterleavedLoad()
414 ArrayRef<ExtractElementInst *> Extracts, in tryReplaceExtracts()
423 DenseMap<ExtractElementInst *, std::pair<Value *, int>> ReplacementMap; in tryReplaceExtracts()
/freebsd/contrib/llvm-project/llvm/include/llvm/Analysis/
H A DMemoryBuiltins.h36 class ExtractElementInst; variable
251 SizeOffsetAPInt visitExtractElementInst(ExtractElementInst &I);
330 SizeOffsetValue visitExtractElementInst(ExtractElementInst &I);
/freebsd/contrib/llvm-project/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()
262 return ExtractElementInst::Create(NewBC, Ext.getIndexOperand()); in foldBitcastExtElt()
331 ExtractElementInst *EEI = cast<ExtractElementInst>(UserInstr); in findDemandedEltsBySingleUser()
557 return ExtractElementInst::Create( in visitExtractElementInst()
655 } else if (ExtractElementInst *EI = dyn_cast<ExtractElementInst>(ScalarOp)){ in collectSingleShuffleElements()
688 ExtractElementInst *ExtElt, in replaceExtractElements()
750 ExtractElementInst *OldExt = dyn_cast<ExtractElementInst>(U); in replaceExtractElements()
[all …]
H A DInstCombineInternal.h174 Instruction *visitExtractElementInst(ExtractElementInst &EI);
375 Instruction *scalarizePHI(ExtractElementInst &EI, PHINode *PN);
376 Instruction *foldBitcastExtElt(ExtractElementInst &ExtElt);
H A DInstCombineNegator.cpp359 auto *EEI = cast<ExtractElementInst>(I); in visitImpl()
H A DInstCombineCasts.cpp428 return ExtractElementInst::Create(VecInput, IC.Builder.getInt32(Elt)); in foldVecTruncToExtElt()
857 return ExtractElementInst::Create(BitCast, Builder.getInt32(NewIdx)); in visitTrunc()
2267 return ExtractElementInst::Create(NewBC, Index); in canonicalizeBitCastExtElt()
/freebsd/contrib/llvm-project/llvm/lib/Analysis/
H A DCodeMetrics.cpp163 if (isa<ExtractElementInst>(I) || I.getType()->isVectorTy()) in analyzeBasicBlock()
H A DLint.cpp112 void visitExtractElementInst(ExtractElementInst &I);
605 void Lint::visitExtractElementInst(ExtractElementInst &I) { in visitExtractElementInst()
H A DMemoryBuiltins.cpp835 ObjectSizeOffsetVisitor::visitExtractElementInst(ExtractElementInst &) { in visitExtractElementInst() argument
1181 ObjectSizeOffsetEvaluator::visitExtractElementInst(ExtractElementInst &) { in visitExtractElementInst() argument
/freebsd/contrib/llvm-project/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()
/freebsd/contrib/llvm-project/llvm/lib/ExecutionEngine/Interpreter/
H A DInterpreter.h163 void visitExtractElementInst(ExtractElementInst &I);
/freebsd/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DRewriteStatepointsForGC.cpp609 if (isa<ExtractElementInst>(I)) in findBaseDefiningValue()
660 !isa<ExtractElementInst>(V) && !isa<InsertElementInst>(V) && in isOriginalBaseResult()
838 isa<ExtractElementInst>(BDV) || isa<InsertElementInst>(BDV) || in findBasePointer()
865 } else if (auto *EE = dyn_cast<ExtractElementInst>(BDV)) { in findBasePointer()
990 if (isa<InsertElementInst>(I) || isa<ExtractElementInst>(I)) in findBasePointer()
1102 } else if (isa<ExtractElementInst>(I)) { in findBasePointer()
1215 dyn_cast<ExtractElementInst>(State.getBaseValue())) { in findBasePointer()
1216 Value *InVal = cast<ExtractElementInst>(BDV)->getVectorOperand(); in findBasePointer()
H A DScalarizer.cpp306 bool visitExtractElementInst(ExtractElementInst &EEI);
1013 bool ScalarizerVisitor::visitExtractElementInst(ExtractElementInst &EEI) { in visitExtractElementInst()
H A DEarlyCSE.cpp148 isa<SelectInst>(Inst) || isa<ExtractElementInst>(Inst) || in canHandle()
311 assert((isa<CallInst>(Inst) || isa<ExtractElementInst>(Inst) || in getHashValueImpl()
/freebsd/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstructions.h1836 class ExtractElementInst : public Instruction {
1837 ExtractElementInst(Value *Vec, Value *Idx, const Twine &NameStr = "",
1839 ExtractElementInst(Value *Vec, Value *Idx, const Twine &NameStr,
1846 ExtractElementInst *cloneImpl() const;
1849 static ExtractElementInst *Create(Value *Vec, Value *Idx,
1852 return new(2) ExtractElementInst(Vec, Idx, NameStr, InsertBefore);
1855 static ExtractElementInst *Create(Value *Vec, Value *Idx,
1858 return new(2) ExtractElementInst(Vec, Idx, NameStr, InsertAtEnd);
1887 struct OperandTraits<ExtractElementInst> :
1888 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
/freebsd/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVEmitIntrinsics.cpp93 Instruction *visitExtractElementInst(ExtractElementInst &I);
402 SPIRVEmitIntrinsics::visitExtractElementInst(ExtractElementInst &I) { in visitExtractElementInst()
/freebsd/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp1830 ExtractElementInst::ExtractElementInst(Value *Val, Value *Index, in ExtractElementInst() function in ExtractElementInst
1835 OperandTraits<ExtractElementInst>::op_begin(this), in ExtractElementInst()
1844 ExtractElementInst::ExtractElementInst(Value *Val, Value *Index, in ExtractElementInst() function in ExtractElementInst
1849 OperandTraits<ExtractElementInst>::op_begin(this), in ExtractElementInst()
1859 bool ExtractElementInst::isValidOperands(const Value *Val, const Value *Index) { in isValidOperands()
4912 ExtractElementInst *ExtractElementInst::cloneImpl() const { in cloneImpl()
4913 return ExtractElementInst::Create(getOperand(0), getOperand(1)); in cloneImpl()
/freebsd/contrib/llvm-project/llvm/lib/Target/AMDGPU/
H A DAMDGPUPerfHintAnalysis.cpp188 if (auto E = dyn_cast<ExtractElementInst>(V)) { in isIndirectAccess()
/freebsd/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DOperations.cpp314 return ExtractElementInst::Create(Srcs[0], Srcs[1], "E", Inst); in extractElementDescriptor()
/freebsd/contrib/llvm-project/llvm/tools/llvm-stress/
H A Dllvm-stress.cpp482 Value *V = ExtractElementInst::Create( in Act()

12