Lines Matching defs:SrcVT

4565   EVT SrcVT = SrcVal.getValueType();
4579 if (SrcVT == MVT::nxv2f32 || SrcVT == MVT::nxv4f32) {
4589 } else if (SrcVT == MVT::nxv2f64 &&
4627 if (useSVEForFixedLengthVectorVT(SrcVT, !Subtarget->isNeonAvailable()))
4638 EVT I32 = SrcVT.changeElementType(MVT::i32);
4639 EVT F32 = SrcVT.changeElementType(MVT::f32);
4640 if (SrcVT.getScalarType() == MVT::f32) {
4648 } else if (SrcVT.getScalarType() == MVT::f64) {
4668 dl, getSetCCResultType(DAG.getDataLayout(), *DAG.getContext(), SrcVT),
4687 if (SrcVT != MVT::f128) {
4689 if (useSVEForFixedLengthVectorVT(SrcVT))
4825 EVT SrcVT = SrcVal.getValueType();
4829 uint64_t SrcElementWidth = SrcVT.getScalarSizeInBits();
4841 EVT SrcElementVT = SrcVT.getVectorElementType();
4849 MVT F32VT = MVT::getVectorVT(MVT::f32, SrcVT.getVectorNumElements());
4857 SrcVT = F32VT;
4867 MVT F64VT = MVT::getVectorVT(MVT::f64, SrcVT.getVectorNumElements());
4869 SrcVT = F64VT;
4892 EVT IntVT = SrcVT.changeVectorElementTypeToInteger();
4929 EVT SrcVT = SrcVal.getValueType();
4931 if (SrcVT.isVector())
4941 if ((SrcVT == MVT::f16 && !Subtarget->hasFullFP16()) || SrcVT == MVT::bf16) {
4943 SrcVT = MVT::f32;
4944 } else if (SrcVT != MVT::f64 && SrcVT != MVT::f32 && SrcVT != MVT::f16 &&
4945 SrcVT != MVT::bf16)
4950 if ((SrcVT == MVT::f64 || SrcVT == MVT::f32 ||
4951 (SrcVT == MVT::f16 && Subtarget->hasFullFP16())) &&
10664 EVT SrcVT = In2.getValueType();
10666 if (!SrcVT.bitsEq(VT))
12885 EVT SrcVT = Src.getValueType();
12886 Src = DAG.getBitcast(SrcVT.is64BitVector() ? MVT::v8i8 : MVT::v16i8, Src);
12887 assert((SrcVT.is64BitVector() || SrcVT.is128BitVector()) &&
12889 if (SrcVT.is64BitVector())
12935 EVT SrcVT = Src.ShuffleVec.getValueType();
12937 TypeSize SrcVTSize = SrcVT.getSizeInBits();
12943 EVT EltVT = SrcVT.getVectorElementType();
12990 if (!SrcVT.is64BitVector()) {
13830 EVT SrcVT = SrcOp.getValueType();
13831 assert(VT.getScalarSizeInBits() % SrcVT.getScalarSizeInBits() == 0 &&
13833 unsigned Scale = VT.getScalarSizeInBits() / SrcVT.getScalarSizeInBits();
13837 SDValue Zeros = DAG.getConstant(0, dl, SrcVT);
13839 DAG.getNode(AArch64ISD::ZIP1, dl, SrcVT, SrcOp, Zeros));
15744 EVT SrcVT = LHS.getValueType();
15745 assert(VT.getSizeInBits() == SrcVT.getSizeInBits() &&
15759 IsCnst && SrcVT.getScalarSizeInBits() == SplatBitSize && SplatValue == 1;
15762 if (SrcVT.getVectorElementType().isFloatingPoint()) {
16071 EVT SrcVT = Src.getValueType();
16078 SrcVT.getVectorElementType() == MVT::i64);
16079 if (SrcVT.isScalableVector() ||
16081 SrcVT, OverrideNEON && Subtarget->useSVEForFixedLengthVectors())) {
16083 if (SrcVT.getVectorElementType() == MVT::i1)
18028 bool AArch64TargetLowering::isExtractSubvectorCheap(EVT ResVT, EVT SrcVT,
19914 EVT SrcVT = N->getOperand(0).getValueType();
19919 all_of(N->op_values(), [SrcVT](SDValue V) {
19920 if (V.getValueType() != SrcVT)
19928 EVT FVT = SrcVT == MVT::v2i8 ? MVT::f16 : MVT::f32;
20892 EVT SrcVT;
20894 SrcVT = cast<VTSDNode>(N.getOperand(1))->getVT();
20896 SrcVT = N.getOperand(0).getValueType();
20898 return SrcVT == MVT::i32 || SrcVT == MVT::i16 || SrcVT == MVT::i8;
22959 EVT SrcVT = Op0->getValueType(0);
22961 return (SrcVT == MVT::nxv8i16 && DstVT == MVT::nxv16i8) ||
22962 (SrcVT == MVT::nxv4i32 && DstVT == MVT::nxv8i16) ||
22963 (SrcVT == MVT::nxv2i64 && DstVT == MVT::nxv4i32);
23774 bool isHalvingTruncateOfLegalScalableType(EVT SrcVT, EVT DstVT) {
23775 return (SrcVT == MVT::nxv8i16 && DstVT == MVT::nxv8i8) ||
23776 (SrcVT == MVT::nxv4i32 && DstVT == MVT::nxv4i16) ||
23777 (SrcVT == MVT::nxv2i64 && DstVT == MVT::nxv2i32);
25383 EVT SrcVT = N0.getOperand(0).getValueType();
25388 if (SrcVT == MVT::i1 ||
25389 (SrcVT.isFloatingPoint() && SrcVT.getSizeInBits() <= 16))
25392 int NumMaskElts = ResVT.getSizeInBits() / SrcVT.getSizeInBits();
25396 SrcVT = EVT::getVectorVT(*DAG.getContext(), SrcVT, NumMaskElts);
25397 EVT CCVT = SrcVT.changeVectorElementTypeToInteger();
25407 DAG.getTargetLoweringInfo().isTypeLegal(SrcVT));
25413 DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, SrcVT, N0.getOperand(0));
25415 DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, SrcVT, N0.getOperand(1));
25595 const EVT SrcVT = Src->getValueType(0);
25596 assert(SrcVT.isScalableVector() &&
25600 MVT SrcElVT = SrcVT.getVectorElementType().getSimpleVT();
25603 if (SrcVT.getSizeInBits().getKnownMinValue() > AArch64::SVEBitsPerBlock)
25609 if ((SrcVT != MVT::nxv4f32) && (SrcVT != MVT::nxv2f64) &&
25612 ((SrcVT != MVT::nxv8f16) && (SrcVT != MVT::nxv8bf16))))
25652 SrcVT.getScalarSizeInBits() / 8)) {
25677 EVT HwSrcVt = getSVEContainerType(SrcVT);
25682 SDValue InputVT = DAG.getValueType(SrcVT);
25683 if (SrcVT.isFloatingPoint())
26897 [[maybe_unused]] EVT SrcVT = Op.getValueType();
26898 assert(SrcVT.isVector() && SrcVT.getVectorElementType() == MVT::i1 &&
26939 EVT SrcVT = Op.getValueType();
26941 if (VT == MVT::v2i16 && SrcVT == MVT::i32) {
26946 if (VT == MVT::v4i8 && SrcVT == MVT::i32) {
26951 if (VT == MVT::v2i8 && SrcVT == MVT::i16) {
26956 if (VT.isScalableVector() && !isTypeLegal(VT) && isTypeLegal(SrcVT)) {
26957 assert(!VT.isFloatingPoint() && SrcVT.isFloatingPoint() &&
26965 if (VT.getVectorElementCount() != SrcVT.getVectorElementCount())
26973 if (SrcVT.isVector() && SrcVT.getVectorElementType() == MVT::i1 &&
26977 if (VT != MVT::i16 || (SrcVT != MVT::f16 && SrcVT != MVT::bf16))
28856 EVT SrcVT = VecOp.getValueType();
28857 EVT ResVT = SrcVT.getVectorElementType();
28859 EVT ContainerVT = SrcVT;
28860 if (SrcVT.isFixedLengthVector()) {
28861 ContainerVT = getContainerForFixedLengthVector(DAG, SrcVT);
28865 SDValue Pg = getPredicateForVector(DAG, DL, SrcVT);
28927 EVT SrcVT = VecOp.getValueType();
28930 SrcVT,
28932 EVT ContainerVT = getContainerForFixedLengthVector(DAG, SrcVT);
28952 SrcVT.getVectorElementType();
28953 EVT RdxVT = SrcVT;
28954 if (SrcVT.isFixedLengthVector() || Opcode == AArch64ISD::UADDV_PRED)
28957 SDValue Pg = getPredicateForVector(DAG, DL, SrcVT);
29044 EVT SrcVT = SrcOp1.getValueType();
29048 EVT PairVT = SrcVT.getDoubleNumVectorElementsVT(*DAG.getContext());
29058 SDValue Pg = getPredicateForFixedLengthVector(DAG, DL, SrcVT);
29076 EVT SrcVT = Val.getValueType();
29079 SrcVT.getVectorElementType());
29081 Val = DAG.getNode(ISD::BITCAST, DL, SrcVT.changeTypeToInteger(), Val);
29100 EVT SrcVT = Val.getValueType();
29101 EVT ContainerSrcVT = getContainerForFixedLengthVector(DAG, SrcVT);
29110 Val = convertFromScalableVector(DAG, SrcVT.changeTypeToInteger(), Val);
29128 EVT SrcVT = Val.getValueType();
29130 EVT ContainerSrcVT = getContainerForFixedLengthVector(DAG, SrcVT);
29132 if (VT.bitsGE(SrcVT)) {
29148 SDValue Pg = getPredicateForFixedLengthVector(DAG, DL, SrcVT);
29153 Val = convertFromScalableVector(DAG, SrcVT, Val);
29265 EVT SrcVT = Val.getValueType();
29267 EVT ContainerSrcVT = getContainerForFixedLengthVector(DAG, SrcVT);
29269 if (VT.bitsGT(SrcVT)) {
29274 Val = DAG.getNode(ISD::BITCAST, DL, SrcVT.changeTypeToInteger(), Val);
29284 SDValue Pg = getPredicateForFixedLengthVector(DAG, DL, SrcVT);
29290 Val = convertFromScalableVector(DAG, SrcVT.changeTypeToInteger(), Val);