• Home
  • Raw
  • Download

Lines Matching refs:v4i64

345 def : Pat<(v2i64 (extract_subvector (v4i64 VR256:$src), (iPTR 0))),
346 (v2i64 (EXTRACT_SUBREG (v4i64 VR256:$src), sub_xmm))>;
359 (INSERT_SUBREG (v4i64 (IMPLICIT_DEF)), VR128:$src, sub_xmm)>;
420 def : Pat<(v4i64 (bitconvert (v8i32 VR256:$src))), (v4i64 VR256:$src)>;
421 def : Pat<(v4i64 (bitconvert (v16i16 VR256:$src))), (v4i64 VR256:$src)>;
422 def : Pat<(v4i64 (bitconvert (v32i8 VR256:$src))), (v4i64 VR256:$src)>;
423 def : Pat<(v4i64 (bitconvert (v8f32 VR256:$src))), (v4i64 VR256:$src)>;
424 def : Pat<(v4i64 (bitconvert (v4f64 VR256:$src))), (v4i64 VR256:$src)>;
425 def : Pat<(v8i32 (bitconvert (v4i64 VR256:$src))), (v8i32 VR256:$src)>;
430 def : Pat<(v16i16 (bitconvert (v4i64 VR256:$src))), (v16i16 VR256:$src)>;
435 def : Pat<(v32i8 (bitconvert (v4i64 VR256:$src))), (v32i8 VR256:$src)>;
440 def : Pat<(v8f32 (bitconvert (v4i64 VR256:$src))), (v8f32 VR256:$src)>;
445 def : Pat<(v4f64 (bitconvert (v4i64 VR256:$src))), (v4f64 VR256:$src)>;
655 def : Pat<(v4i64 (X86Movsd VR256:$src1, VR256:$src2)),
657 (VMOVSDrr (EXTRACT_SUBREG (v4i64 VR256:$src1), sub_xmm),
658 (EXTRACT_SUBREG (v4i64 VR256:$src2), sub_xmm)),
981 def : Pat<(alignedstore256 (v4i64 VR256:$src), addr:$dst),
985 def : Pat<(store (v4i64 VR256:$src), addr:$dst),
999 (v4i64 VR256:$src), (iPTR 0))), addr:$dst),
1018 (v4i64 VR256:$src), (iPTR 0))), addr:$dst),
2597 def : Pat<(v4i64 (X86Shufp VR256:$src1, VR256:$src2, (i8 imm:$imm))),
2599 def : Pat<(v4i64 (X86Shufp VR256:$src1,
2696 def : Pat<(v4i64 (X86Unpckl VR256:$src1, (loadv4i64 addr:$src2))),
2698 def : Pat<(v4i64 (X86Unpckl VR256:$src1, VR256:$src2)),
2700 def : Pat<(v4i64 (X86Unpckh VR256:$src1, (loadv4i64 addr:$src2))),
2702 def : Pat<(v4i64 (X86Unpckh VR256:$src1, VR256:$src2)),
2785 defm PAND : PDI_binop_all<0xDB, "pand", and, v2i64, v4i64,
2787 defm POR : PDI_binop_all<0xEB, "por", or, v2i64, v4i64,
2789 defm PXOR : PDI_binop_all<0xEF, "pxor", xor, v2i64, v4i64,
2791 defm PANDN : PDI_binop_all<0xDF, "pandn", X86andnp, v2i64, v4i64,
2883 [(set VR256:$dst, (v4i64 (OpNode VR256:$src1, VR256:$src2)))],
3582 [(alignednontemporalstore (v4i64 VR256:$src),
3965 defm PADDQ : PDI_binop_all<0xD4, "paddq", add, v2i64, v4i64,
3987 defm PSUBQ : PDI_binop_all<0xFB, "psubq", sub, v2i64, v4i64,
4019 defm VPSADBWY : PDI_binop_rm2<0xF6, "vpsadbw", X86psadbw, v4i64, v32i8, VR256,
4031 defm VPMULUDQY : PDI_binop_rm2<0xF4, "vpmuludq", X86pmuludq, v4i64, v8i32,
4098 VR256, v4i64, v2i64, loadv2i64,
4105 VR256, v4i64, v2i64, loadv2i64,
4493 defm VPUNPCKLQDQ : sse2_unpack_y<0x6C, "vpunpcklqdq", v4i64, X86Unpckl>,
4497 defm VPUNPCKHQDQ : sse2_unpack_y<0x6D, "vpunpckhqdq", v4i64, X86Unpckh>,
4743 def : Pat<(v4i64 (X86Vinsert (bc_v4i64 (v8i32 immAllZerosV)), GR64:$src2, (iPTR 0))),
4749 def : Pat<(v4i64 (X86Vinsert undef, GR64:$src2, (iPTR 0))),
4842 def : Pat<(v4i64 (X86vzmovl (insert_subvector undef,
4974 def : Pat<(v4i64 (X86vzmovl (insert_subvector undef,
4977 def : Pat<(v4i64 (X86vzload addr:$src)),
5141 def : Pat<(X86Movddup (v4i64 VR256:$src)),
5843 def : Pat<(v4i64 (ExtOp (v16i8 VR128:$src))),
5848 def : Pat<(v4i64 (ExtOp (v8i16 VR128:$src))),
5851 def : Pat<(v4i64 (ExtOp (v4i32 VR128:$src))),
5863 def : Pat<(v4i64 (!cast<PatFrag>(ExtTy#"extloadvi8") addr:$src)),
5868 def : Pat<(v4i64 (!cast<PatFrag>(ExtTy#"extloadvi16") addr:$src)),
5871 def : Pat<(v4i64 (!cast<PatFrag>(ExtTy#"extloadvi32") addr:$src)),
5896 def : Pat<(v4i64 (ExtOp (bc_v16i8 (v4i32 (scalar_to_vector (loadi32 addr:$src)))))),
5898 def : Pat<(v4i64 (ExtOp (v16i8 (vzmovl_v4i32 addr:$src)))),
5900 def : Pat<(v4i64 (ExtOp (v16i8 (vzload_v2i64 addr:$src)))),
5902 def : Pat<(v4i64 (ExtOp (bc_v16i8 (loadv2i64 addr:$src)))),
5914 def : Pat<(v4i64 (ExtOp (bc_v8i16 (v2i64 (scalar_to_vector (loadi64 addr:$src)))))),
5916 def : Pat<(v4i64 (ExtOp (v8i16 (vzmovl_v2i64 addr:$src)))),
5918 def : Pat<(v4i64 (ExtOp (v8i16 (vzload_v2i64 addr:$src)))),
5920 def : Pat<(v4i64 (ExtOp (bc_v8i16 (loadv2i64 addr:$src)))),
5923 def : Pat<(v4i64 (ExtOp (bc_v4i32 (loadv2i64 addr:$src)))),
5925 def : Pat<(v4i64 (ExtOp (v4i32 (vzmovl_v2i64 addr:$src)))),
5927 def : Pat<(v4i64 (ExtOp (v4i32 (vzload_v2i64 addr:$src)))),
5929 def : Pat<(v4i64 (ExtOp (bc_v4i32 (loadv2i64 addr:$src)))),
6606 [(set EFLAGS, (X86ptest VR256:$src1, (v4i64 VR256:$src2)))]>,
6812 defm VPMULDQY : SS48I_binop_rm2<0x28, "vpmuldq", X86pmuldq, v4i64, v8i32,
6865 defm VPCMPEQQY : SS48I_binop_rm<0x29, "vpcmpeqq", X86pcmpeq, v4i64, VR256,
7086 def : Pat<(v4i64 (vselect (v4i64 VR256:$mask), (v4i64 VR256:$src1),
7087 (v4i64 VR256:$src2))),
7089 def : Pat<(v4f64 (vselect (v4i64 VR256:$mask), (v4f64 VR256:$src1),
7143 def : Pat<(v4i64 (X86vzmovl (v4i64 VR256:$src))),
7144 (VBLENDPDYrri (v4i64 (AVX_SET0)), VR256:$src, (i8 1))>;
7249 def : Pat<(v4i64 (alignednontemporalload addr:$src)),
7301 defm VPCMPGTQY : SS42I_binop_rm<0x37, "vpcmpgtq", X86pcmpgt, v4i64, VR256,
7874 def : Pat<(vinsert128_insert:$ins (v4i64 VR256:$src1), (v2i64 VR128:$src2),
7891 def : Pat<(vinsert128_insert:$ins (v4i64 VR256:$src1), (loadv2i64 addr:$src2),
7951 (v4i64 VR256:$src1),
7966 def : Pat<(store (v2i64 (vextract128_extract:$ext (v4i64 VR256:$src1),
8067 loadv4i64, v4f64, v4i64>, VEX_L;
8075 def : Pat<(v4f64 (X86VPermilpv VR256:$src1, (v4i64 VR256:$src2))),
8082 def : Pat<(v4i64 (X86VPermilpi VR256:$src1, (i8 imm:$imm))),
8087 def : Pat<(v4i64 (X86VPermilpi (loadv4i64 addr:$src1), (i8 imm:$imm))),
8135 def : Pat<(v4i64 (X86VPerm2x128 VR256:$src1, VR256:$src2, (i8 imm:$imm))),
8145 def : Pat<(v4i64 (X86VPerm2x128 VR256:$src1,
8320 v2i64, v4i64, NoVLX>;
8383 def : Pat<(v4i64 (X86VBroadcast GR64:$src)),
8391 // The v4i64 pattern is not needed because VBROADCASTSDYrr already match.
8398 def : Pat<(v4i64 (X86VBroadcast (loadi64 addr:$src))),
8430 def : Pat<(v4i64 (X86VBroadcast GR64:$src)),
8431 (VINSERTF128rr (INSERT_SUBREG (v4i64 (IMPLICIT_DEF)),
8489 defm VPERMQ : avx2_perm_imm<0x00, "vpermq", loadv4i64, v4i64,
8502 [(set VR256:$dst, (v4i64 (X86VPerm2x128 VR256:$src1, VR256:$src2,
8548 def : Pat<(vinsert128_insert:$ins (v4i64 VR256:$src1), (v2i64 VR128:$src2),
8565 def : Pat<(vinsert128_insert:$ins (v4i64 VR256:$src1), (loadv2i64 addr:$src2),
8602 (v4i64 VR256:$src1),
8617 def : Pat<(store (v2i64 (vextract128_extract:$ext (v4i64 VR256:$src1),
8692 defm : maskmov_lowering<"VMASKMOVPDY", VR256, v4f64, v4i64, "VBLENDVPDY", v8i32>;
8697 defm : maskmov_lowering<"VMASKMOVPDY", VR256, v4i64, v4i64, "VBLENDVPDY", v8i32>;
8703 defm : maskmov_lowering<"VPMASKMOVQY", VR256, v4i64, v4i64, "VBLENDVPDY", v8i32>;
8742 defm VPSLLVQ : avx2_var_shift<0x47, "vpsllvq", shl, v2i64, v4i64>, VEX_W;
8744 defm VPSRLVQ : avx2_var_shift<0x45, "vpsrlvq", srl, v2i64, v4i64>, VEX_W;