Skip to content

Commit

Permalink
[X86][SSE] Dropped (V)CVTPD2PS intrinsic patterns now that its bound …
Browse files Browse the repository at this point in the history
…to X86vfpround

It now uses X86vfpround patterns directly instead.

Followup to D23797

llvm-svn: 280376
  • Loading branch information
RKSimon committed Sep 1, 2016
1 parent d59509e commit ce0e9f0
Showing 1 changed file with 4 additions and 11 deletions.
15 changes: 4 additions & 11 deletions llvm/lib/Target/X86/X86InstrSSE.td
Original file line number Diff line number Diff line change
@@ -2239,17 +2239,14 @@ let Predicates = [HasSSE2] in {
// Provide other assembly rr and rm forms to address this explicitly.
def VCVTPD2PSrr : VPDI<0x5A, MRMSrcReg, (outs VR128:$dst), (ins VR128:$src),
"cvtpd2ps\t{$src, $dst|$dst, $src}",
[(set VR128:$dst, (int_x86_sse2_cvtpd2ps VR128:$src))],
IIC_SSE_CVT_PD_RR>, VEX, Sched<[WriteCvtF2F]>;
[], IIC_SSE_CVT_PD_RR>, VEX, Sched<[WriteCvtF2F]>;

// XMM only
def : InstAlias<"vcvtpd2psx\t{$src, $dst|$dst, $src}",
(VCVTPD2PSrr VR128:$dst, VR128:$src), 0>;
def VCVTPD2PSXrm : VPDI<0x5A, MRMSrcMem, (outs VR128:$dst), (ins f128mem:$src),
"cvtpd2psx\t{$src, $dst|$dst, $src}",
[(set VR128:$dst,
(int_x86_sse2_cvtpd2ps (loadv2f64 addr:$src)))],
IIC_SSE_CVT_PD_RM>, VEX, Sched<[WriteCvtF2FLd]>;
[], IIC_SSE_CVT_PD_RM>, VEX, Sched<[WriteCvtF2FLd]>;

// YMM only
def VCVTPD2PSYrr : VPDI<0x5A, MRMSrcReg, (outs VR128:$dst), (ins VR256:$src),
@@ -2267,14 +2264,10 @@ def : InstAlias<"vcvtpd2ps\t{$src, $dst|$dst, $src}",

def CVTPD2PSrr : PDI<0x5A, MRMSrcReg, (outs VR128:$dst), (ins VR128:$src),
"cvtpd2ps\t{$src, $dst|$dst, $src}",
[(set VR128:$dst, (int_x86_sse2_cvtpd2ps VR128:$src))],
IIC_SSE_CVT_PD_RR>, Sched<[WriteCvtF2F]>;
[], IIC_SSE_CVT_PD_RR>, Sched<[WriteCvtF2F]>;
def CVTPD2PSrm : PDI<0x5A, MRMSrcMem, (outs VR128:$dst), (ins f128mem:$src),
"cvtpd2ps\t{$src, $dst|$dst, $src}",
[(set VR128:$dst,
(int_x86_sse2_cvtpd2ps (memopv2f64 addr:$src)))],
IIC_SSE_CVT_PD_RM>, Sched<[WriteCvtF2FLd]>;

[], IIC_SSE_CVT_PD_RM>, Sched<[WriteCvtF2FLd]>;

// AVX 256-bit register conversion intrinsics
// FIXME: Migrate SSE conversion intrinsics matching to use patterns as below

0 comments on commit ce0e9f0

Please sign in to comment.