Lines Matching refs:v8i32
331 def : Pat<(v4i32 (extract_subvector (v8i32 VR256:$src), (iPTR 0))),
332 (v4i32 (EXTRACT_SUBREG (v8i32 VR256:$src), sub_xmm))>;
354 (INSERT_SUBREG (v8i32 (IMPLICIT_DEF)), VR128:$src, sub_xmm)>;
413 def : Pat<(v4f64 (bitconvert (v8i32 VR256:$src))), (v4f64 VR256:$src)>;
417 def : Pat<(v8f32 (bitconvert (v8i32 VR256:$src))), (v8f32 VR256:$src)>;
423 def : Pat<(v4i64 (bitconvert (v8i32 VR256:$src))), (v4i64 VR256:$src)>;
430 def : Pat<(v32i8 (bitconvert (v8i32 VR256:$src))), (v32i8 VR256:$src)>;
432 def : Pat<(v8i32 (bitconvert (v32i8 VR256:$src))), (v8i32 VR256:$src)>;
433 def : Pat<(v8i32 (bitconvert (v16i16 VR256:$src))), (v8i32 VR256:$src)>;
434 def : Pat<(v8i32 (bitconvert (v8f32 VR256:$src))), (v8i32 VR256:$src)>;
435 def : Pat<(v8i32 (bitconvert (v4i64 VR256:$src))), (v8i32 VR256:$src)>;
436 def : Pat<(v8i32 (bitconvert (v4f64 VR256:$src))), (v8i32 VR256:$src)>;
438 def : Pat<(v16i16 (bitconvert (v8i32 VR256:$src))), (v16i16 VR256:$src)>;
491 def : Pat<(v8i32 immAllZerosV), (AVX_SET0)>;
507 def : Pat<(v8i32 immAllZerosV), (SUBREG_TO_REG (i32 0), (V_SET0), sub_xmm)>;
524 [(set VR256:$dst, (v8i32 immAllOnesV))]>;
621 def : Pat<(v8i32 (X86vzmovl (v8i32 VR256:$src))),
624 (EXTRACT_SUBREG (v8i32 VR256:$src), sub_xmm)), sub_xmm)>;
652 def : Pat<(v8i32 (X86vzmovl (insert_subvector undef,
704 def : Pat<(v8i32 (X86Movss VR256:$src1, VR256:$src2)),
706 (VMOVSSrr (EXTRACT_SUBREG (v8i32 VR256:$src1), sub_xmm),
707 (EXTRACT_SUBREG (v8i32 VR256:$src2), sub_xmm)),
968 def : Pat<(v8i32 (X86vzmovl
1070 def : Pat<(alignedstore256 (v8i32 VR256:$src), addr:$dst),
1078 def : Pat<(store (v8i32 VR256:$src), addr:$dst),
1097 (v8i32 VR256:$src), (iPTR 0))), addr:$dst),
1116 (v8i32 VR256:$src), (iPTR 0))), addr:$dst),
2090 def : Pat<(v8f32 (sint_to_fp (v8i32 VR256:$src))),
2095 def : Pat<(v8i32 (fp_to_sint (v8f32 VR256:$src))),
2097 def : Pat<(v8i32 (fp_to_sint (loadv8f32 addr:$src))),
2549 def : Pat<(v8i32 (X86cmpp (v8f32 VR256:$src1), VR256:$src2, imm:$cc)),
2551 def : Pat<(v8i32 (X86cmpp (v8f32 VR256:$src1), (memop addr:$src2), imm:$cc)),
2630 def : Pat<(v8i32 (X86Shufp VR256:$src1, VR256:$src2, (i8 imm:$imm))),
2632 def : Pat<(v8i32 (X86Shufp VR256:$src1,
2725 def : Pat<(v8i32 (X86Unpckl VR256:$src1, (bc_v8i32 (loadv4i64 addr:$src2)))),
2727 def : Pat<(v8i32 (X86Unpckl VR256:$src1, VR256:$src2)),
2729 def : Pat<(v8i32 (X86Unpckh VR256:$src1, (bc_v8i32 (loadv4i64 addr:$src2)))),
2731 def : Pat<(v8i32 (X86Unpckh VR256:$src1, VR256:$src2)),
4078 defm PADDD : PDI_binop_all<0xFE, "paddd", add, v4i32, v8i32,
4092 defm PSUBD : PDI_binop_all<0xFA, "psubd", sub, v4i32, v8i32,
4136 defm VPMULUDQY : PDI_binop_rm2<0xF4, "vpmuludq", X86pmuludq, v4i64, v8i32,
4198 VR256, v8i32, v4i32, bc_v4i32,
4208 VR256, v8i32, v4i32, bc_v4i32,
4218 VR256, v8i32, v4i32, bc_v4i32,
4330 defm PCMPEQD : PDI_binop_all<0x76, "pcmpeqd", X86pcmpeq, v4i32, v8i32,
4336 defm PCMPGTD : PDI_binop_all<0x66, "pcmpgtd", X86pcmpgt, v4i32, v8i32,
4402 defm PSHUFD : sse2_pshuffle<"pshufd", v4i32, v8i32, X86PShufd>, PD;
4526 defm VPACKSSDW : sse2_pack_y<0x6B, "vpackssdw", v16i16, v8i32, X86Packss,
4531 defm VPACKUSDW : sse4_pack_y<0x2B, "vpackusdw", v16i16, v8i32, X86Packus,
4616 defm VPUNPCKLDQ : sse2_unpack_y<0x62, "vpunpckldq", v8i32, X86Unpckl,
4625 defm VPUNPCKHDQ : sse2_unpack_y<0x6A, "vpunpckhdq", v8i32, X86Unpckh,
4862 def : Pat<(v8i32 (X86Vinsert (v8i32 immAllZerosV), GR32:$src2, (iPTR 0))),
4865 def : Pat<(v4i64 (X86Vinsert (bc_v4i64 (v8i32 immAllZerosV)), GR64:$src2, (iPTR 0))),
4868 def : Pat<(v8i32 (X86Vinsert undef, GR32:$src2, (iPTR 0))),
4980 def : Pat<(v8i32 (X86vzmovl (insert_subvector undef,
5199 def : Pat<(v8i32 (X86Movshdup VR256:$src)),
5201 def : Pat<(v8i32 (X86Movshdup (bc_v8i32 (loadv4i64 addr:$src)))),
5203 def : Pat<(v8i32 (X86Movsldup VR256:$src)),
5205 def : Pat<(v8i32 (X86Movsldup (bc_v8i32 (loadv4i64 addr:$src)))),
5530 def v32i1sextv32i8 : PatLeaf<(v32i8 (X86pcmpgt (bc_v32i8 (v8i32 immAllZerosV)),
5533 def v8i1sextv8i32 : PatLeaf<(v8i32 (X86vsrai VR256:$src, (i8 31)))>;
5575 (bc_v4i64 (add (v8i32 VR256:$src), (v8i1sextv8i32)))),
5739 defm VPHADDDY : SS3I_binop_rm<0x02, "vphaddd", X86hadd, v8i32, VR256,
5745 defm VPHSUBDY : SS3I_binop_rm<0x06, "vphsubd", X86hsub, v8i32, VR256,
5754 defm VPSIGNDY : SS3I_binop_rm<0x0A, "vpsignd", X86psign, v8i32, VR256,
5856 def : Pat<(v8i32 (X86PAlignr VR256:$src1, VR256:$src2, (i8 imm:$imm))),
6226 def : Pat<(v8i32 (X86vsext (v16i8 VR128:$src))), (VPMOVSXBDYrr VR128:$src)>;
6229 def : Pat<(v8i32 (X86vsext (v8i16 VR128:$src))), (VPMOVSXWDYrr VR128:$src)>;
6236 def : Pat<(v8i32 (X86vsext (v32i8 VR256:$src))),
6241 def : Pat<(v8i32 (X86vsext (v16i16 VR256:$src))),
6246 def : Pat<(v4i64 (X86vsext (v8i32 VR256:$src))),
6249 def : Pat<(v8i32 (X86vsext (v8i16 (bitconvert (v2i64 (load addr:$src)))))),
6254 def : Pat<(v8i32 (X86vsext (v16i8 (bitconvert (v2i64
6257 def : Pat<(v8i32 (X86vsext (v16i8 (bitconvert (v2f64
6338 def : Pat<(v8i32 (X86vzext (v16i8 VR128:$src))), (VPMOVZXBDYrr VR128:$src)>;
6341 def : Pat<(v8i32 (X86vzext (v8i16 VR128:$src))), (VPMOVZXWDYrr VR128:$src)>;
6348 def : Pat<(v8i32 (X86vzext (v32i8 VR256:$src))),
6353 def : Pat<(v8i32 (X86vzext (v16i16 VR256:$src))),
6358 def : Pat<(v4i64 (X86vzext (v8i32 VR256:$src))),
7260 defm VPMINSDY : SS48I_binop_rm<0x39, "vpminsd", X86smin, v8i32, VR256,
7263 defm VPMINUDY : SS48I_binop_rm<0x3B, "vpminud", X86umin, v8i32, VR256,
7272 defm VPMAXSDY : SS48I_binop_rm<0x3D, "vpmaxsd", X86smax, v8i32, VR256,
7275 defm VPMAXUDY : SS48I_binop_rm<0x3F, "vpmaxud", X86umax, v8i32, VR256,
7281 defm VPMULDQY : SS48I_binop_rm2<0x28, "vpmuldq", X86pmuldq, v4i64, v8i32,
7318 defm VPMULLDY : SS48I_binop_rm<0x40, "vpmulld", mul, v8i32, VR256,
7508 def : Pat<(v8i32 (vselect (v8i32 VR256:$mask), (v8i32 VR256:$src1),
7509 (v8i32 VR256:$src2))),
7511 def : Pat<(v8f32 (vselect (v8i32 VR256:$mask), (v8f32 VR256:$src1),
8229 def : Pat<(vinsert128_insert:$ins (v8i32 VR256:$src1), (v4i32 VR128:$src2),
8246 def : Pat<(vinsert128_insert:$ins (v8i32 VR256:$src1),
8306 (v8i32 VR256:$src1),
8321 def : Pat<(alignedstore (v4i32 (vextract128_extract:$ext (v8i32 VR256:$src1),
8420 def : Pat<(v8i32 (X86VPermilp VR256:$src1, (i8 imm:$imm))),
8424 def : Pat<(v8i32 (X86VPermilp (bc_v8i32 (loadv4i64 addr:$src1)),
8463 def : Pat<(v8i32 (X86VPerm2x128 VR256:$src1, VR256:$src2, (i8 imm:$imm))),
8472 def : Pat<(v8i32 (X86VPerm2x128 VR256:$src1,
8591 def : Pat<(v8i32 (X86Blendi (v8i32 VR256:$src1), (v8i32 VR256:$src2),
8646 def : Pat<(v8i32 (X86VBroadcast (loadi32 addr:$src))),
8663 def : Pat<(v8i32 (X86VBroadcast (v4i32 VR128:$src))),
8690 def : Pat<(v8i32 (X86VBroadcast GR32:$src)),
8724 def : Pat<(v8i32 (X86VBroadcast (loadi32 addr:$src))),
8750 def : Pat<(v8i32 (X86VBroadcast GR32:$src)),
8751 (VINSERTF128rr (INSERT_SUBREG (v8i32 (IMPLICIT_DEF)),
8784 defm VPERMD : avx2_perm<0x36, "vpermd", loadv4i64, v8i32>;
8828 def : Pat<(v8i32 (X86VPerm2x128 VR256:$src1, VR256:$src2, (i8 imm:$imm))),
8841 def : Pat<(v8i32 (X86VPerm2x128 VR256:$src1, (bc_v8i32 (loadv4i64 addr:$src2)),
8867 def : Pat<(vinsert128_insert:$ins (v8i32 VR256:$src1), (v4i32 VR128:$src2),
8884 def : Pat<(vinsert128_insert:$ins (v8i32 VR256:$src1),
8923 (v8i32 VR256:$src1),
8938 def : Pat<(store (v4i32 (vextract128_extract:$ext (v8i32 VR256:$src1),
9022 defm VPSLLVD : avx2_var_shift<0x47, "vpsllvd", shl, v4i32, v8i32>;
9024 defm VPSRLVD : avx2_var_shift<0x45, "vpsrlvd", srl, v4i32, v8i32>;
9026 defm VPSRAVD : avx2_var_shift<0x46, "vpsravd", sra, v4i32, v8i32>;