Lines Matching refs:NumElts
9078 unsigned NumElts) { in getMaskVecValue() argument
9086 if (NumElts < 8) { in getMaskVecValue()
9088 for (unsigned i = 0; i != NumElts; ++i) in getMaskVecValue()
9091 makeArrayRef(Indices, NumElts), in getMaskVecValue()
9159 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86MaskLogic() local
9160 Value *LHS = getMaskVecValue(CGF, Ops[0], NumElts); in EmitX86MaskLogic()
9161 Value *RHS = getMaskVecValue(CGF, Ops[1], NumElts); in EmitX86MaskLogic()
9178 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86FunnelShift() local
9180 Amt = CGF.Builder.CreateVectorSplat(NumElts, Amt); in EmitX86FunnelShift()
9217 unsigned NumElts, Value *MaskIn) { in EmitX86MaskedCompareResult() argument
9221 Cmp = CGF.Builder.CreateAnd(Cmp, getMaskVecValue(CGF, MaskIn, NumElts)); in EmitX86MaskedCompareResult()
9224 if (NumElts < 8) { in EmitX86MaskedCompareResult()
9226 for (unsigned i = 0; i != NumElts; ++i) in EmitX86MaskedCompareResult()
9228 for (unsigned i = NumElts; i != 8; ++i) in EmitX86MaskedCompareResult()
9229 Indices[i] = i % NumElts + NumElts; in EmitX86MaskedCompareResult()
9236 std::max(NumElts, 8U))); in EmitX86MaskedCompareResult()
9243 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86MaskedCompare() local
9248 llvm::VectorType::get(CGF.Builder.getInt1Ty(), NumElts)); in EmitX86MaskedCompare()
9251 llvm::VectorType::get(CGF.Builder.getInt1Ty(), NumElts)); in EmitX86MaskedCompare()
9270 return EmitX86MaskedCompareResult(CGF, Cmp, NumElts, MaskIn); in EmitX86MaskedCompare()
9358 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86FMAExpr() local
9359 SmallVector<uint32_t, 16> Indices(NumElts); in EmitX86FMAExpr()
9360 for (unsigned i = 0; i != NumElts; ++i) in EmitX86FMAExpr()
9361 Indices[i] = i + (i % 2) * NumElts; in EmitX86FMAExpr()
9786 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
9788 Index &= NumElts - 1; in EmitX86BuiltinExpr()
9801 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
9803 Index &= NumElts - 1; in EmitX86BuiltinExpr()
10106 unsigned NumElts = DstTy->getVectorNumElements(); in EmitX86BuiltinExpr() local
10108 unsigned SubVectors = SrcNumElts / NumElts; in EmitX86BuiltinExpr()
10112 Index *= NumElts; in EmitX86BuiltinExpr()
10115 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10120 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10209 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
10215 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10216 Indices[i] = ((Imm >> (i % 8)) & 0x1) ? NumElts + i : i; in EmitX86BuiltinExpr()
10219 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10227 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10233 for (unsigned l = 0; l != NumElts; l += 8) { in EmitX86BuiltinExpr()
10243 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10251 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10257 for (unsigned l = 0; l != NumElts; l += 8) { in EmitX86BuiltinExpr()
10267 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10281 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10283 unsigned NumLaneElts = NumElts / NumLanes; in EmitX86BuiltinExpr()
10289 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in EmitX86BuiltinExpr()
10297 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10308 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10310 unsigned NumLaneElts = NumElts / NumLanes; in EmitX86BuiltinExpr()
10316 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in EmitX86BuiltinExpr()
10321 Index += NumElts; in EmitX86BuiltinExpr()
10327 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10336 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10340 for (unsigned l = 0; l != NumElts; l += 4) in EmitX86BuiltinExpr()
10345 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10353 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
10354 assert(NumElts % 16 == 0); in EmitX86BuiltinExpr()
10371 for (unsigned l = 0; l != NumElts; l += 16) { in EmitX86BuiltinExpr()
10375 Idx += NumElts - 16; // End of lane, switch operand. in EmitX86BuiltinExpr()
10381 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10390 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
10394 ShiftVal &= (2 * NumElts) - 1; in EmitX86BuiltinExpr()
10397 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10401 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10414 unsigned NumElts = Ty->getVectorNumElements(); in EmitX86BuiltinExpr() local
10416 unsigned NumLaneElts = NumElts / NumLanes; in EmitX86BuiltinExpr()
10419 for (unsigned l = 0; l != NumElts; l += NumLaneElts) { in EmitX86BuiltinExpr()
10422 if (l >= (NumElts / 2)) in EmitX86BuiltinExpr()
10423 Index += NumElts; // Switch to other source. in EmitX86BuiltinExpr()
10430 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10439 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
10457 for (unsigned i = 0; i != NumElts/2; ++i) { in EmitX86BuiltinExpr()
10459 unsigned Idx = (l * NumElts) + i; in EmitX86BuiltinExpr()
10463 Idx += NumElts/2; in EmitX86BuiltinExpr()
10464 Indices[(l * (NumElts/2)) + i] = Idx; in EmitX86BuiltinExpr()
10469 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10479 unsigned NumElts = ResultType->getVectorNumElements() * 8; in EmitX86BuiltinExpr() local
10487 for (unsigned l = 0; l != NumElts; l += 16) { in EmitX86BuiltinExpr()
10489 unsigned Idx = NumElts + i - ShiftVal; in EmitX86BuiltinExpr()
10490 if (Idx < NumElts) Idx -= NumElts - 16; // end of lane, switch operand. in EmitX86BuiltinExpr()
10495 llvm::Type *VecTy = llvm::VectorType::get(Int8Ty, NumElts); in EmitX86BuiltinExpr()
10499 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10509 unsigned NumElts = ResultType->getVectorNumElements() * 8; in EmitX86BuiltinExpr() local
10517 for (unsigned l = 0; l != NumElts; l += 16) { in EmitX86BuiltinExpr()
10520 if (Idx >= 16) Idx += NumElts - 16; // end of lane, switch operand. in EmitX86BuiltinExpr()
10525 llvm::Type *VecTy = llvm::VectorType::get(Int8Ty, NumElts); in EmitX86BuiltinExpr()
10529 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10538 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10540 if (ShiftVal >= NumElts) in EmitX86BuiltinExpr()
10543 Value *In = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10546 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10547 Indices[i] = NumElts + i - ShiftVal; in EmitX86BuiltinExpr()
10551 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10560 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10562 if (ShiftVal >= NumElts) in EmitX86BuiltinExpr()
10565 Value *In = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10568 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10573 makeArrayRef(Indices, NumElts), in EmitX86BuiltinExpr()
10750 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10751 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10752 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts); in EmitX86BuiltinExpr()
10778 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10779 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10780 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts); in EmitX86BuiltinExpr()
10814 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10815 Value *Res = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10826 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10827 Value *Res = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10834 unsigned NumElts = Ops[0]->getType()->getIntegerBitWidth(); in EmitX86BuiltinExpr() local
10835 Value *LHS = getMaskVecValue(*this, Ops[0], NumElts); in EmitX86BuiltinExpr()
10836 Value *RHS = getMaskVecValue(*this, Ops[1], NumElts); in EmitX86BuiltinExpr()
10838 for (unsigned i = 0; i != NumElts; ++i) in EmitX86BuiltinExpr()
10844 makeArrayRef(Indices, NumElts / 2)); in EmitX86BuiltinExpr()
10846 makeArrayRef(Indices, NumElts / 2)); in EmitX86BuiltinExpr()
10850 makeArrayRef(Indices, NumElts)); in EmitX86BuiltinExpr()
11123 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
11151 return EmitX86MaskedCompareResult(*this, Fpclass, NumElts, MaskIn); in EmitX86BuiltinExpr()
11177 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
11196 return EmitX86MaskedCompareResult(*this, Shufbit, NumElts, MaskIn); in EmitX86BuiltinExpr()
11293 unsigned NumElts = Ops[0]->getType()->getVectorNumElements(); in EmitX86BuiltinExpr() local
11295 return EmitX86MaskedCompareResult(*this, Cmp, NumElts, Ops[3]); in EmitX86BuiltinExpr()