• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/AArch64/

Lines Matching refs:v4i32

170     addQRTypeForNEON(MVT::v4i32);
800 setOperationPromotedToType(ISD::UINT_TO_FP, MVT::v4i8, MVT::v4i32);
801 setOperationPromotedToType(ISD::SINT_TO_FP, MVT::v4i8, MVT::v4i32);
811 // conversion happens in two steps: v4i32 -> v4f32 -> v4f16
812 setOperationAction(ISD::SINT_TO_FP, MVT::v4i32, Custom);
813 setOperationAction(ISD::UINT_TO_FP, MVT::v4i32, Custom);
823 setOperationPromotedToType(ISD::UINT_TO_FP, MVT::v4i16, MVT::v4i32);
824 setOperationPromotedToType(ISD::SINT_TO_FP, MVT::v4i16, MVT::v4i32);
836 setOperationAction(ISD::MUL, MVT::v4i32, Custom);
840 MVT::v16i8, MVT::v8i16, MVT::v4i32, MVT::v2i64 }) {
862 setOperationAction(ISD::ANY_EXTEND, MVT::v4i32, Legal);
869 if (VT == MVT::v16i8 || VT == MVT::v8i16 || VT == MVT::v4i32) {
974 for (auto VT : {MVT::v16i8, MVT::v8i16, MVT::v4i32})
1088 addTypeForNEON(VT, MVT::v4i32);
5527 VecVT = (VT == MVT::v2f32 ? MVT::v2i32 : MVT::v4i32);
5615 VT == MVT::v4i32 || VT == MVT::v4i16 || VT == MVT::v8i16) &&
7720 // Example: dup v4i32 (concat v2i32 X, v2i32 Y), 3 --> dup v4i32 Y, 1
7982 MVT MovTy = (VT.getSizeInBits() == 128) ? MVT::v4i32 : MVT::v2i32;
8069 MVT MovTy = (VT.getSizeInBits() == 128) ? MVT::v4i32 : MVT::v2i32;
8678 if (VT == MVT::v16i8 || VT == MVT::v8i16 || VT == MVT::v4i32 ||
8713 if (VT == MVT::v16i8 || VT == MVT::v8i16 || VT == MVT::v4i32 ||
9141 CmpVT = MVT::v4i32;
10751 ResTy = FloatBits == 32 ? MVT::v4i32 : MVT::v4i64;
10824 ResTy = FloatBits == 32 ? MVT::v4i32 : MVT::v4i64;
11171 // (v4i16 (truncate (vector_shuffle (v4i32 (bitcast (v2i64))),
11172 // (v4i32 (bitcast (v2i64))),
11176 // On AArch64 we know it's fine for v2i64->v4i16 and v4i32->v8i8.
11184 (N00VT == MVT::v2i64 || N00VT == MVT::v4i32) &&
11186 MVT MidVT = (N00VT == MVT::v2i64 ? MVT::v4i32 : MVT::v8i16);
11319 if (Vec.getValueType() == MVT::v4i32)
12127 // %lo = v4i32 sext v4i8 %losrc
12128 // %hi = v4i32 sext v4i8 %hisrc
12136 // to two v4i32 values is to first extend the v8i8 to v8i16, then do
12494 // to, i.e. 0 and 1 for v2i64 and 0, 1, 2, 3 for v4i32.