Lines Matching refs:NumElts
1449 unsigned NumElts = ResultTy->getNumElements() * 8; in upgradeX86PSLLDQIntrinsics() local
1452 Type *VecTy = FixedVectorType::get(Builder.getInt8Ty(), NumElts); in upgradeX86PSLLDQIntrinsics()
1463 for (unsigned l = 0; l != NumElts; l += 16) in upgradeX86PSLLDQIntrinsics()
1465 unsigned Idx = NumElts + i - Shift; in upgradeX86PSLLDQIntrinsics()
1466 if (Idx < NumElts) in upgradeX86PSLLDQIntrinsics()
1467 Idx -= NumElts - 16; // end of lane, switch operand. in upgradeX86PSLLDQIntrinsics()
1471 Res = Builder.CreateShuffleVector(Res, Op, ArrayRef(Idxs, NumElts)); in upgradeX86PSLLDQIntrinsics()
1483 unsigned NumElts = ResultTy->getNumElements() * 8; in upgradeX86PSRLDQIntrinsics() local
1486 Type *VecTy = FixedVectorType::get(Builder.getInt8Ty(), NumElts); in upgradeX86PSRLDQIntrinsics()
1497 for (unsigned l = 0; l != NumElts; l += 16) in upgradeX86PSRLDQIntrinsics()
1501 Idx += NumElts - 16; // end of lane, switch operand. in upgradeX86PSRLDQIntrinsics()
1505 Res = Builder.CreateShuffleVector(Op, Res, ArrayRef(Idxs, NumElts)); in upgradeX86PSRLDQIntrinsics()
1513 unsigned NumElts) { in getX86MaskVec() argument
1514 assert(isPowerOf2_32(NumElts) && "Expected power-of-2 mask elements"); in getX86MaskVec()
1521 if (NumElts <= 4) { in getX86MaskVec()
1523 for (unsigned i = 0; i != NumElts; ++i) in getX86MaskVec()
1525 Mask = Builder.CreateShuffleVector(Mask, Mask, ArrayRef(Indices, NumElts), in getX86MaskVec()
1567 unsigned NumElts = cast<FixedVectorType>(Op0->getType())->getNumElements(); in upgradeX86ALIGNIntrinsics() local
1568 assert((IsVALIGN || NumElts % 16 == 0) && "Illegal NumElts for PALIGNR!"); in upgradeX86ALIGNIntrinsics()
1569 assert((!IsVALIGN || NumElts <= 16) && "NumElts too large for VALIGN!"); in upgradeX86ALIGNIntrinsics()
1570 assert(isPowerOf2_32(NumElts) && "NumElts not a power of 2!"); in upgradeX86ALIGNIntrinsics()
1574 ShiftVal &= (NumElts - 1); in upgradeX86ALIGNIntrinsics()
1591 for (unsigned l = 0; l < NumElts; l += 16) { in upgradeX86ALIGNIntrinsics()
1595 Idx += NumElts - 16; // End of lane, switch operand. in upgradeX86ALIGNIntrinsics()
1601 Op1, Op0, ArrayRef(Indices, NumElts), "palignr"); in upgradeX86ALIGNIntrinsics()
1693 unsigned NumElts = cast<FixedVectorType>(Ty)->getNumElements(); in upgradeX86Rotate() local
1695 Amt = Builder.CreateVectorSplat(NumElts, Amt); in upgradeX86Rotate()
1763 unsigned NumElts = cast<FixedVectorType>(Ty)->getNumElements(); in upgradeX86ConcatShift() local
1765 Amt = Builder.CreateVectorSplat(NumElts, Amt); in upgradeX86ConcatShift()
1799 unsigned NumElts = cast<FixedVectorType>(Data->getType())->getNumElements(); in upgradeMaskedStore() local
1800 Mask = getX86MaskVec(Builder, Mask, NumElts); in upgradeMaskedStore()
1822 unsigned NumElts = cast<FixedVectorType>(ValTy)->getNumElements(); in upgradeMaskedLoad() local
1823 Mask = getX86MaskVec(Builder, Mask, NumElts); in upgradeMaskedLoad()
1869 unsigned NumElts = cast<FixedVectorType>(Vec->getType())->getNumElements(); in applyX86MaskOn1BitsVec() local
1873 Vec = Builder.CreateAnd(Vec, getX86MaskVec(Builder, Mask, NumElts)); in applyX86MaskOn1BitsVec()
1876 if (NumElts < 8) { in applyX86MaskOn1BitsVec()
1878 for (unsigned i = 0; i != NumElts; ++i) in applyX86MaskOn1BitsVec()
1880 for (unsigned i = NumElts; i != 8; ++i) in applyX86MaskOn1BitsVec()
1881 Indices[i] = NumElts + i % NumElts; in applyX86MaskOn1BitsVec()
1886 return Builder.CreateBitCast(Vec, Builder.getIntNTy(std::max(NumElts, 8U))); in applyX86MaskOn1BitsVec()
1892 unsigned NumElts = cast<FixedVectorType>(Op0->getType())->getNumElements(); in upgradeMaskedCompare() local
1897 FixedVectorType::get(Builder.getInt1Ty(), NumElts)); in upgradeMaskedCompare()
1900 FixedVectorType::get(Builder.getInt1Ty(), NumElts)); in upgradeMaskedCompare()
1946 unsigned NumElts = cast<FixedVectorType>(CI.getType())->getNumElements(); in upgradeMaskToInt() local
1947 Value *Mask = getX86MaskVec(Builder, Op, NumElts); in upgradeMaskToInt()
2473 unsigned NumElts = CI->getType()->getPrimitiveSizeInBits() / in UpgradeIntrinsicCall() local
2476 Rep = Builder.CreateVectorSplat(NumElts, Rep); in UpgradeIntrinsicCall()
2523 unsigned NumElts = cast<FixedVectorType>(CI->getArgOperand(1)->getType()) in UpgradeIntrinsicCall() local
2525 Rep = Builder.CreateVectorSplat(NumElts, CI->getArgOperand(0)); in UpgradeIntrinsicCall()
2529 unsigned NumElts = CI->getType()->getScalarSizeInBits(); in UpgradeIntrinsicCall() local
2530 Value *LHS = getX86MaskVec(Builder, CI->getArgOperand(0), NumElts); in UpgradeIntrinsicCall()
2531 Value *RHS = getX86MaskVec(Builder, CI->getArgOperand(1), NumElts); in UpgradeIntrinsicCall()
2533 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
2539 Builder.CreateShuffleVector(LHS, LHS, ArrayRef(Indices, NumElts / 2)); in UpgradeIntrinsicCall()
2541 Builder.CreateShuffleVector(RHS, RHS, ArrayRef(Indices, NumElts / 2)); in UpgradeIntrinsicCall()
2544 Rep = Builder.CreateShuffleVector(RHS, LHS, ArrayRef(Indices, NumElts)); in UpgradeIntrinsicCall()
3105 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
3107 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
3108 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
3109 Idxs[i] = ((Imm >> (i%8)) & 1) ? i + NumElts : i; in UpgradeIntrinsicCall()
3190 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
3192 SmallVector<int, 8> Idxs(NumElts); in UpgradeIntrinsicCall()
3193 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
3213 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3214 unsigned HalfSize = NumElts / 2; in UpgradeIntrinsicCall()
3215 SmallVector<int, 8> ShuffleMask(NumElts); in UpgradeIntrinsicCall()
3233 ShuffleMask[i + HalfSize] = NumElts + StartIndex + i; in UpgradeIntrinsicCall()
3244 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
3249 SmallVector<int, 8> Idxs(NumElts); in UpgradeIntrinsicCall()
3253 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
3265 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3267 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
3268 for (unsigned l = 0; l != NumElts; l += 8) { in UpgradeIntrinsicCall()
3284 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3286 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
3287 for (unsigned l = 0; l != NumElts; l += 8) { in UpgradeIntrinsicCall()
3303 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3308 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
3309 for (unsigned i = 0; i != NumElts; ++i) { in UpgradeIntrinsicCall()
3314 Idxs[i] += NumElts; in UpgradeIntrinsicCall()
3328 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3335 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
3336 for (unsigned l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
3350 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3353 SmallVector<int, 64> Idxs(NumElts); in UpgradeIntrinsicCall()
3354 for (int l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
3356 Idxs[i + l] = l + (i / 2) + NumElts * (i % 2); in UpgradeIntrinsicCall()
3366 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3369 SmallVector<int, 64> Idxs(NumElts); in UpgradeIntrinsicCall()
3370 for (int l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
3372 Idxs[i + l] = (NumLaneElts / 2) + l + (i / 2) + NumElts * (i % 2); in UpgradeIntrinsicCall()
3932 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3946 SmallVector<int, 32> Idxs(NumElts); in UpgradeIntrinsicCall()
3947 for (int i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
3948 Idxs[i] = i + (i % 2) * NumElts; in UpgradeIntrinsicCall()
4608 unsigned NumElts = in UpgradeIntrinsicCall() local
4610 Args[3] = getX86MaskVec(Builder, Args[3], NumElts); in UpgradeIntrinsicCall()
4628 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
4632 Args[1], FixedVectorType::get(Builder.getBFloatTy(), NumElts)); in UpgradeIntrinsicCall()
4636 NewCall, FixedVectorType::get(Builder.getInt16Ty(), NumElts)); in UpgradeIntrinsicCall()
4647 unsigned NumElts = in UpgradeIntrinsicCall() local
4650 Args[1], FixedVectorType::get(Builder.getBFloatTy(), NumElts)); in UpgradeIntrinsicCall()
4652 Args[2], FixedVectorType::get(Builder.getBFloatTy(), NumElts)); in UpgradeIntrinsicCall()