Lines Matching refs:NumElts
49 void DecodeInsertElementMask(unsigned NumElts, unsigned Idx, unsigned Len, in DecodeInsertElementMask() argument
51 assert((Idx + Len) <= NumElts && "Insertion out of range"); in DecodeInsertElementMask()
53 for (unsigned i = 0; i != NumElts; ++i) in DecodeInsertElementMask()
56 ShuffleMask[Idx + i] = NumElts + i; in DecodeInsertElementMask()
77 void DecodeMOVSLDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVSLDUPMask() argument
78 for (int i = 0, e = NumElts / 2; i < e; ++i) { in DecodeMOVSLDUPMask()
84 void DecodeMOVSHDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVSHDUPMask() argument
85 for (int i = 0, e = NumElts / 2; i < e; ++i) { in DecodeMOVSHDUPMask()
91 void DecodeMOVDDUPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) { in DecodeMOVDDUPMask() argument
94 for (unsigned l = 0; l < NumElts; l += NumLaneElts) in DecodeMOVDDUPMask()
99 void DecodePSLLDQMask(unsigned NumElts, unsigned Imm, in DecodePSLLDQMask() argument
103 for (unsigned l = 0; l < NumElts; l += NumLaneElts) in DecodePSLLDQMask()
111 void DecodePSRLDQMask(unsigned NumElts, unsigned Imm, in DecodePSRLDQMask() argument
115 for (unsigned l = 0; l < NumElts; l += NumLaneElts) in DecodePSRLDQMask()
124 void DecodePALIGNRMask(unsigned NumElts, unsigned Imm, in DecodePALIGNRMask() argument
128 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in DecodePALIGNRMask()
132 if (Base >= NumLaneElts) Base += NumElts - NumLaneElts; in DecodePALIGNRMask()
138 void DecodeVALIGNMask(unsigned NumElts, unsigned Imm, in DecodeVALIGNMask() argument
141 assert(isPowerOf2_32(NumElts) && "NumElts should be power of 2"); in DecodeVALIGNMask()
142 Imm = Imm & (NumElts - 1); in DecodeVALIGNMask()
143 for (unsigned i = 0; i != NumElts; ++i) in DecodeVALIGNMask()
147 void DecodePSHUFMask(unsigned NumElts, unsigned ScalarBits, unsigned Imm, in DecodePSHUFMask() argument
149 unsigned Size = NumElts * ScalarBits; in DecodePSHUFMask()
152 unsigned NumLaneElts = NumElts / NumLanes; in DecodePSHUFMask()
155 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in DecodePSHUFMask()
163 void DecodePSHUFHWMask(unsigned NumElts, unsigned Imm, in DecodePSHUFHWMask() argument
165 for (unsigned l = 0; l != NumElts; l += 8) { in DecodePSHUFHWMask()
177 void DecodePSHUFLWMask(unsigned NumElts, unsigned Imm, in DecodePSHUFLWMask() argument
179 for (unsigned l = 0; l != NumElts; l += 8) { in DecodePSHUFLWMask()
191 void DecodePSWAPMask(unsigned NumElts, SmallVectorImpl<int> &ShuffleMask) { in DecodePSWAPMask() argument
192 unsigned NumHalfElts = NumElts / 2; in DecodePSWAPMask()
200 void DecodeSHUFPMask(unsigned NumElts, unsigned ScalarBits, in DecodeSHUFPMask() argument
205 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in DecodeSHUFPMask()
207 for (unsigned s = 0; s != NumElts * 2; s += NumElts) { in DecodeSHUFPMask()
217 void DecodeUNPCKHMask(unsigned NumElts, unsigned ScalarBits, in DecodeUNPCKHMask() argument
221 unsigned NumLanes = (NumElts * ScalarBits) / 128; in DecodeUNPCKHMask()
223 unsigned NumLaneElts = NumElts / NumLanes; in DecodeUNPCKHMask()
225 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in DecodeUNPCKHMask()
228 ShuffleMask.push_back(i + NumElts); // Reads from src/src2 in DecodeUNPCKHMask()
233 void DecodeUNPCKLMask(unsigned NumElts, unsigned ScalarBits, in DecodeUNPCKLMask() argument
237 unsigned NumLanes = (NumElts * ScalarBits) / 128; in DecodeUNPCKLMask()
239 unsigned NumLaneElts = NumElts / NumLanes; in DecodeUNPCKLMask()
241 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in DecodeUNPCKLMask()
244 ShuffleMask.push_back(i + NumElts); // Reads from src/src2 in DecodeUNPCKLMask()
249 void DecodeVectorBroadcast(unsigned NumElts, in DecodeVectorBroadcast() argument
251 ShuffleMask.append(NumElts, 0); in DecodeVectorBroadcast()
263 void decodeVSHUF64x2FamilyMask(unsigned NumElts, unsigned ScalarSize, in decodeVSHUF64x2FamilyMask() argument
267 unsigned NumLanes = NumElts / NumElementsInLane; in decodeVSHUF64x2FamilyMask()
269 for (unsigned l = 0; l != NumElts; l += NumElementsInLane) { in decodeVSHUF64x2FamilyMask()
273 if (l >= (NumElts / 2)) in decodeVSHUF64x2FamilyMask()
274 Index += NumElts; in decodeVSHUF64x2FamilyMask()
280 void DecodeVPERM2X128Mask(unsigned NumElts, unsigned Imm, in DecodeVPERM2X128Mask() argument
282 unsigned HalfSize = NumElts / 2; in DecodeVPERM2X128Mask()
314 void DecodeBLENDMask(unsigned NumElts, unsigned Imm, in DecodeBLENDMask() argument
316 for (unsigned i = 0; i < NumElts; ++i) { in DecodeBLENDMask()
320 ShuffleMask.push_back(((Imm >> Bit) & 1) ? NumElts + i : i); in DecodeBLENDMask()
363 void DecodeVPERMMask(unsigned NumElts, unsigned Imm, in DecodeVPERMMask() argument
365 for (unsigned l = 0; l != NumElts; l += 4) in DecodeVPERMMask()
384 void DecodeZeroMoveLowMask(unsigned NumElts, in DecodeZeroMoveLowMask() argument
387 ShuffleMask.append(NumElts - 1, SM_SentinelZero); in DecodeZeroMoveLowMask()
390 void DecodeScalarMoveMask(unsigned NumElts, bool IsLoad, in DecodeScalarMoveMask() argument
394 ShuffleMask.push_back(NumElts); in DecodeScalarMoveMask()
395 for (unsigned i = 1; i < NumElts; i++) in DecodeScalarMoveMask()
399 void DecodeEXTRQIMask(unsigned NumElts, unsigned EltSize, int Len, int Idx, in DecodeEXTRQIMask() argument
401 unsigned HalfElts = NumElts / 2; in DecodeEXTRQIMask()
418 ShuffleMask.append(NumElts, SM_SentinelUndef); in DecodeEXTRQIMask()
432 for (int i = HalfElts; i != (int)NumElts; ++i) in DecodeEXTRQIMask()
436 void DecodeINSERTQIMask(unsigned NumElts, unsigned EltSize, int Len, int Idx, in DecodeINSERTQIMask() argument
438 unsigned HalfElts = NumElts / 2; in DecodeINSERTQIMask()
455 ShuffleMask.append(NumElts, SM_SentinelUndef); in DecodeINSERTQIMask()
469 ShuffleMask.push_back(i + NumElts); in DecodeINSERTQIMask()
472 for (int i = HalfElts; i != (int)NumElts; ++i) in DecodeINSERTQIMask()
476 void DecodeVPERMILPMask(unsigned NumElts, unsigned ScalarBits, in DecodeVPERMILPMask() argument
479 unsigned VecSize = NumElts * ScalarBits; in DecodeVPERMILPMask()
481 unsigned NumEltsPerLane = NumElts / NumLanes; in DecodeVPERMILPMask()
498 void DecodeVPERMIL2PMask(unsigned NumElts, unsigned ScalarBits, unsigned M2Z, in DecodeVPERMIL2PMask() argument
501 unsigned VecSize = NumElts * ScalarBits; in DecodeVPERMIL2PMask()
503 unsigned NumEltsPerLane = NumElts / NumLanes; in DecodeVPERMIL2PMask()
506 assert((NumElts == RawMask.size()) && "Unexpected mask size"); in DecodeVPERMIL2PMask()
539 Index += Src * NumElts; in DecodeVPERMIL2PMask()