Home
last modified time | relevance | path

Searched refs:ShuffleMask (Results 1 – 25 of 35) sorted by relevance

12

/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/X86/MCTargetDesc/
H A DX86ShuffleDecode.cpp25 void DecodeINSERTPSMask(unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodeINSERTPSMask() argument
27 ShuffleMask.push_back(0); in DecodeINSERTPSMask()
28 ShuffleMask.push_back(1); in DecodeINSERTPSMask()
29 ShuffleMask.push_back(2); in DecodeINSERTPSMask()
30 ShuffleMask.push_back(3); in DecodeINSERTPSMask()
40 ShuffleMask[CountD] = InVal; in DecodeINSERTPSMask()
42 if (ZMask & 1) ShuffleMask[0] = SM_SentinelZero; in DecodeINSERTPSMask()
43 if (ZMask & 2) ShuffleMask[1] = SM_SentinelZero; in DecodeINSERTPSMask()
44 if (ZMask & 4) ShuffleMask[2] = SM_SentinelZero; in DecodeINSERTPSMask()
45 if (ZMask & 8) ShuffleMask[3] = SM_SentinelZero; in DecodeINSERTPSMask()
[all …]
H A DX86ShuffleDecode.h31 void DecodeINSERTPSMask(unsigned Imm, SmallVectorImpl<int> &ShuffleMask);
36 SmallVectorImpl<int> &ShuffleMask);
40 void DecodeMOVHLPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask);
44 void DecodeMOVLHPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask);
46 void DecodeMOVSLDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask);
48 void DecodeMOVSHDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask);
50 void DecodeMOVDDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask);
53 SmallVectorImpl<int> &ShuffleMask);
56 SmallVectorImpl<int> &ShuffleMask);
59 SmallVectorImpl<int> &ShuffleMask);
[all …]
H A DX86InstComments.cpp641 SmallVector<int, 8> ShuffleMask; in EmitAnyX86InstComments() local
665 ShuffleMask); in EmitAnyX86InstComments()
681 ShuffleMask); in EmitAnyX86InstComments()
697 ShuffleMask); in EmitAnyX86InstComments()
711 ShuffleMask); in EmitAnyX86InstComments()
728 ShuffleMask); in EmitAnyX86InstComments()
737 DecodeMOVLHPSMask(2, ShuffleMask); in EmitAnyX86InstComments()
746 DecodeMOVHLPSMask(2, ShuffleMask); in EmitAnyX86InstComments()
754 DecodeInsertElementMask(2, 1, 1, ShuffleMask); in EmitAnyX86InstComments()
762 DecodeInsertElementMask(4, 2, 2, ShuffleMask); in EmitAnyX86InstComments()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/X86/
H A DX86ShuffleDecodeConstantPool.cpp117 SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFBMask() argument
134 ShuffleMask.push_back(SM_SentinelUndef); in DecodePSHUFBMask()
141 ShuffleMask.push_back(SM_SentinelZero); in DecodePSHUFBMask()
149 ShuffleMask.push_back(Index); in DecodePSHUFBMask()
155 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMILPMask() argument
174 ShuffleMask.push_back(SM_SentinelUndef); in DecodeVPERMILPMask()
185 ShuffleMask.push_back(Index); in DecodeVPERMILPMask()
190 unsigned Width, SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMIL2PMask() argument
210 ShuffleMask.push_back(SM_SentinelUndef); in DecodeVPERMIL2PMask()
228 ShuffleMask.push_back(SM_SentinelZero); in DecodeVPERMIL2PMask()
[all …]
H A DX86ShuffleDecodeConstantPool.h27 SmallVectorImpl<int> &ShuffleMask);
31 SmallVectorImpl<int> &ShuffleMask);
35 unsigned Width, SmallVectorImpl<int> &ShuffleMask);
39 SmallVectorImpl<int> &ShuffleMask);
H A DX86InstCombineIntrinsic.cpp588 int ShuffleMask[4] = {0, 1, 2, 3}; in simplifyX86insertps() local
601 ShuffleMask[DestLane] = SourceLane; in simplifyX86insertps()
605 ShuffleMask[i] = i + 4; in simplifyX86insertps()
612 ShuffleMask[DestLane] = SourceLane + 4; in simplifyX86insertps()
615 return Builder.CreateShuffleVector(II.getArgOperand(0), V1, ShuffleMask); in simplifyX86insertps()
670 SmallVector<int, 16> ShuffleMask; in simplifyX86extrq() local
672 ShuffleMask.push_back(i + Index); in simplifyX86extrq()
674 ShuffleMask.push_back(i + 16); in simplifyX86extrq()
676 ShuffleMask.push_back(-1); in simplifyX86extrq()
680 ConstantAggregateZero::get(ShufTy), ShuffleMask); in simplifyX86extrq()
[all …]
H A DX86MCInstLower.cpp1814 SmallVector<int, 8> ShuffleMask(Mask.begin(), Mask.end()); in getShuffleComment() local
1816 for (int i = 0, e = ShuffleMask.size(); i != e; ++i) in getShuffleComment()
1817 if (ShuffleMask[i] >= e) in getShuffleComment()
1818 ShuffleMask[i] -= e; in getShuffleComment()
1841 for (int i = 0, e = ShuffleMask.size(); i != e; ++i) { in getShuffleComment()
1844 if (ShuffleMask[i] == SM_SentinelZero) { in getShuffleComment()
1851 bool isSrc1 = ShuffleMask[i] < (int)e; in getShuffleComment()
1855 while (i != e && ShuffleMask[i] != SM_SentinelZero && in getShuffleComment()
1856 (ShuffleMask[i] < (int)e) == isSrc1) { in getShuffleComment()
1861 if (ShuffleMask[i] == SM_SentinelUndef) in getShuffleComment()
[all …]
H A DX86InterleavedAccess.cpp478 SmallVectorImpl<int> &ShuffleMask, in DecodePALIGNRMask() argument
494 ShuffleMask.push_back(Base + l); in DecodePALIGNRMask()
H A DX86LowerAMXIntrinsics.cpp442 int ShuffleMask[4] = {2, 0, 3, 1}; in createTileDPLoops() local
443 auto ShuffleArray = makeArrayRef(ShuffleMask); in createTileDPLoops()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/Hexagon/
H A DHexagonISelDAGToDAGHVX.cpp762 struct ShuffleMask { struct
763 ShuffleMask(ArrayRef<int> M) : Mask(M) { in ShuffleMask() function
776 ShuffleMask lo() const { in lo() argument
778 return ShuffleMask(Mask.take_front(H)); in lo()
780 ShuffleMask hi() const { in hi() argument
782 return ShuffleMask(Mask.take_back(H)); in hi()
794 raw_ostream &operator<<(raw_ostream &OS, const ShuffleMask &SM) { in operator <<()
847 OpRef packs(ShuffleMask SM, OpRef Va, OpRef Vb, ResultStack &Results,
849 OpRef packp(ShuffleMask SM, OpRef Va, OpRef Vb, ResultStack &Results,
856 OpRef shuffs1(ShuffleMask SM, OpRef Va, ResultStack &Results);
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/IR/
H A DConstantsContext.h195 ShuffleMask.assign(Mask.begin(), Mask.end()); in ShuffleVectorConstantExpr()
200 SmallVector<int, 4> ShuffleMask; variable
518 ArrayRef<int> ShuffleMask;
544 ArrayRef<int> ShuffleMask = None,
548 ShuffleMask(ShuffleMask), ExplicitTy(ExplicitTy) {}
554 Indexes(getIndicesIfValid(CE)), ShuffleMask(getShuffleMaskIfValid(CE)),
562 Indexes(getIndicesIfValid(CE)), ShuffleMask(getShuffleMaskIfValid(CE)),
573 Indexes == X.Indexes && ShuffleMask == X.ShuffleMask &&
591 if (ShuffleMask != getShuffleMaskIfValid(CE))
603 hash_combine_range(ShuffleMask.begin(), ShuffleMask.end()), ExplicitTy);
[all …]
H A DAutoUpgrade.cpp2429 SmallVector<int, 8> ShuffleMask(NumDstElts); in UpgradeIntrinsicCall() local
2431 ShuffleMask[i] = i; in UpgradeIntrinsicCall()
2434 Builder.CreateShuffleVector(CI->getArgOperand(0), ShuffleMask); in UpgradeIntrinsicCall()
2473 SmallVector<int, 8> ShuffleMask(0); in UpgradeIntrinsicCall() local
2481 ShuffleMask.push_back(LaneMask * NumElementsInLane + i); in UpgradeIntrinsicCall()
2484 CI->getArgOperand(1), ShuffleMask); in UpgradeIntrinsicCall()
2495 SmallVector<int, 8> ShuffleMask(NumDstElts); in UpgradeIntrinsicCall() local
2497 ShuffleMask[i] = i % NumSrcElts; in UpgradeIntrinsicCall()
2501 ShuffleMask); in UpgradeIntrinsicCall()
2694 SmallVector<int, 8> ShuffleMask(NumElts); in UpgradeIntrinsicCall() local
[all …]
H A DIRBuilder.cpp1023 SmallVector<int, 8> ShuffleMask; in CreateVectorReverse() local
1026 ShuffleMask.push_back(NumElts - i - 1); in CreateVectorReverse()
1027 return CreateShuffleVector(V, ShuffleMask, Name); in CreateVectorReverse()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/AArch64/GISel/
H A DAArch64PostLegalizerLowering.cpp221 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchREV() local
234 if (isREVMask(ShuffleMask, EltSize, NumElts, 64)) { in matchREV()
251 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchTRN() local
254 if (!isTRNMask(ShuffleMask, NumElts, WhichResult)) in matchTRN()
272 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchUZP() local
275 if (!isUZPMask(ShuffleMask, NumElts, WhichResult)) in matchUZP()
288 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchZip() local
291 if (!isZipMask(ShuffleMask, NumElts, WhichResult)) in matchZip()
432 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); in matchINS() local
435 auto DstIsLeftAndDstLane = isINSMask(ShuffleMask, NumElts); in matchINS()
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/CodeGen/SelectionDAG/
H A DLegalizeVectorOps.cpp1014 SmallVector<int, 16> ShuffleMask; in ExpandANY_EXTEND_VECTOR_INREG() local
1015 ShuffleMask.resize(NumSrcElements, -1); in ExpandANY_EXTEND_VECTOR_INREG()
1021 ShuffleMask[i * ExtLaneScale + EndianOffset] = i; in ExpandANY_EXTEND_VECTOR_INREG()
1025 DAG.getVectorShuffle(SrcVT, DL, Src, DAG.getUNDEF(SrcVT), ShuffleMask)); in ExpandANY_EXTEND_VECTOR_INREG()
1077 SmallVector<int, 16> ShuffleMask; in ExpandZERO_EXTEND_VECTOR_INREG() local
1078 ShuffleMask.reserve(NumSrcElements); in ExpandZERO_EXTEND_VECTOR_INREG()
1080 ShuffleMask.push_back(i); in ExpandZERO_EXTEND_VECTOR_INREG()
1085 ShuffleMask[i * ExtLaneScale + EndianOffset] = NumSrcElements + i; in ExpandZERO_EXTEND_VECTOR_INREG()
1088 DAG.getVectorShuffle(SrcVT, DL, Zero, Src, ShuffleMask)); in ExpandZERO_EXTEND_VECTOR_INREG()
1091 static void createBSWAPShuffleMask(EVT VT, SmallVectorImpl<int> &ShuffleMask) { in createBSWAPShuffleMask() argument
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/utils/PerfectShuffle/
H A DPerfectShuffle.cpp105 unsigned short ShuffleMask; member
111 : Name(name), ShuffleMask(shufflemask), OpNum(opnum),Cost(cost) { in Operator()
120 return isOnlyLHSMask(ShuffleMask); in isOnlyLHSOperator()
130 unsigned SrcElt = (ShuffleMask >> (4*i)) & 0xF; in getTransformedMask()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Scalar/
H A DGVNSink.cpp351 ArrayRef<int> ShuffleMask; member in __anonf1d6865e0111::InstructionUseExpr
362 ShuffleMask = SVI->getShuffleMask().copy(A); in InstructionUseExpr()
374 MemoryUseOrder, Volatile, ShuffleMask); in getHashValue()
379 ShuffleMask); in getHashValue()
H A DScalarizeMaskedMemIntrin.cpp663 SmallVector<int, 16> ShuffleMask(VectorWidth, UndefMaskElem); in scalarizeMaskedExpandLoad() local
668 ShuffleMask[Idx] = Idx + VectorWidth; in scalarizeMaskedExpandLoad()
674 ShuffleMask[Idx] = Idx; in scalarizeMaskedExpandLoad()
680 VResult = Builder.CreateShuffleVector(VResult, PassThru, ShuffleMask); in scalarizeMaskedExpandLoad()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
H A DMachineOperand.h180 ArrayRef<int> ShuffleMask; // For MO_ShuffleMask member
595 return Contents.ShuffleMask; in getShuffleMask()
933 Op.Contents.ShuffleMask = Mask; in CreateShuffleMask()
/netbsd-src/external/apache2/llvm/dist/llvm/include/llvm/IR/
H A DInstructions.h2001 SmallVector<int, 4> ShuffleMask;
2046 int getMaskValue(unsigned Elt) const { return ShuffleMask[Elt]; }
2056 Result.assign(ShuffleMask.begin(), ShuffleMask.end());
2070 ArrayRef<int> getShuffleMask() const { return ShuffleMask; }
2080 unsigned NumMaskElts = ShuffleMask.size();
2091 unsigned NumMaskElts = ShuffleMask.size();
2112 return !changesLength() && isSingleSourceMask(ShuffleMask);
2133 return !changesLength() && isIdentityMask(ShuffleMask);
2174 return !changesLength() && isSelectMask(ShuffleMask);
2194 return !changesLength() && isReverseMask(ShuffleMask);
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Analysis/
H A DTargetTransformInfo.cpp1287 SmallVector<int, 32> ShuffleMask(NumVecElems, 0); in matchVectorSplittingReduction() local
1310 ShuffleMask[j] = MaskStart + j; in matchVectorSplittingReduction()
1312 std::fill(&ShuffleMask[MaskStart], ShuffleMask.end(), -1); in matchVectorSplittingReduction()
1315 if (ShuffleMask != Mask) in matchVectorSplittingReduction()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Utils/
H A DLoopUtils.cpp987 SmallVector<int, 32> ShuffleMask(VF); in getShuffleReduction() local
991 ShuffleMask[j] = i / 2 + j; in getShuffleReduction()
994 std::fill(&ShuffleMask[i / 2], ShuffleMask.end(), -1); in getShuffleReduction()
996 Value *Shuf = Builder.CreateShuffleVector(TmpVec, ShuffleMask, "rdx.shuf"); in getShuffleReduction()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/InstCombine/
H A DInstCombineCasts.cpp2061 ArrayRef<int> ShuffleMask; in optimizeVectorResizeWithIntegerBitCasts() local
2077 ShuffleMask = ShuffleMaskStorage; in optimizeVectorResizeWithIntegerBitCasts()
2079 ShuffleMask = ShuffleMask.take_back(DestElts); in optimizeVectorResizeWithIntegerBitCasts()
2081 ShuffleMask = ShuffleMask.take_front(DestElts); in optimizeVectorResizeWithIntegerBitCasts()
2097 ShuffleMask = ShuffleMaskStorage; in optimizeVectorResizeWithIntegerBitCasts()
2100 return new ShuffleVectorInst(InVal, V2, ShuffleMask); in optimizeVectorResizeWithIntegerBitCasts()
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Target/ARM/
H A DARMISelLowering.cpp7201 static unsigned isNEONTwoResultShuffleMask(ArrayRef<int> ShuffleMask, EVT VT, in isNEONTwoResultShuffleMask() argument
7205 if (isVTRNMask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
7207 if (isVUZPMask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
7209 if (isVZIPMask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
7213 if (isVTRN_v_undef_Mask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
7215 if (isVUZP_v_undef_Mask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
7217 if (isVZIP_v_undef_Mask(ShuffleMask, VT, WhichResult)) in isNEONTwoResultShuffleMask()
8067 ArrayRef<int> ShuffleMask, in LowerVECTOR_SHUFFLEv8i8() argument
8076 I = ShuffleMask.begin(), E = ShuffleMask.end(); I != E; ++I) in LowerVECTOR_SHUFFLEv8i8()
8156 ArrayRef<int> ShuffleMask = SVN->getMask(); in LowerVECTOR_SHUFFLE_i1() local
[all …]
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
H A DSLPVectorizer.cpp3818 SmallVector<int> ShuffleMask(NumElts, UndefMaskElem); in getEntryCost() local
3832 ShuffleMask[Idx] = I; in getEntryCost()
3847 ShuffleMask); in getEntryCost()
4386 SmallVector<SmallVector<int>> ShuffleMask; in getTreeCost() local
4431 ShuffleMask.emplace_back(VF.back(), UndefMaskElem); in getTreeCost()
4440 ShuffleMask[VecId][Idx] = EU.Lane; in getTreeCost()
4471 cast<FixedVectorType>(FirstUsers[I]->getType()), ShuffleMask[I]); in getTreeCost()
4478 unsigned VF = ShuffleMask[I].size(); in getTreeCost()
4479 for (int &Mask : ShuffleMask[I]) in getTreeCost()
4483 ShuffleMask[I]); in getTreeCost()

12