Home
last modified time | relevance | path

Searched refs:ShuffleVectorInst (Results 1 – 25 of 80) sorted by relevance

1234

/freebsd-14.2/contrib/llvm-project/llvm/lib/CodeGen/
H A DInterleavedAccessPass.cpp125 ArrayRef<ShuffleVectorInst *> Shuffles);
284 SmallVector<ShuffleVectorInst *, 4> Shuffles; in lowerInterleavedLoad()
288 SmallSetVector<ShuffleVectorInst *, 4> BinOpShuffles; in lowerInterleavedLoad()
298 auto *SVI = dyn_cast<ShuffleVectorInst>(U); in lowerInterleavedLoad()
302 BinOpShuffles.insert(cast<ShuffleVectorInst>(SVI)); in lowerInterleavedLoad()
306 auto *SVI = dyn_cast<ShuffleVectorInst>(User); in lowerInterleavedLoad()
381 ArrayRef<ShuffleVectorInst *> BinOpShuffles, in replaceBinOpShuffles()
382 SmallVectorImpl<ShuffleVectorInst *> &Shuffles, LoadInst *LI) { in replaceBinOpShuffles()
394 auto *NewSVI2 = new ShuffleVectorInst( in replaceBinOpShuffles()
415 ArrayRef<ShuffleVectorInst *> Shuffles) { in tryReplaceExtracts()
[all …]
H A DInterleavedLoadCombinePass.cpp670 ShuffleVectorInst *SVI = nullptr;
714 ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(V); in compute()
787 static bool computeFromSVI(ShuffleVectorInst *SVI, VectorInfo &Result, in computeFromSVI()
1267 if (auto SVI = dyn_cast<ShuffleVectorInst>(&I)) { in run()
H A DComplexDeinterleavingPass.cpp1654 auto *SVI = dyn_cast<ShuffleVectorInst>(RootI); in identifyRoot()
1688 auto *RealShuffle = dyn_cast<ShuffleVectorInst>(Real); in identifyDeinterleave()
1689 auto *ImagShuffle = dyn_cast<ShuffleVectorInst>(Imag); in identifyDeinterleave()
1729 auto CheckType = [&](ShuffleVectorInst *Shuffle) { in identifyDeinterleave()
1742 auto CheckDeinterleavingShuffle = [&](ShuffleVectorInst *Shuffle) -> bool { in identifyDeinterleave()
1796 } else if (auto *Shuf = dyn_cast<ShuffleVectorInst>(V)) { in identifySplat()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/InstCombine/
H A DInstCombineVectorOps.cpp340 ShuffleVectorInst *Shuffle = cast<ShuffleVectorInst>(UserInstr); in findDemandedEltsBySingleUser()
1274 return new ShuffleVectorInst(FirstIE, Mask); in foldInsSequenceIntoSplat()
1311 return new ShuffleVectorInst(Op0, NewMask); in foldInsEltIntoSplat()
2099 auto *ShufOp = dyn_cast<ShuffleVectorInst>(Op0); in foldSelectShuffleOfSelectShuffle()
2106 ShufOp = dyn_cast<ShuffleVectorInst>(Op1); in foldSelectShuffleOfSelectShuffle()
2134 return new ShuffleVectorInst(X, Y, NewMask); in foldSelectShuffleOfSelectShuffle()
2221 return new ShuffleVectorInst(NewIns, NewMask); in canonicalizeInsertSplat()
2578 return new ShuffleVectorInst(X, Y, NewMask); in foldIdentityExtractShuffle()
2734 return new ShuffleVectorInst(X, Y, NewMask); in foldIdentityPaddedShuffles()
3023 ShuffleVectorInst* LHSShuffle = dyn_cast<ShuffleVectorInst>(LHS); in visitShuffleVectorInst()
[all …]
H A DInstCombineCasts.cpp112 Res = new ShuffleVectorInst(Op0, Op1, in EvaluateInDifferentType()
113 cast<ShuffleVectorInst>(I)->getShuffleMask()); in EvaluateInDifferentType()
216 return new ShuffleVectorInst(CastX, Mask); in commonCastTransforms()
624 auto *Shuf = dyn_cast<ShuffleVectorInst>(Trunc.getOperand(0)); in shrinkSplatShuffle()
631 return new ShuffleVectorInst(NarrowOp, Shuf->getShuffleMask()); in shrinkSplatShuffle()
2089 return new ShuffleVectorInst(InVal, V2, ShuffleMask); in optimizeVectorResizeWithIntegerBitCasts()
2663 if (auto *Shuf = dyn_cast<ShuffleVectorInst>(Src)) { in visitBitCast()
2685 return new ShuffleVectorInst(LHS, RHS, Shuf->getShuffleMask()); in visitBitCast()
H A DInstCombineInternal.h175 Instruction *simplifyBinOpSplats(ShuffleVectorInst &SVI);
176 Instruction *visitShuffleVectorInst(ShuffleVectorInst &SVI);
571 Instruction *foldSelectShuffle(ShuffleVectorInst &Shuf);
/freebsd-14.2/contrib/llvm-project/llvm/lib/IR/
H A DInstructions.cpp1920 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *Mask, const Twine &Name, in ShuffleVectorInst() function in ShuffleVectorInst
1925 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *Mask, const Twine &Name, in ShuffleVectorInst() function in ShuffleVectorInst
1930 ShuffleVectorInst::ShuffleVectorInst(Value *V1, ArrayRef<int> Mask, in ShuffleVectorInst() function in ShuffleVectorInst
1936 ShuffleVectorInst::ShuffleVectorInst(Value *V1, ArrayRef<int> Mask, in ShuffleVectorInst() function in ShuffleVectorInst
1941 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *V2, Value *Mask, in ShuffleVectorInst() function in ShuffleVectorInst
1960 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *V2, Value *Mask, in ShuffleVectorInst() function in ShuffleVectorInst
1978 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *V2, ArrayRef<int> Mask, in ShuffleVectorInst() function in ShuffleVectorInst
1994 ShuffleVectorInst::ShuffleVectorInst(Value *V1, Value *V2, ArrayRef<int> Mask, in ShuffleVectorInst() function in ShuffleVectorInst
2010 void ShuffleVectorInst::commute() { in commute()
2703 bool ShuffleVectorInst::isBitRotateMask( in isBitRotateMask()
[all …]
H A DInstruction.cpp753 if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I1)) in hasSameSpecialState()
755 cast<ShuffleVectorInst>(I2)->getShuffleMask(); in hasSameSpecialState()
H A DConstantsContext.h158 assert(ShuffleVectorInst::isValidOperands(C1, C2, Mask) && in ShuffleVectorConstantExpr()
164 ShuffleVectorInst::convertShuffleMaskForBitcode(Mask, getType()); in ShuffleVectorConstantExpr()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/X86/
H A DX86InterleavedAccess.cpp55 ArrayRef<ShuffleVectorInst *> Shuffles;
110 ArrayRef<ShuffleVectorInst *> Shuffs, in X86InterleavedAccessGroup()
170 assert((isa<LoadInst>(VecInst) || isa<ShuffleVectorInst>(VecInst)) && in decompose()
180 if (auto *SVI = dyn_cast<ShuffleVectorInst>(VecInst)) { in decompose()
187 cast<ShuffleVectorInst>(Builder.CreateShuffleVector( in decompose()
807 LoadInst *LI, ArrayRef<ShuffleVectorInst *> Shuffles, in lowerInterleavedLoad()
824 ShuffleVectorInst *SVI, in lowerInterleavedStore()
840 ArrayRef<ShuffleVectorInst *> Shuffles = ArrayRef(SVI); in lowerInterleavedStore()
H A DX86PartialReduction.cpp390 auto *Shuffle = dyn_cast<ShuffleVectorInst>(LHS); in matchAddReduction()
394 Shuffle = dyn_cast<ShuffleVectorInst>(RHS); in matchAddReduction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVectorCombine.cpp280 auto *Shuf = cast<ShuffleVectorInst>(&I); in widenSubvectorLoad()
1437 ShuffleVectorInst *Shuffle = nullptr; in foldShuffleFromReductions()
1540 auto *SVI = cast<ShuffleVectorInst>(&I); in foldSelectShuffle()
1558 !(isa<ShuffleVectorInst>(U) && in foldSelectShuffle()
1570 SmallVector<ShuffleVectorInst *> Shuffles; in foldSelectShuffle()
1594 for (ShuffleVectorInst *SV : Shuffles) { in foldSelectShuffle()
1596 ShuffleVectorInst *SSV = dyn_cast<ShuffleVectorInst>(U); in foldSelectShuffle()
1612 for (ShuffleVectorInst *SVN : Shuffles) { in foldSelectShuffle()
1689 auto *SV = dyn_cast<ShuffleVectorInst>(I); in foldSelectShuffle()
1758 auto *SV = dyn_cast<ShuffleVectorInst>(I); in foldSelectShuffle()
[all …]
H A DSLPVectorizer.cpp6667 ShuffleVectorInst *IdentityOp = nullptr; in peekThroughShuffles()
6669 while (auto *SV = dyn_cast<ShuffleVectorInst>(Op)) { in peekThroughShuffles()
6761 auto *Shuffle = dyn_cast<ShuffleVectorInst>(V); in peekThroughShuffles()
6812 if (auto *SV1 = dyn_cast<ShuffleVectorInst>(Op1)) in createShuffle()
6875 isa<ShuffleVectorInst>(Op1) && in createShuffle()
9108 !ShuffleVectorInst::isIdentityMask(Mask, VF))) { in getTreeCost()
10983 ShuffleVectorInst::isIdentityMask(Mask, MSz)); in processBuildVector()
12349 auto *SI1 = dyn_cast<ShuffleVectorInst>(I1); in optimizeGatherSequence()
12350 auto *SI2 = dyn_cast<ShuffleVectorInst>(I2); in optimizeGatherSequence()
12409 if (auto *SI = dyn_cast<ShuffleVectorInst>(V)) in optimizeGatherSequence()
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/lib/Bitcode/Writer/
H A DValueEnumerator.cpp157 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in orderModule()
286 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in predictUseListOrder()
433 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in ValueEnumerator()
1049 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in incorporateFunction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/DirectX/DXILWriter/
H A DDXILValueEnumerator.cpp194 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in orderModule()
326 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in predictUseListOrder()
471 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in ValueEnumerator()
1054 if (auto *SVI = dyn_cast<ShuffleVectorInst>(&I)) in incorporateFunction()
/freebsd-14.2/contrib/llvm-project/llvm/lib/FuzzMutate/
H A DOperations.cpp332 return ShuffleVectorInst::isValidOperands(Cur[0], Cur[1], V); in validShuffleVectorIndex()
347 return new ShuffleVectorInst(Srcs[0], Srcs[1], Srcs[2], "S", Inst); in shuffleVectorDescriptor()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/ARM/
H A DARMISelLowering.h466 Type* shouldConvertSplatType(ShuffleVectorInst* SVI) const override;
665 ArrayRef<ShuffleVectorInst *> Shuffles,
668 bool lowerInterleavedStore(StoreInst *SI, ShuffleVectorInst *SVI,
H A DMVELaneInterleavingPass.cpp263 if (cast<ShuffleVectorInst>(I)->isZeroEltSplat()) in tryInterleave()
/freebsd-14.2/contrib/llvm-project/llvm/lib/ExecutionEngine/Interpreter/
H A DInterpreter.h165 void visitShuffleVectorInst(ShuffleVectorInst &I);
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/IR/
H A DInstructions.h1972 class ShuffleVectorInst : public Instruction {
1980 ShuffleVectorInst *cloneImpl() const;
1983 ShuffleVectorInst(Value *V1, Value *Mask, const Twine &NameStr = "",
1985 ShuffleVectorInst(Value *V1, Value *Mask, const Twine &NameStr,
1991 ShuffleVectorInst(Value *V1, Value *V2, Value *Mask,
1994 ShuffleVectorInst(Value *V1, Value *V2, Value *Mask,
1996 ShuffleVectorInst(Value *V1, Value *V2, ArrayRef<int> Mask,
1999 ShuffleVectorInst(Value *V1, Value *V2, ArrayRef<int> Mask,
2452 struct OperandTraits<ShuffleVectorInst>
2453 : public FixedNumOperandTraits<ShuffleVectorInst, 2> {};
[all …]
/freebsd-14.2/contrib/llvm-project/llvm/include/llvm/CodeGen/
H A DBasicTTIImpl.h971 if (ShuffleVectorInst::isReverseMask(Mask, NumSrcElts)) in improveShuffleKindFromMask()
973 if (ShuffleVectorInst::isZeroEltSplatMask(Mask, NumSrcElts)) in improveShuffleKindFromMask()
975 if (ShuffleVectorInst::isExtractSubvectorMask(Mask, NumSrcElts, Index) && in improveShuffleKindFromMask()
983 if (Mask.size() > 2 && ShuffleVectorInst::isInsertSubvectorMask( in improveShuffleKindFromMask()
990 if (ShuffleVectorInst::isSelectMask(Mask, NumSrcElts)) in improveShuffleKindFromMask()
992 if (ShuffleVectorInst::isTransposeMask(Mask, NumSrcElts)) in improveShuffleKindFromMask()
994 if (ShuffleVectorInst::isSpliceMask(Mask, NumSrcElts, Index)) in improveShuffleKindFromMask()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Scalar/
H A DRewriteStatepointsForGC.cpp393 if (isa<ShuffleVectorInst>(I)) { in findBaseDefiningValueOfVector()
661 !isa<ShuffleVectorInst>(V); in isOriginalBaseResult()
839 isa<ShuffleVectorInst>(BDV); in findBasePointer()
870 } else if (auto *SV = dyn_cast<ShuffleVectorInst>(BDV)) { in findBasePointer()
994 if (isa<ShuffleVectorInst>(I)) in findBasePointer()
1230 auto *BaseSV = cast<ShuffleVectorInst>(State.getBaseValue()); in findBasePointer()
1231 auto *BdvSV = cast<ShuffleVectorInst>(BDV); in findBasePointer()
H A DGVNSink.cpp354 if (ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(I)) in InstructionUseExpr()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Utils/
H A DFunctionComparator.cpp752 if (const ShuffleVectorInst *SVI = dyn_cast<ShuffleVectorInst>(L)) { in cmpOperations()
754 ArrayRef<int> RMask = cast<ShuffleVectorInst>(R)->getShuffleMask(); in cmpOperations()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/SPIRV/
H A DSPIRVRegularizer.cpp241 Value *NewVec = new ShuffleVectorInst(Inst, PVal, ConstVec, "", CI); in visitCallScalToVec()

1234