Lines Matching refs:NumElts
1112 unsigned NumElts = ResultTy->getNumElements() * 8; in UpgradeX86PSLLDQIntrinsics() local
1115 Type *VecTy = FixedVectorType::get(Builder.getInt8Ty(), NumElts); in UpgradeX86PSLLDQIntrinsics()
1126 for (unsigned l = 0; l != NumElts; l += 16) in UpgradeX86PSLLDQIntrinsics()
1128 unsigned Idx = NumElts + i - Shift; in UpgradeX86PSLLDQIntrinsics()
1129 if (Idx < NumElts) in UpgradeX86PSLLDQIntrinsics()
1130 Idx -= NumElts - 16; // end of lane, switch operand. in UpgradeX86PSLLDQIntrinsics()
1134 Res = Builder.CreateShuffleVector(Res, Op, makeArrayRef(Idxs, NumElts)); in UpgradeX86PSLLDQIntrinsics()
1146 unsigned NumElts = ResultTy->getNumElements() * 8; in UpgradeX86PSRLDQIntrinsics() local
1149 Type *VecTy = FixedVectorType::get(Builder.getInt8Ty(), NumElts); in UpgradeX86PSRLDQIntrinsics()
1160 for (unsigned l = 0; l != NumElts; l += 16) in UpgradeX86PSRLDQIntrinsics()
1164 Idx += NumElts - 16; // end of lane, switch operand. in UpgradeX86PSRLDQIntrinsics()
1168 Res = Builder.CreateShuffleVector(Op, Res, makeArrayRef(Idxs, NumElts)); in UpgradeX86PSRLDQIntrinsics()
1176 unsigned NumElts) { in getX86MaskVec() argument
1177 assert(isPowerOf2_32(NumElts) && "Expected power-of-2 mask elements"); in getX86MaskVec()
1184 if (NumElts <= 4) { in getX86MaskVec()
1186 for (unsigned i = 0; i != NumElts; ++i) in getX86MaskVec()
1189 Mask, Mask, makeArrayRef(Indices, NumElts), "extract"); in getX86MaskVec()
1230 unsigned NumElts = cast<FixedVectorType>(Op0->getType())->getNumElements(); in UpgradeX86ALIGNIntrinsics() local
1231 assert((IsVALIGN || NumElts % 16 == 0) && "Illegal NumElts for PALIGNR!"); in UpgradeX86ALIGNIntrinsics()
1232 assert((!IsVALIGN || NumElts <= 16) && "NumElts too large for VALIGN!"); in UpgradeX86ALIGNIntrinsics()
1233 assert(isPowerOf2_32(NumElts) && "NumElts not a power of 2!"); in UpgradeX86ALIGNIntrinsics()
1237 ShiftVal &= (NumElts - 1); in UpgradeX86ALIGNIntrinsics()
1254 for (unsigned l = 0; l < NumElts; l += 16) { in UpgradeX86ALIGNIntrinsics()
1258 Idx += NumElts - 16; // End of lane, switch operand. in UpgradeX86ALIGNIntrinsics()
1264 makeArrayRef(Indices, NumElts), in UpgradeX86ALIGNIntrinsics()
1357 unsigned NumElts = cast<FixedVectorType>(Ty)->getNumElements(); in upgradeX86Rotate() local
1359 Amt = Builder.CreateVectorSplat(NumElts, Amt); in upgradeX86Rotate()
1427 unsigned NumElts = cast<FixedVectorType>(Ty)->getNumElements(); in upgradeX86ConcatShift() local
1429 Amt = Builder.CreateVectorSplat(NumElts, Amt); in upgradeX86ConcatShift()
1464 unsigned NumElts = cast<FixedVectorType>(Data->getType())->getNumElements(); in UpgradeMaskedStore() local
1465 Mask = getX86MaskVec(Builder, Mask, NumElts); in UpgradeMaskedStore()
1487 unsigned NumElts = cast<FixedVectorType>(ValTy)->getNumElements(); in UpgradeMaskedLoad() local
1488 Mask = getX86MaskVec(Builder, Mask, NumElts); in UpgradeMaskedLoad()
1534 unsigned NumElts = cast<FixedVectorType>(Vec->getType())->getNumElements(); in ApplyX86MaskOn1BitsVec() local
1538 Vec = Builder.CreateAnd(Vec, getX86MaskVec(Builder, Mask, NumElts)); in ApplyX86MaskOn1BitsVec()
1541 if (NumElts < 8) { in ApplyX86MaskOn1BitsVec()
1543 for (unsigned i = 0; i != NumElts; ++i) in ApplyX86MaskOn1BitsVec()
1545 for (unsigned i = NumElts; i != 8; ++i) in ApplyX86MaskOn1BitsVec()
1546 Indices[i] = NumElts + i % NumElts; in ApplyX86MaskOn1BitsVec()
1551 return Builder.CreateBitCast(Vec, Builder.getIntNTy(std::max(NumElts, 8U))); in ApplyX86MaskOn1BitsVec()
1557 unsigned NumElts = cast<FixedVectorType>(Op0->getType())->getNumElements(); in upgradeMaskedCompare() local
1562 FixedVectorType::get(Builder.getInt1Ty(), NumElts)); in upgradeMaskedCompare()
1565 FixedVectorType::get(Builder.getInt1Ty(), NumElts)); in upgradeMaskedCompare()
1612 unsigned NumElts = cast<FixedVectorType>(CI.getType())->getNumElements(); in UpgradeMaskToInt() local
1613 Value *Mask = getX86MaskVec(Builder, Op, NumElts); in UpgradeMaskToInt()
2102 unsigned NumElts = CI->getType()->getPrimitiveSizeInBits() / in UpgradeIntrinsicCall() local
2105 Rep = Builder.CreateVectorSplat(NumElts, Rep); in UpgradeIntrinsicCall()
2152 unsigned NumElts = cast<FixedVectorType>(CI->getArgOperand(1)->getType()) in UpgradeIntrinsicCall() local
2154 Rep = Builder.CreateVectorSplat(NumElts, CI->getArgOperand(0)); in UpgradeIntrinsicCall()
2158 unsigned NumElts = CI->getType()->getScalarSizeInBits(); in UpgradeIntrinsicCall() local
2159 Value *LHS = getX86MaskVec(Builder, CI->getArgOperand(0), NumElts); in UpgradeIntrinsicCall()
2160 Value *RHS = getX86MaskVec(Builder, CI->getArgOperand(1), NumElts); in UpgradeIntrinsicCall()
2162 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
2168 makeArrayRef(Indices, NumElts / 2)); in UpgradeIntrinsicCall()
2170 makeArrayRef(Indices, NumElts / 2)); in UpgradeIntrinsicCall()
2174 makeArrayRef(Indices, NumElts)); in UpgradeIntrinsicCall()
2741 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
2743 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
2744 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
2745 Idxs[i] = ((Imm >> (i%8)) & 1) ? i + NumElts : i; in UpgradeIntrinsicCall()
2826 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
2828 SmallVector<int, 8> Idxs(NumElts); in UpgradeIntrinsicCall()
2829 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
2849 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2850 unsigned HalfSize = NumElts / 2; in UpgradeIntrinsicCall()
2851 SmallVector<int, 8> ShuffleMask(NumElts); in UpgradeIntrinsicCall()
2869 ShuffleMask[i + HalfSize] = NumElts + StartIndex + i; in UpgradeIntrinsicCall()
2880 unsigned NumElts = VecTy->getNumElements(); in UpgradeIntrinsicCall() local
2885 SmallVector<int, 8> Idxs(NumElts); in UpgradeIntrinsicCall()
2889 for (unsigned i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
2901 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2903 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
2904 for (unsigned l = 0; l != NumElts; l += 8) { in UpgradeIntrinsicCall()
2920 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2922 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
2923 for (unsigned l = 0; l != NumElts; l += 8) { in UpgradeIntrinsicCall()
2939 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2944 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
2945 for (unsigned i = 0; i != NumElts; ++i) { in UpgradeIntrinsicCall()
2950 Idxs[i] += NumElts; in UpgradeIntrinsicCall()
2964 unsigned NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2971 SmallVector<int, 16> Idxs(NumElts); in UpgradeIntrinsicCall()
2972 for (unsigned l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
2986 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
2989 SmallVector<int, 64> Idxs(NumElts); in UpgradeIntrinsicCall()
2990 for (int l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
2992 Idxs[i + l] = l + (i / 2) + NumElts * (i % 2); in UpgradeIntrinsicCall()
3002 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3005 SmallVector<int, 64> Idxs(NumElts); in UpgradeIntrinsicCall()
3006 for (int l = 0; l != NumElts; l += NumLaneElts) in UpgradeIntrinsicCall()
3008 Idxs[i + l] = (NumLaneElts / 2) + l + (i / 2) + NumElts * (i % 2); in UpgradeIntrinsicCall()
3570 int NumElts = cast<FixedVectorType>(CI->getType())->getNumElements(); in UpgradeIntrinsicCall() local
3584 SmallVector<int, 32> Idxs(NumElts); in UpgradeIntrinsicCall()
3585 for (int i = 0; i != NumElts; ++i) in UpgradeIntrinsicCall()
3586 Idxs[i] = i + (i % 2) * NumElts; in UpgradeIntrinsicCall()
4044 unsigned NumElts = in UpgradeIntrinsicCall() local
4046 Args[3] = getX86MaskVec(Builder, Args[3], NumElts); in UpgradeIntrinsicCall()