Home | History | Annotate | Download | only in CellSPU
      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)
     19         %2 = call float @fabsf(float %arg2)
     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 }
     37