Home | History | Annotate | Download | only in Mips
      1 ; RUN: llc  < %s -march=mipsel | FileCheck %s
      2 
      3 define void @func0(float %f2, float %f3) nounwind {
      4 entry:
      5 ; CHECK: c.eq.s
      6 ; CHECK: bc1f
      7   %cmp = fcmp oeq float %f2, %f3
      8   br i1 %cmp, label %if.then, label %if.else
      9 
     10 if.then:                                          ; preds = %entry
     11   tail call void (...)* @g0() nounwind
     12   br label %if.end
     13 
     14 if.else:                                          ; preds = %entry
     15   tail call void (...)* @g1() nounwind
     16   br label %if.end
     17 
     18 if.end:                                           ; preds = %if.else, %if.then
     19   ret void
     20 }
     21 
     22 declare void @g0(...)
     23 
     24 declare void @g1(...)
     25 
     26 define void @func1(float %f2, float %f3) nounwind {
     27 entry:
     28 ; CHECK: c.olt.s
     29 ; CHECK: bc1f
     30   %cmp = fcmp olt float %f2, %f3
     31   br i1 %cmp, label %if.then, label %if.else
     32 
     33 if.then:                                          ; preds = %entry
     34   tail call void (...)* @g0() nounwind
     35   br label %if.end
     36 
     37 if.else:                                          ; preds = %entry
     38   tail call void (...)* @g1() nounwind
     39   br label %if.end
     40 
     41 if.end:                                           ; preds = %if.else, %if.then
     42   ret void
     43 }
     44 
     45 define void @func2(float %f2, float %f3) nounwind {
     46 entry:
     47 ; CHECK: c.ole.s
     48 ; CHECK: bc1t
     49   %cmp = fcmp ugt float %f2, %f3
     50   br i1 %cmp, label %if.else, label %if.then
     51 
     52 if.then:                                          ; preds = %entry
     53   tail call void (...)* @g0() nounwind
     54   br label %if.end
     55 
     56 if.else:                                          ; preds = %entry
     57   tail call void (...)* @g1() nounwind
     58   br label %if.end
     59 
     60 if.end:                                           ; preds = %if.else, %if.then
     61   ret void
     62 }
     63 
     64 define void @func3(double %f2, double %f3) nounwind {
     65 entry:
     66 ; CHECK: c.eq.d
     67 ; CHECK: bc1f
     68   %cmp = fcmp oeq double %f2, %f3
     69   br i1 %cmp, label %if.then, label %if.else
     70 
     71 if.then:                                          ; preds = %entry
     72   tail call void (...)* @g0() nounwind
     73   br label %if.end
     74 
     75 if.else:                                          ; preds = %entry
     76   tail call void (...)* @g1() nounwind
     77   br label %if.end
     78 
     79 if.end:                                           ; preds = %if.else, %if.then
     80   ret void
     81 }
     82 
     83 define void @func4(double %f2, double %f3) nounwind {
     84 entry:
     85 ; CHECK: c.olt.d
     86 ; CHECK: bc1f
     87   %cmp = fcmp olt double %f2, %f3
     88   br i1 %cmp, label %if.then, label %if.else
     89 
     90 if.then:                                          ; preds = %entry
     91   tail call void (...)* @g0() nounwind
     92   br label %if.end
     93 
     94 if.else:                                          ; preds = %entry
     95   tail call void (...)* @g1() nounwind
     96   br label %if.end
     97 
     98 if.end:                                           ; preds = %if.else, %if.then
     99   ret void
    100 }
    101 
    102 define void @func5(double %f2, double %f3) nounwind {
    103 entry:
    104 ; CHECK: c.ole.d
    105 ; CHECK: bc1t
    106   %cmp = fcmp ugt double %f2, %f3
    107   br i1 %cmp, label %if.else, label %if.then
    108 
    109 if.then:                                          ; preds = %entry
    110   tail call void (...)* @g0() nounwind
    111   br label %if.end
    112 
    113 if.else:                                          ; preds = %entry
    114   tail call void (...)* @g1() nounwind
    115   br label %if.end
    116 
    117 if.end:                                           ; preds = %if.else, %if.then
    118   ret void
    119 }
    120