/openbsd-current/gnu/llvm/llvm/lib/Target/X86/MCTargetDesc/ |
H A D | X86ShuffleDecode.h | 31 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 D | X86ShuffleDecode.cpp | 26 void DecodeINSERTPSMask(unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { argument 28 ShuffleMask.push_back(0); 29 ShuffleMask.push_back(1); 30 ShuffleMask.push_back(2); 31 ShuffleMask.push_back(3); 41 ShuffleMask[CountD] = InVal; 43 if (ZMask & 1) ShuffleMask[0] = SM_SentinelZero; 44 if (ZMask & 2) ShuffleMask[1] = SM_SentinelZero; 45 if (ZMask & 4) ShuffleMask[2] = SM_SentinelZero; 46 if (ZMask & 8) ShuffleMask[ 49 DecodeInsertElementMask(unsigned NumElts, unsigned Idx, unsigned Len, SmallVectorImpl<int> &ShuffleMask) argument 60 DecodeMOVHLPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask) argument 69 DecodeMOVLHPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask) argument 77 DecodeMOVSLDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) argument 84 DecodeMOVSHDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) argument 91 DecodeMOVDDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) argument 99 DecodePSLLDQMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 111 DecodePSRLDQMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 124 DecodePALIGNRMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 138 DecodeVALIGNMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 147 DecodePSHUFMask(unsigned NumElts, unsigned ScalarBits, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 163 DecodePSHUFHWMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 177 DecodePSHUFLWMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 191 DecodePSWAPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) argument 200 DecodeSHUFPMask(unsigned NumElts, unsigned ScalarBits, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 217 DecodeUNPCKHMask(unsigned NumElts, unsigned ScalarBits, SmallVectorImpl<int> &ShuffleMask) argument 233 DecodeUNPCKLMask(unsigned NumElts, unsigned ScalarBits, SmallVectorImpl<int> &ShuffleMask) argument 249 DecodeVectorBroadcast(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) argument 254 DecodeSubVectorBroadcast(unsigned DstNumElts, unsigned SrcNumElts, SmallVectorImpl<int> &ShuffleMask) argument 263 decodeVSHUF64x2FamilyMask(unsigned NumElts, unsigned ScalarSize, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 280 DecodeVPERM2X128Mask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 292 DecodePSHUFBMask(ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument 314 DecodeBLENDMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 324 DecodeVPPERMMask(ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument 363 DecodeVPERMMask(unsigned NumElts, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) argument 370 DecodeZeroExtendMask(unsigned SrcScalarBits, unsigned DstScalarBits, unsigned NumDstElts, bool IsAnyExtend, SmallVectorImpl<int> &ShuffleMask) argument 476 DecodeVPERMILPMask(unsigned NumElts, unsigned ScalarBits, ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument 498 DecodeVPERMIL2PMask(unsigned NumElts, unsigned ScalarBits, unsigned M2Z, ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument 544 DecodeVPERMVMask(ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument 558 DecodeVPERMV3Mask(ArrayRef<uint64_t> RawMask, const APInt &UndefElts, SmallVectorImpl<int> &ShuffleMask) argument [all...] |
H A D | X86InstComments.cpp | 641 SmallVector<int, 8> ShuffleMask; local 665 ShuffleMask); 681 ShuffleMask); 697 ShuffleMask); 711 ShuffleMask); 728 ShuffleMask); 737 DecodeMOVLHPSMask(2, ShuffleMask); 746 DecodeMOVHLPSMask(2, ShuffleMask); 754 DecodeInsertElementMask(2, 1, 1, ShuffleMask); 762 DecodeInsertElementMask(4, 2, 2, ShuffleMask); 787 DecodeMOVSLDUPMask(getRegOperandNumElts(MI, 32, 0), ShuffleMask); local 796 DecodeMOVSHDUPMask(getRegOperandNumElts(MI, 32, 0), ShuffleMask); local 805 DecodeMOVDDUPMask(getRegOperandNumElts(MI, 64, 0), ShuffleMask); local 960 DecodeUNPCKHMask(getRegOperandNumElts(MI, 8, 0), 8, ShuffleMask); local 973 DecodeUNPCKHMask(getRegOperandNumElts(MI, 16, 0), 16, ShuffleMask); local 986 DecodeUNPCKHMask(getRegOperandNumElts(MI, 32, 0), 32, ShuffleMask); local 997 DecodeUNPCKHMask(getRegOperandNumElts(MI, 64, 0), 64, ShuffleMask); local 1010 DecodeUNPCKLMask(getRegOperandNumElts(MI, 8, 0), 8, ShuffleMask); local 1023 DecodeUNPCKLMask(getRegOperandNumElts(MI, 16, 0), 16, ShuffleMask); local 1036 DecodeUNPCKLMask(getRegOperandNumElts(MI, 32, 0), 32, ShuffleMask); local 1047 DecodeUNPCKLMask(getRegOperandNumElts(MI, 64, 0), 64, ShuffleMask); local 1109 DecodeUNPCKLMask(getRegOperandNumElts(MI, 64, 0), 64, ShuffleMask); local 1120 DecodeUNPCKLMask(getRegOperandNumElts(MI, 32, 0), 32, ShuffleMask); local 1131 DecodeUNPCKHMask(getRegOperandNumElts(MI, 64, 0), 64, ShuffleMask); local 1142 DecodeUNPCKHMask(getRegOperandNumElts(MI, 32, 0), 32, ShuffleMask); local [all...] |
/openbsd-current/gnu/llvm/llvm/lib/Target/X86/ |
H A D | X86ShuffleDecodeConstantPool.h | 27 SmallVectorImpl<int> &ShuffleMask); 31 SmallVectorImpl<int> &ShuffleMask); 35 unsigned Width, SmallVectorImpl<int> &ShuffleMask); 39 SmallVectorImpl<int> &ShuffleMask);
|
H A D | X86ShuffleDecodeConstantPool.cpp | 117 SmallVectorImpl<int> &ShuffleMask) { 134 ShuffleMask.push_back(SM_SentinelUndef); 141 ShuffleMask.push_back(SM_SentinelZero); 149 ShuffleMask.push_back(Index); 155 SmallVectorImpl<int> &ShuffleMask) { 174 ShuffleMask.push_back(SM_SentinelUndef); 185 ShuffleMask.push_back(Index); 190 unsigned Width, SmallVectorImpl<int> &ShuffleMask) { 210 ShuffleMask.push_back(SM_SentinelUndef); 228 ShuffleMask 116 DecodePSHUFBMask(const Constant *C, unsigned Width, SmallVectorImpl<int> &ShuffleMask) argument 154 DecodeVPERMILPMask(const Constant *C, unsigned ElSize, unsigned Width, SmallVectorImpl<int> &ShuffleMask) argument 189 DecodeVPERMIL2PMask(const Constant *C, unsigned M2Z, unsigned ElSize, unsigned Width, SmallVectorImpl<int> &ShuffleMask) argument 244 DecodeVPPERMMask(const Constant *C, unsigned Width, SmallVectorImpl<int> &ShuffleMask) argument [all...] |
H A D | X86InstCombineIntrinsic.cpp | 587 int ShuffleMask[4] = {0, 1, 2, 3}; local 600 ShuffleMask[DestLane] = SourceLane; 604 ShuffleMask[i] = i + 4; 611 ShuffleMask[DestLane] = SourceLane + 4; 614 return Builder.CreateShuffleVector(II.getArgOperand(0), V1, ShuffleMask); 669 SmallVector<int, 16> ShuffleMask; local 671 ShuffleMask.push_back(i + Index); 673 ShuffleMask.push_back(i + 16); 675 ShuffleMask.push_back(-1); 679 ConstantAggregateZero::get(ShufTy), ShuffleMask); 746 SmallVector<int, 16> ShuffleMask; local [all...] |
H A D | X86InterleavedAccess.cpp | 473 // function is stored inside ShuffleMask vector and it built as described in 478 SmallVectorImpl<int> &ShuffleMask, 494 ShuffleMask.push_back(Base + l); 477 DecodePALIGNRMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask, bool AlignDirection = true, bool Unary = false) argument
|
H A D | X86MCInstLower.cpp | 1921 SmallVector<int, 8> ShuffleMask(Mask); 1923 for (int i = 0, e = ShuffleMask.size(); i != e; ++i) 1924 if (ShuffleMask[i] >= e) 1925 ShuffleMask[i] -= e; 1948 for (int i = 0, e = ShuffleMask.size(); i != e; ++i) { 1951 if (ShuffleMask[i] == SM_SentinelZero) { 1958 bool isSrc1 = ShuffleMask[i] < (int)e; 1962 while (i != e && ShuffleMask[i] != SM_SentinelZero && 1963 (ShuffleMask[i] < (int)e) == isSrc1) { 1968 if (ShuffleMask[ [all...] |
H A D | X86LowerAMXIntrinsics.cpp | 443 int ShuffleMask[4] = {2, 0, 3, 1}; local 444 auto ShuffleArray = ArrayRef(ShuffleMask);
|
/openbsd-current/gnu/llvm/llvm/lib/IR/ |
H A D | ConstantsContext.h | 188 ShuffleMask.assign(Mask.begin(), Mask.end()); 193 SmallVector<int, 4> ShuffleMask; member in class:llvm::final 437 ArrayRef<int> ShuffleMask; member in struct:llvm::ConstantExprKeyType 456 ArrayRef<int> ShuffleMask = std::nullopt, 459 SubclassData(SubclassData), Ops(Ops), ShuffleMask(ShuffleMask), 466 ShuffleMask(getShuffleMaskIfValid(CE)), 474 ShuffleMask(getShuffleMaskIfValid(CE)), 485 ShuffleMask == X.ShuffleMask [all...] |
H A D | AutoUpgrade.cpp | 2732 SmallVector<int, 8> ShuffleMask(NumDstElts); 2734 ShuffleMask[i] = i; 2737 Builder.CreateShuffleVector(CI->getArgOperand(0), ShuffleMask); 2776 SmallVector<int, 8> ShuffleMask(0); 2784 ShuffleMask.push_back(LaneMask * NumElementsInLane + i); 2787 CI->getArgOperand(1), ShuffleMask); 2798 SmallVector<int, 8> ShuffleMask(NumDstElts); 2800 ShuffleMask[i] = i % NumSrcElts; 2804 ShuffleMask); 2997 SmallVector<int, 8> ShuffleMask(NumElt [all...] |
H A D | Instructions.cpp | 2147 int NumMaskElts = ShuffleMask.size(); 2260 ShuffleMask.assign(Mask.begin(), Mask.end()); 2677 if (ShuffleMask.size() % VF != 0) 2679 ReplicationFactor = ShuffleMask.size() / VF; 2681 return isReplicationMaskWithParams(ShuffleMask, ReplicationFactor, VF); 2709 if (!isSingleSourceMask(ShuffleMask)) 2712 return isOneUseSingleSourceMask(ShuffleMask, VF);
|
H A D | IRBuilder.cpp | 1214 SmallVector<int, 8> ShuffleMask; local 1217 ShuffleMask.push_back(NumElts - i - 1); 1218 return CreateShuffleVector(V, ShuffleMask, Name);
|
/openbsd-current/gnu/llvm/llvm/lib/Target/Hexagon/ |
H A D | HexagonISelDAGToDAGHVX.cpp | 767 struct ShuffleMask { 768 ShuffleMask(ArrayRef<int> M) : Mask(M) { 780 ShuffleMask lo() const { 782 return ShuffleMask(Mask.take_front(H)); 784 ShuffleMask hi() const { 786 return ShuffleMask(Mask.take_back(H)); 798 raw_ostream &operator<<(raw_ostream &OS, const ShuffleMask &SM) { 956 static SmallVector<uint32_t, 8> getPerfectCompletions(ShuffleMask SM, 960 static std::optional<int> rotationDistance(ShuffleMask SM, unsigned WrapAt); 976 OpRef packs(ShuffleMask S [all...] |
/openbsd-current/gnu/llvm/llvm/lib/Target/AArch64/GISel/ |
H A D | AArch64PostLegalizerLowering.cpp | 225 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); local 238 if (isREVMask(ShuffleMask, EltSize, NumElts, 64)) { 255 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); local 258 if (!isTRNMask(ShuffleMask, NumElts, WhichResult)) 276 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); local 279 if (!isUZPMask(ShuffleMask, NumElts, WhichResult)) 292 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); local 295 if (!isZipMask(ShuffleMask, NumElts, WhichResult)) 474 ArrayRef<int> ShuffleMask = MI.getOperand(3).getShuffleMask(); local 477 auto DstIsLeftAndDstLane = isINSMask(ShuffleMask, NumElt [all...] |
/openbsd-current/gnu/llvm/llvm/utils/PerfectShuffle/ |
H A D | PerfectShuffle.cpp | 109 unsigned short ShuffleMask; member in struct:Operator 115 : Name(name), ShuffleMask(shufflemask), OpNum(opnum),Cost(cost) { 124 return isOnlyLHSMask(ShuffleMask); 134 unsigned SrcElt = (ShuffleMask >> (4*i)) & 0xF;
|
/openbsd-current/gnu/llvm/llvm/lib/CodeGen/SelectionDAG/ |
H A D | LegalizeVectorOps.cpp | 1062 SmallVector<int, 16> ShuffleMask; local 1063 ShuffleMask.resize(NumSrcElements, -1); 1069 ShuffleMask[i * ExtLaneScale + EndianOffset] = i; 1073 DAG.getVectorShuffle(SrcVT, DL, Src, DAG.getUNDEF(SrcVT), ShuffleMask)); 1125 auto ShuffleMask = llvm::to_vector<16>(llvm::seq<int>(0, NumSrcElements)); local 1130 ShuffleMask[i * ExtLaneScale + EndianOffset] = NumSrcElements + i; 1133 DAG.getVectorShuffle(SrcVT, DL, Zero, Src, ShuffleMask)); 1136 static void createBSWAPShuffleMask(EVT VT, SmallVectorImpl<int> &ShuffleMask) { argument 1140 ShuffleMask.push_back((I * ScalarSizeInBytes) + J); 1151 SmallVector<int, 16> ShuffleMask; [all...] |
/openbsd-current/gnu/llvm/llvm/include/llvm/CodeGen/ |
H A D | MachineOperand.h | 180 ArrayRef<int> ShuffleMask; // For MO_ShuffleMask member in union:llvm::MachineOperand::ContentsUnion 621 return Contents.ShuffleMask; 979 Op.Contents.ShuffleMask = Mask;
|
/openbsd-current/gnu/llvm/llvm/lib/Transforms/Scalar/ |
H A D | ScalarizeMaskedMemIntrin.cpp | 661 SmallVector<int, 16> ShuffleMask(VectorWidth, UndefMaskElem); 666 ShuffleMask[Idx] = Idx + VectorWidth; 672 ShuffleMask[Idx] = Idx; 678 VResult = Builder.CreateShuffleVector(VResult, PassThru, ShuffleMask);
|
H A D | GVNSink.cpp | 347 ArrayRef<int> ShuffleMask; 358 ShuffleMask = SVI->getShuffleMask().copy(A); 370 MemoryUseOrder, Volatile, ShuffleMask); 375 ShuffleMask);
|
/openbsd-current/gnu/llvm/llvm/include/llvm/IR/ |
H A D | Instructions.h | 2018 SmallVector<int, 4> ShuffleMask; member in class:llvm::CallInst::ShuffleVectorInst 2072 int getMaskValue(unsigned Elt) const { return ShuffleMask[Elt]; } 2082 Result.assign(ShuffleMask.begin(), ShuffleMask.end()); 2096 ArrayRef<int> getShuffleMask() const { return ShuffleMask; } 2106 unsigned NumMaskElts = ShuffleMask.size(); 2117 unsigned NumMaskElts = ShuffleMask.size(); 2138 return !changesLength() && isSingleSourceMask(ShuffleMask); 2170 return !changesLength() && isIdentityMask(ShuffleMask); 2211 return !changesLength() && isSelectMask(ShuffleMask); [all...] |
/openbsd-current/gnu/llvm/llvm/lib/Transforms/Utils/ |
H A D | LoopUtils.cpp | 961 SmallVector<int, 32> ShuffleMask(VF); 965 ShuffleMask[j] = i / 2 + j; 968 std::fill(&ShuffleMask[i / 2], ShuffleMask.end(), -1); 970 Value *Shuf = Builder.CreateShuffleVector(TmpVec, ShuffleMask, "rdx.shuf");
|
/openbsd-current/gnu/llvm/llvm/lib/Transforms/InstCombine/ |
H A D | InstCombineCasts.cpp | 2168 ArrayRef<int> ShuffleMask; local 2180 ShuffleMask = ShuffleMaskStorage; 2182 ShuffleMask = ShuffleMask.take_back(DestElts); 2184 ShuffleMask = ShuffleMask.take_front(DestElts); 2200 ShuffleMask = ShuffleMaskStorage; 2203 return new ShuffleVectorInst(InVal, V2, ShuffleMask);
|
/openbsd-current/gnu/llvm/llvm/lib/Target/ARM/ |
H A D | ARMISelLowering.cpp | 7477 /// Check if \p ShuffleMask is a NEON two-result shuffle (VZIP, VUZP, VTRN), 7479 static unsigned isNEONTwoResultShuffleMask(ArrayRef<int> ShuffleMask, EVT VT, argument 7483 if (isVTRNMask(ShuffleMask, VT, WhichResult)) 7485 if (isVUZPMask(ShuffleMask, VT, WhichResult)) 7487 if (isVZIPMask(ShuffleMask, VT, WhichResult)) 7491 if (isVTRN_v_undef_Mask(ShuffleMask, VT, WhichResult)) 7493 if (isVUZP_v_undef_Mask(ShuffleMask, VT, WhichResult)) 7495 if (isVZIP_v_undef_Mask(ShuffleMask, VT, WhichResult)) 8459 ArrayRef<int> ShuffleMask, 8467 for (int I : ShuffleMask) 8458 LowerVECTOR_SHUFFLEv8i8(SDValue Op, ArrayRef<int> ShuffleMask, SelectionDAG &DAG) argument 8551 ArrayRef<int> ShuffleMask = SVN->getMask(); local 8599 LowerVECTOR_SHUFFLEUsingMovs(SDValue Op, ArrayRef<int> ShuffleMask, SelectionDAG &DAG) argument 8685 LowerVECTOR_SHUFFLEUsingOneOff(SDValue Op, ArrayRef<int> ShuffleMask, SelectionDAG &DAG) argument [all...] |
/openbsd-current/gnu/llvm/llvm/lib/Target/AArch64/ |
H A D | AArch64ISelLowering.cpp | 11169 static SDValue GenerateTBL(SDValue Op, ArrayRef<int> ShuffleMask, 11197 for (int Val : ShuffleMask) { 11397 ArrayRef<int> ShuffleMask, 11420 if (ShuffleMask[I] < 16) 11421 TBLMaskParts[I] = Mask1->getOperand(ShuffleMask[I]); 11424 dyn_cast<ConstantSDNode>(Mask2->getOperand(ShuffleMask[I] - 16)); 11476 ArrayRef<int> ShuffleMask = SVN->getMask(); 11482 assert(ShuffleMask.size() == VT.getVectorNumElements() && 11485 if (SDValue Res = tryToConvertShuffleOfTbl2ToTbl4(Op, ShuffleMask, DAG)) 11511 if (isWideDUPMask(ShuffleMask, V 11708 SDValue ShuffleMask = DAG.getNode(ISD::ADD, DL, MVT::nxv2i64, SV, SplatIdx64); local 23694 auto ShuffleMask = SVN->getMask(); local [all...] |