From 7823a411d5f75e0f8585ea28e572b5b32ab02caa Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Tue, 5 Aug 2008 22:19:15 +0000 Subject: Fix PR2620: Fix X86cmppd selection code so it expects operands to be v2f64. llvm-svn: 54376 --- llvm/lib/Target/X86/X86InstrSSE.td | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'llvm/lib/Target/X86/X86InstrSSE.td') diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td index 7b5974ff149..856525e462a 100644 --- a/llvm/lib/Target/X86/X86InstrSSE.td +++ b/llvm/lib/Target/X86/X86InstrSSE.td @@ -1721,9 +1721,9 @@ let Constraints = "$src1 = $dst" in { [(set VR128:$dst, (int_x86_sse2_cmp_pd VR128:$src1, (memop addr:$src), imm:$cc))]>; } -def : Pat<(v2i64 (X86cmppd VR128:$src1, VR128:$src2, imm:$cc)), +def : Pat<(v2i64 (X86cmppd (v2f64 VR128:$src1), VR128:$src2, imm:$cc)), (CMPPDrri VR128:$src1, VR128:$src2, imm:$cc)>; -def : Pat<(v2i64 (X86cmppd VR128:$src1, (memop addr:$src2), imm:$cc)), +def : Pat<(v2i64 (X86cmppd (v2f64 VR128:$src1), (memop addr:$src2), imm:$cc)), (CMPPDrmi VR128:$src1, addr:$src2, imm:$cc)>; // Shuffle and unpack instructions -- cgit v1.2.3