2009-09-09 07:54:48 +08:00
|
|
|
; RUN: llc < %s -march=x86 | not grep set
|
2006-01-31 07:39:40 +08:00
|
|
|
|
2008-02-21 15:42:26 +08:00
|
|
|
declare i1 @llvm.isunordered.f32(float, float)
|
2006-01-31 07:39:40 +08:00
|
|
|
|
2008-04-01 07:20:09 +08:00
|
|
|
define float @cmp(float %A, float %B, float %C, float %D) nounwind {
|
2006-01-31 07:39:40 +08:00
|
|
|
entry:
|
2008-02-21 15:42:26 +08: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 07:39:40 +08:00
|
|
|
}
|
2008-02-21 15:42:26 +08:00
|
|
|
|