llvm-6502/test/CodeGen/X86/pr9127.ll
Stuart Hastings 10ff0bbdfb Add support for x86 CMPEQSS and friends. These instructions do a
floating-point comparison, generate a mask of 0s or 1s, and generally
DTRT with NaNs.  Only profitable when the user wants a materialized 0
or 1 at runtime.  rdar://problem/5993888


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132404 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-01 17:17:45 +00:00

14 lines
347 B
LLVM

; RUN: llc -mtriple=x86_64-linux < %s | FileCheck %s
; RUN: llc -mtriple=x86_64-win32 < %s | FileCheck %s
define i8 @foobar(double %d, double* %x) {
entry:
%tmp2 = load double* %x, align 8
%cmp = fcmp oeq double %tmp2, %d
%conv3 = zext i1 %cmp to i8
ret i8 %conv3
}
; test that the load is folded.
; CHECK: cmpeqsd (%{{rdi|rdx}}), %xmm0