Lines Matching refs:ShuffleMask
25 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()
49 void DecodeMOVHLPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVHLPSMask() argument
51 ShuffleMask.push_back(NElts + i); in DecodeMOVHLPSMask()
54 ShuffleMask.push_back(i); in DecodeMOVHLPSMask()
58 void DecodeMOVLHPSMask(unsigned NElts, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVLHPSMask() argument
60 ShuffleMask.push_back(i); in DecodeMOVLHPSMask()
63 ShuffleMask.push_back(NElts + i); in DecodeMOVLHPSMask()
66 void DecodeMOVSLDUPMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVSLDUPMask() argument
69 ShuffleMask.push_back(2 * i); in DecodeMOVSLDUPMask()
70 ShuffleMask.push_back(2 * i); in DecodeMOVSLDUPMask()
74 void DecodeMOVSHDUPMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVSHDUPMask() argument
77 ShuffleMask.push_back(2 * i + 1); in DecodeMOVSHDUPMask()
78 ShuffleMask.push_back(2 * i + 1); in DecodeMOVSHDUPMask()
82 void DecodeMOVDDUPMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVDDUPMask() argument
93 ShuffleMask.push_back(l + s); in DecodeMOVDDUPMask()
96 void DecodePSLLDQMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodePSLLDQMask() argument
106 ShuffleMask.push_back(M); in DecodePSLLDQMask()
110 void DecodePSRLDQMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodePSRLDQMask() argument
121 ShuffleMask.push_back(M); in DecodePSRLDQMask()
126 SmallVectorImpl<int> &ShuffleMask) { in DecodePALIGNRMask() argument
138 ShuffleMask.push_back(Base + l); in DecodePALIGNRMask()
146 void DecodePSHUFMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFMask() argument
156 ShuffleMask.push_back(NewImm % NumLaneElts + l); in DecodePSHUFMask()
164 SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFHWMask() argument
170 ShuffleMask.push_back(l + i); in DecodePSHUFHWMask()
173 ShuffleMask.push_back(l + 4 + (NewImm & 3)); in DecodePSHUFHWMask()
180 SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFLWMask() argument
186 ShuffleMask.push_back(l + (NewImm & 3)); in DecodePSHUFLWMask()
190 ShuffleMask.push_back(l + i); in DecodePSHUFLWMask()
195 void DecodePSWAPMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodePSWAPMask() argument
200 ShuffleMask.push_back(l + NumHalfElts); in DecodePSWAPMask()
202 ShuffleMask.push_back(h); in DecodePSWAPMask()
208 void DecodeSHUFPMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodeSHUFPMask() argument
219 ShuffleMask.push_back(NewImm % NumLaneElts + s + l); in DecodeSHUFPMask()
230 void DecodeUNPCKHMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeUNPCKHMask() argument
241 ShuffleMask.push_back(i); // Reads from dest/src1 in DecodeUNPCKHMask()
242 ShuffleMask.push_back(i + NumElts); // Reads from src/src2 in DecodeUNPCKHMask()
250 void DecodeUNPCKLMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeUNPCKLMask() argument
261 ShuffleMask.push_back(i); // Reads from dest/src1 in DecodeUNPCKLMask()
262 ShuffleMask.push_back(i + NumElts); // Reads from src/src2 in DecodeUNPCKLMask()
271 SmallVectorImpl<int> &ShuffleMask) { in decodeVSHUF64x2FamilyMask() argument
283 ShuffleMask.push_back(LaneMask * NumElementsInLane + i); in decodeVSHUF64x2FamilyMask()
288 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERM2X128Mask() argument
295 ShuffleMask.push_back(HalfMask & 8 ? SM_SentinelZero : (int)i); in DecodeVPERM2X128Mask()
299 void DecodePSHUFBMask(const Constant *C, SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFBMask() argument
319 ShuffleMask.reserve(NumElements); in DecodePSHUFBMask()
327 ShuffleMask.clear(); in DecodePSHUFBMask()
330 ShuffleMask.push_back(SM_SentinelUndef); in DecodePSHUFBMask()
336 ShuffleMask.push_back(SM_SentinelZero); in DecodePSHUFBMask()
340 ShuffleMask.push_back(Index); in DecodePSHUFBMask()
348 SmallVectorImpl<int> &ShuffleMask) { in DecodePSHUFBMask() argument
352 ShuffleMask.push_back(M); in DecodePSHUFBMask()
360 ShuffleMask.push_back(SM_SentinelZero); in DecodePSHUFBMask()
364 ShuffleMask.push_back(Index); in DecodePSHUFBMask()
369 void DecodeBLENDMask(MVT VT, unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodeBLENDMask() argument
379 ShuffleMask.push_back(((Imm >> Bit) & 1) ? NumElements + i : i); in DecodeBLENDMask()
385 void DecodeVPERMMask(unsigned Imm, SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMMask() argument
387 ShuffleMask.push_back((Imm >> (2 * i)) & 3); in DecodeVPERMMask()
391 void DecodeVPERMILPMask(const Constant *C, SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMILPMask() argument
400 ShuffleMask.reserve(NumElements); in DecodeVPERMILPMask()
410 ShuffleMask.push_back(Index); in DecodeVPERMILPMask()
420 ShuffleMask.push_back(SM_SentinelUndef); in DecodeVPERMILPMask()
426 ShuffleMask.push_back(Index); in DecodeVPERMILPMask()
448 void DecodeZeroMoveLowMask(MVT VT, SmallVectorImpl<int> &ShuffleMask) { in DecodeZeroMoveLowMask() argument
450 ShuffleMask.push_back(0); in DecodeZeroMoveLowMask()
452 ShuffleMask.push_back(SM_SentinelZero); in DecodeZeroMoveLowMask()
465 SmallVectorImpl<int> &ShuffleMask) { in DecodeEXTRQIMask() argument
481 ShuffleMask.append(16, SM_SentinelUndef); in DecodeEXTRQIMask()
492 ShuffleMask.push_back(i + Idx); in DecodeEXTRQIMask()
494 ShuffleMask.push_back(SM_SentinelZero); in DecodeEXTRQIMask()
496 ShuffleMask.push_back(SM_SentinelUndef); in DecodeEXTRQIMask()
500 SmallVectorImpl<int> &ShuffleMask) { in DecodeINSERTQIMask() argument
516 ShuffleMask.append(16, SM_SentinelUndef); in DecodeINSERTQIMask()
528 ShuffleMask.push_back(i); in DecodeINSERTQIMask()
530 ShuffleMask.push_back(i + 16); in DecodeINSERTQIMask()
532 ShuffleMask.push_back(i); in DecodeINSERTQIMask()
534 ShuffleMask.push_back(SM_SentinelUndef); in DecodeINSERTQIMask()
538 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMVMask() argument
541 ShuffleMask.push_back((int)M); in DecodeVPERMVMask()
546 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMV3Mask() argument
549 ShuffleMask.push_back((int)M); in DecodeVPERMV3Mask()
554 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMVMask() argument
562 ShuffleMask.clear(); in DecodeVPERMVMask()
566 ShuffleMask.push_back(SM_SentinelUndef); in DecodeVPERMVMask()
570 ShuffleMask.push_back(Element); in DecodeVPERMVMask()
583 ShuffleMask.push_back(Element); in DecodeVPERMVMask()
587 SmallVectorImpl<int> &ShuffleMask) { in DecodeVPERMV3Mask() argument
594 ShuffleMask.clear(); in DecodeVPERMV3Mask()
598 ShuffleMask.push_back(SM_SentinelUndef); in DecodeVPERMV3Mask()
602 ShuffleMask.push_back(Element); in DecodeVPERMV3Mask()