b2a7317c129762c48ab010d7bfc0ebbb3dad8a58
[oota-llvm.git] / test / CodeGen / CellSPU / fcmp32.ll
1 ; RUN: llc --march=cellspu %s -o - | FileCheck %s
2
3 ; Exercise the floating point comparison operators for f32:
4
5 declare double @fabs(double)
6 declare float @fabsf(float)
7
8 define i1 @fcmp_eq(float %arg1, float %arg2) {
9 ; CHECK: fceq
10 ; CHECK: bi $lr
11         %A = fcmp oeq float %arg1,  %arg2
12         ret i1 %A
13 }
14
15 define i1 @fcmp_mag_eq(float %arg1, float %arg2) {
16 ; CHECK: fcmeq
17 ; CHECK: bi $lr
18         %1 = call float @fabsf(float %arg1) readnone
19         %2 = call float @fabsf(float %arg2) readnone
20         %3 = fcmp oeq float %1, %2
21         ret i1 %3
22 }
23
24 define i1 @test_ogt(float %a, float %b) {
25 ; CHECK: fcgt
26 ; CHECK: bi $lr
27         %cmp = fcmp ogt float %a, %b
28         ret i1 %cmp
29 }
30
31 define i1 @test_ugt(float %a, float %b) {
32 ; CHECK: fcgt
33 ; CHECK: bi $lr
34         %cmp = fcmp ugt float %a, %b
35         ret i1 %cmp
36 }