Lines Matching defs:NumElts
9794 unsigned NumElts = SVEBitsPerBlock / EltTy->getScalarSizeInBits();
9795 return llvm::ScalableVectorType::get(EltTy, NumElts);
13628 unsigned NumElts) {
13637 if (NumElts < 8) {
13639 for (unsigned i = 0; i != NumElts; ++i)
13642 MaskVec, MaskVec, ArrayRef(Indices, NumElts), "extract");
13710 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
13711 Value *LHS = getMaskVecValue(CGF, Ops[0], NumElts);
13712 Value *RHS = getMaskVecValue(CGF, Ops[1], NumElts);
13729 unsigned NumElts = cast<llvm::FixedVectorType>(Ty)->getNumElements();
13731 Amt = CGF.Builder.CreateVectorSplat(NumElts, Amt);
13808 unsigned NumElts, Value *MaskIn) {
13812 Cmp = CGF.Builder.CreateAnd(Cmp, getMaskVecValue(CGF, MaskIn, NumElts));
13815 if (NumElts < 8) {
13817 for (unsigned i = 0; i != NumElts; ++i)
13819 for (unsigned i = NumElts; i != 8; ++i)
13820 Indices[i] = i % NumElts + NumElts;
13827 std::max(NumElts, 8U)));
13834 unsigned NumElts =
13840 llvm::FixedVectorType::get(CGF.Builder.getInt1Ty(), NumElts));
13843 llvm::FixedVectorType::get(CGF.Builder.getInt1Ty(), NumElts));
13862 return EmitX86MaskedCompareResult(CGF, Cmp, NumElts, MaskIn);
14489 unsigned NumElts =
14492 Index &= NumElts - 1;
14505 unsigned NumElts =
14508 Index &= NumElts - 1;
15088 unsigned NumElts = DstTy->getNumElements();
15091 unsigned SubVectors = SrcNumElts / NumElts;
15095 Index *= NumElts;
15098 for (unsigned i = 0; i != NumElts; ++i)
15101 Value *Res = Builder.CreateShuffleVector(Ops[0], ArrayRef(Indices, NumElts),
15189 unsigned NumElts =
15196 for (unsigned i = 0; i != NumElts; ++i)
15197 Indices[i] = ((Imm >> (i % 8)) & 0x1) ? NumElts + i : i;
15200 ArrayRef(Indices, NumElts), "blend");
15207 unsigned NumElts = Ty->getNumElements();
15213 for (unsigned l = 0; l != NumElts; l += 8) {
15222 return Builder.CreateShuffleVector(Ops[0], ArrayRef(Indices, NumElts),
15230 unsigned NumElts = Ty->getNumElements();
15236 for (unsigned l = 0; l != NumElts; l += 8) {
15245 return Builder.CreateShuffleVector(Ops[0], ArrayRef(Indices, NumElts),
15259 unsigned NumElts = Ty->getNumElements();
15261 unsigned NumLaneElts = NumElts / NumLanes;
15267 for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
15274 return Builder.CreateShuffleVector(Ops[0], ArrayRef(Indices, NumElts),
15285 unsigned NumElts = Ty->getNumElements();
15287 unsigned NumLaneElts = NumElts / NumLanes;
15293 for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
15298 Index += NumElts;
15304 ArrayRef(Indices, NumElts), "shufp");
15312 unsigned NumElts = Ty->getNumElements();
15316 for (unsigned l = 0; l != NumElts; l += 4)
15320 return Builder.CreateShuffleVector(Ops[0], ArrayRef(Indices, NumElts),
15328 unsigned NumElts =
15330 assert(NumElts % 16 == 0);
15347 for (unsigned l = 0; l != NumElts; l += 16) {
15351 Idx += NumElts - 16; // End of lane, switch operand.
15357 ArrayRef(Indices, NumElts), "palignr");
15365 unsigned NumElts =
15370 ShiftVal &= NumElts - 1;
15373 for (unsigned i = 0; i != NumElts; ++i)
15377 ArrayRef(Indices, NumElts), "valign");
15389 unsigned NumElts = Ty->getNumElements();
15391 unsigned NumLaneElts = NumElts / NumLanes;
15394 for (unsigned l = 0; l != NumElts; l += NumLaneElts) {
15397 if (l >= (NumElts / 2))
15398 Index += NumElts; // Switch to other source.
15405 ArrayRef(Indices, NumElts), "shuf");
15413 unsigned NumElts =
15432 for (unsigned i = 0; i != NumElts/2; ++i) {
15434 unsigned Idx = (l * NumElts) + i;
15438 Idx += NumElts/2;
15439 Indices[(l * (NumElts/2)) + i] = Idx;
15444 ArrayRef(Indices, NumElts), "vperm");
15453 unsigned NumElts = ResultType->getNumElements() * 8;
15461 for (unsigned l = 0; l != NumElts; l += 16) {
15463 unsigned Idx = NumElts + i - ShiftVal;
15464 if (Idx < NumElts) Idx -= NumElts - 16; // end of lane, switch operand.
15469 auto *VecTy = llvm::FixedVectorType::get(Int8Ty, NumElts);
15473 Zero, Cast, ArrayRef(Indices, NumElts), "pslldq");
15482 unsigned NumElts = ResultType->getNumElements() * 8;
15490 for (unsigned l = 0; l != NumElts; l += 16) {
15493 if (Idx >= 16) Idx += NumElts - 16; // end of lane, switch operand.
15498 auto *VecTy = llvm::FixedVectorType::get(Int8Ty, NumElts);
15502 Cast, Zero, ArrayRef(Indices, NumElts), "psrldq");
15510 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15512 if (ShiftVal >= NumElts)
15515 Value *In = getMaskVecValue(*this, Ops[0], NumElts);
15518 for (unsigned i = 0; i != NumElts; ++i)
15519 Indices[i] = NumElts + i - ShiftVal;
15523 Zero, In, ArrayRef(Indices, NumElts), "kshiftl");
15531 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15533 if (ShiftVal >= NumElts)
15536 Value *In = getMaskVecValue(*this, Ops[0], NumElts);
15539 for (unsigned i = 0; i != NumElts; ++i)
15544 In, Zero, ArrayRef(Indices, NumElts), "kshiftr");
15734 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15735 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts);
15736 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts);
15762 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15763 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts);
15764 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts);
15798 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15799 Value *Res = getMaskVecValue(*this, Ops[0], NumElts);
15810 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15811 Value *Res = getMaskVecValue(*this, Ops[0], NumElts);
15818 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth();
15819 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts);
15820 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts);
15822 for (unsigned i = 0; i != NumElts; ++i)
15827 LHS = Builder.CreateShuffleVector(LHS, LHS, ArrayRef(Indices, NumElts / 2));
15828 RHS = Builder.CreateShuffleVector(RHS, RHS, ArrayRef(Indices, NumElts / 2));
15832 Builder.CreateShuffleVector(RHS, LHS, ArrayRef(Indices, NumElts));
16131 unsigned NumElts =
16169 return EmitX86MaskedCompareResult(*this, Fpclass, NumElts, MaskIn);
16178 unsigned NumElts =
16206 Result = EmitX86MaskedCompareResult(*this, Result, NumElts, nullptr);
16210 Result = EmitX86MaskedCompareResult(*this, Result, NumElts, nullptr);
16237 unsigned NumElts =
16257 return EmitX86MaskedCompareResult(*this, Shufbit, NumElts, MaskIn);
16395 unsigned NumElts =
16397 Ops[3] = getMaskVecValue(*this, Ops[3], NumElts);
16399 return EmitX86MaskedCompareResult(*this, Cmp, NumElts, nullptr);
16412 unsigned NumElts =
16419 return EmitX86MaskedCompareResult(*this, Cmp, NumElts, Ops[3]);
17193 unsigned NumElts = 0;
17199 NumElts = 2;
17203 NumElts = 4;
17207 NumElts = 8;
17211 NumElts = 16;
17215 Op2, llvm::FixedVectorType::get(ConvTy, NumElts));
19410 unsigned NumElts = cast<llvm::FixedVectorType>(ResultType)->getNumElements();
19412 Amt = Builder.CreateVectorSplat(NumElts, Amt);