2008-04-14 19:56:54 +02:00
|
|
|
; RUN: llvm-as < %s | llc -march=x86 | not grep set
|
2006-01-31 00:39:40 +01:00
|
|
|
|
2008-02-21 08:42:26 +01:00
|
|
|
declare i1 @llvm.isunordered.f32(float, float)
|
2006-01-31 00:39:40 +01:00
|
|
|
|
2008-04-01 01:20:09 +02:00
|
|
|
define float @cmp(float %A, float %B, float %C, float %D) nounwind {
|
2006-01-31 00:39:40 +01:00
|
|
|
entry:
|
2008-02-21 08:42:26 +01:00
|
|
|
%tmp.1 = fcmp uno float %A, %B ; <i1> [#uses=1]
|
|
|
|
%tmp.2 = fcmp oge float %A, %B ; <i1> [#uses=1]
|
|
|
|
%tmp.3 = or i1 %tmp.1, %tmp.2 ; <i1> [#uses=1]
|
|
|
|
%tmp.4 = select i1 %tmp.3, float %C, float %D ; <float> [#uses=1]
|
|
|
|
ret float %tmp.4
|
2006-01-31 00:39:40 +01:00
|
|
|
}
|
2008-02-21 08:42:26 +01:00
|
|
|
|