Lines Matching refs:_src

7684                                       X86VectorVTInfo _src, X86VectorVTInfo _dst,
7687 defm Z : avx512_cvt_fp_scalar<opc, OpcodeStr, _dst, _src, OpNode, sched>,
7688 avx512_cvt_fp_rc_scalar<opc, OpcodeStr, _dst, _src,
7689 OpNodeRnd, sched>, EVEX_CD8<_src.EltSize, CD8VT1>;
7696 X86VectorVTInfo _src, X86VectorVTInfo _dst,
7699 defm Z : avx512_cvt_fp_scalar<opc, OpcodeStr, _dst, _src, OpNode, sched>,
7700 avx512_cvt_fp_sae_scalar<opc, OpcodeStr, _dst, _src, OpNodeSAE, sched>,
7701 EVEX_CD8<_src.EltSize, CD8VT1>;
7870 AVX512VLVectorVTInfo _dst, AVX512VLVectorVTInfo _src,
7873 defm Z : avx512_vcvt_fpextend<opc, OpcodeStr, _dst.info512, _src.info256,
7875 avx512_vcvt_fp_sae<opc, OpcodeStr, _dst.info512, _src.info256,
7879 defm Z128 : avx512_vcvt_fpextend<opc, OpcodeStr, _dst.info128, _src.info128,
7883 defm Z256 : avx512_vcvt_fpextend<opc, OpcodeStr, _dst.info256, _src.info128,
7890 AVX512VLVectorVTInfo _dst, AVX512VLVectorVTInfo _src,
7892 PatFrag bcast128 = _src.info128.BroadcastLdFrag,
7893 PatFrag loadVT128 = _src.info128.LdFrag,
7894 RegisterClass maskRC128 = _src.info128.KRCWM> {
7896 defm Z : avx512_vcvt_fp<opc, OpcodeStr, _dst.info256, _src.info512,
7898 avx512_vcvt_fp_rc<opc, OpcodeStr, _dst.info256, _src.info512,
7902 defm Z128 : avx512_vcvt_fp<opc, OpcodeStr, _dst.info128, _src.info128,
7904 _src.info128.BroadcastStr, "{x}",
7906 defm Z256 : avx512_vcvt_fp<opc, OpcodeStr, _dst.info128, _src.info256,
7908 sched.YMM, _src.info256.BroadcastStr, "{y}">, EVEX_V256;
7912 def : Pat<(_dst.info128.VT (X86any_vfpround (_src.info128.VT VR128X:$src))),
7914 def : Pat<(X86vmfpround (_src.info128.VT VR128X:$src), (_dst.info128.VT VR128X:$src0),
7917 def : Pat<(X86vmfpround (_src.info128.VT VR128X:$src), _dst.info128.ImmAllZerosV,
7930 def : Pat<(_dst.info128.VT (X86any_vfpround (_src.info128.VT (bcast128 addr:$src)))),
7932 def : Pat<(X86vmfpround (_src.info128.VT (bcast128 addr:$src)),
7935 def : Pat<(X86vmfpround (_src.info128.VT (bcast128 addr:$src)),
8484 AVX512VLVectorVTInfo _dst, AVX512VLVectorVTInfo _src,
8487 defm Z : avx512_vcvt_fp<opc, OpcodeStr, _dst.info256, _src.info512, OpNode,
8489 avx512_vcvt_fp_rc<opc, OpcodeStr, _dst.info256, _src.info512,
8497 defm Z128 : avx512_vcvt_fp<opc, OpcodeStr, _dst.info128, _src.info128, null_frag,
8498 null_frag, sched.XMM, _src.info128.BroadcastStr,
8499 "{x}", i128mem, _src.info128.KRCWM>,
8501 defm Z256 : avx512_vcvt_fp<opc, OpcodeStr, _dst.info128, _src.info256, OpNode,
8502 MaskOpNode, sched.YMM, _src.info256.BroadcastStr,
8507 def : Pat<(_dst.info128.VT (OpNode128 (_src.info128.VT VR128X:$src))),
8509 def : Pat<(OpNode128M (_src.info128.VT VR128X:$src), (_dst.info128.VT VR128X:$src0),
8510 _src.info128.KRCWM:$mask),
8511 … (!cast<Instruction>(NAME # "Z128rrk") VR128X:$src0, _src.info128.KRCWM:$mask, VR128X:$src)>;
8512 def : Pat<(OpNode128M (_src.info128.VT VR128X:$src), _dst.info128.ImmAllZerosV,
8513 _src.info128.KRCWM:$mask),
8514 (!cast<Instruction>(NAME # "Z128rrkz") _src.info128.KRCWM:$mask, VR128X:$src)>;
8516 def : Pat<(_dst.info128.VT (OpNode128 (_src.info128.LdFrag addr:$src))),
8518 def : Pat<(OpNode128M (_src.info128.LdFrag addr:$src), (_dst.info128.VT VR128X:$src0),
8519 _src.info128.KRCWM:$mask),
8520 … (!cast<Instruction>(NAME # "Z128rmk") VR128X:$src0, _src.info128.KRCWM:$mask, addr:$src)>;
8521 def : Pat<(OpNode128M (_src.info128.LdFrag addr:$src), _dst.info128.ImmAllZerosV,
8522 _src.info128.KRCWM:$mask),
8523 (!cast<Instruction>(NAME # "Z128rmkz") _src.info128.KRCWM:$mask, addr:$src)>;
8525 def : Pat<(_dst.info128.VT (OpNode128 (_src.info128.VT (X86VBroadcastld64 addr:$src)))),
8527 def : Pat<(OpNode128M (_src.info128.VT (X86VBroadcastld64 addr:$src)),
8528 (_dst.info128.VT VR128X:$src0), _src.info128.KRCWM:$mask),
8529 … (!cast<Instruction>(NAME # "Z128rmbk") VR128X:$src0, _src.info128.KRCWM:$mask, addr:$src)>;
8530 def : Pat<(OpNode128M (_src.info128.VT (X86VBroadcastld64 addr:$src)),
8531 _dst.info128.ImmAllZerosV, _src.info128.KRCWM:$mask),
8532 (!cast<Instruction>(NAME # "Z128rmbkz") _src.info128.KRCWM:$mask, addr:$src)>;
8926 multiclass avx512_cvtph2ps<X86VectorVTInfo _dest, X86VectorVTInfo _src,
8930 (ins _src.RC:$src), "vcvtph2ps", "$src", "$src",
8931 (X86any_cvtph2ps (_src.VT _src.RC:$src)),
8932 (X86cvtph2ps (_src.VT _src.RC:$src))>,
8936 (X86any_cvtph2ps (_src.VT ld_dag)),
8937 (X86cvtph2ps (_src.VT ld_dag))>,
8941 multiclass avx512_cvtph2ps_sae<X86VectorVTInfo _dest, X86VectorVTInfo _src,
8945 (ins _src.RC:$src), "vcvtph2ps",
8947 (X86cvtph2psSAE (_src.VT _src.RC:$src))>,
8972 multiclass avx512_cvtps2ph<X86VectorVTInfo _dest, X86VectorVTInfo _src,
8976 (ins _src.RC:$src1, i32u8imm:$src2),
8979 (X86any_cvtps2ph (_src.VT _src.RC:$src1), (i32 timm:$src2)))]>,
8983 (ins _dest.RC:$src0, _src.KRCWM:$mask, _src.RC:$src1, i32u8imm:$src2),
8986 (X86mcvtps2ph (_src.VT _src.RC:$src1), (i32 timm:$src2),
8987 _dest.RC:$src0, _src.KRCWM:$mask))]>,
8990 (ins _src.KRCWM:$mask, _src.RC:$src1, i32u8imm:$src2),
8993 (X86mcvtps2ph (_src.VT _src.RC:$src1), (i32 timm:$src2),
8994 _dest.ImmAllZerosV, _src.KRCWM:$mask))]>,
8998 (ins x86memop:$dst, _src.RC:$src1, i32u8imm:$src2),
9002 (ins x86memop:$dst, _dest.KRCWM:$mask, _src.RC:$src1, i32u8imm:$src2),
9009 multiclass avx512_cvtps2ph_sae<X86VectorVTInfo _dest, X86VectorVTInfo _src,
9013 (ins _src.RC:$src1, i32u8imm:$src2),
9016 (X86cvtps2phSAE (_src.VT _src.RC:$src1), (i32 timm:$src2)))]>,
9020 (ins _dest.RC:$src0, _src.KRCWM:$mask, _src.RC:$src1, i32u8imm:$src2),
9023 (X86mcvtps2phSAE (_src.VT _src.RC:$src1), (i32 timm:$src2),
9024 _dest.RC:$src0, _src.KRCWM:$mask))]>,
9027 (ins _src.KRCWM:$mask, _src.RC:$src1, i32u8imm:$src2),
9030 (X86mcvtps2phSAE (_src.VT _src.RC:$src1), (i32 timm:$src2),
9031 _dest.ImmAllZerosV, _src.KRCWM:$mask))]>,
11622 X86VectorVTInfo _dst, X86VectorVTInfo _src> {
11625 (outs _dst.RC:$dst), (ins _src.RC:$src1, _src.RC:$src2),
11628 (OpNode (_src.VT _src.RC:$src1),
11629 (_src.VT _src.RC:$src2))))]>,
11632 (outs _dst.RC:$dst), (ins _src.RC:$src1, _src.MemOp:$src2),
11635 (OpNode (_src.VT _src.RC:$src1),
11636 (_src.VT (bitconvert
11637 (_src.LdFrag addr:$src2))))))]>,