Home | History | Annotate | Download | only in SystemZ
      1 ; RUN: llc < %s | grep jl  | count 3
      2 ; RUN: llc < %s | grep jh  | count 3
      3 ; RUN: llc < %s | grep je  | count 2
      4 ; RUN: llc < %s | grep jne | count 2
      5 
      6 target datalayout = "E-p:64:64:64-i1:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128"
      7 target triple = "s390x-unknown-linux-gnu"
      8 
      9 define void @foo(i32 %a, i32 %b) nounwind {
     10 entry:
     11 	%cmp = icmp eq i32 %a, 0		; <i1> [#uses=1]
     12 	br i1 %cmp, label %if.then, label %if.end
     13 
     14 if.then:		; preds = %entry
     15 	tail call void @bar() nounwind
     16 	ret void
     17 
     18 if.end:		; preds = %entry
     19 	ret void
     20 }
     21 
     22 declare void @bar()
     23 
     24 define void @foo1(i32 %a, i32 %b) nounwind {
     25 entry:
     26 	%cmp = icmp ugt i32 %a, 1		; <i1> [#uses=1]
     27 	br i1 %cmp, label %if.then, label %if.end
     28 
     29 if.then:		; preds = %entry
     30 	tail call void @bar() nounwind
     31 	ret void
     32 
     33 if.end:		; preds = %entry
     34 	ret void
     35 }
     36 
     37 define void @foo2(i32 %a, i32 %b) nounwind {
     38 entry:
     39 	%cmp = icmp ugt i32 %a, 1		; <i1> [#uses=1]
     40 	br i1 %cmp, label %if.end, label %if.then
     41 
     42 if.then:		; preds = %entry
     43 	tail call void @bar() nounwind
     44 	ret void
     45 
     46 if.end:		; preds = %entry
     47 	ret void
     48 }
     49 
     50 define void @foo3(i32 %a) nounwind {
     51 entry:
     52 	%cmp = icmp eq i32 %a, 0		; <i1> [#uses=1]
     53 	br i1 %cmp, label %if.end, label %if.then
     54 
     55 if.then:		; preds = %entry
     56 	tail call void @bar() nounwind
     57 	ret void
     58 
     59 if.end:		; preds = %entry
     60 	ret void
     61 }
     62 
     63 define void @foo4(i32 %a) nounwind {
     64 entry:
     65 	%cmp = icmp eq i32 %a, 1		; <i1> [#uses=1]
     66 	br i1 %cmp, label %if.then, label %if.end
     67 
     68 if.then:		; preds = %entry
     69 	tail call void @bar() nounwind
     70 	ret void
     71 
     72 if.end:		; preds = %entry
     73 	ret void
     74 }
     75 
     76 define void @foo5(i32 %a) nounwind {
     77 entry:
     78 	%cmp = icmp eq i32 %a, 1		; <i1> [#uses=1]
     79 	br i1 %cmp, label %if.end, label %if.then
     80 
     81 if.then:		; preds = %entry
     82 	tail call void @bar() nounwind
     83 	ret void
     84 
     85 if.end:		; preds = %entry
     86 	ret void
     87 }
     88 
     89 define void @foo6(i32 %a) nounwind {
     90 entry:
     91 	%cmp = icmp slt i32 %a, 1		; <i1> [#uses=1]
     92 	br i1 %cmp, label %if.then, label %if.end
     93 
     94 if.then:		; preds = %entry
     95 	tail call void @bar() nounwind
     96 	ret void
     97 
     98 if.end:		; preds = %entry
     99 	ret void
    100 }
    101 
    102 define void @foo7(i32 %a) nounwind {
    103 entry:
    104 	%cmp = icmp sgt i32 %a, 1		; <i1> [#uses=1]
    105 	br i1 %cmp, label %if.then, label %if.end
    106 
    107 if.then:		; preds = %entry
    108 	tail call void @bar() nounwind
    109 	ret void
    110 
    111 if.end:		; preds = %entry
    112 	ret void
    113 }
    114 
    115 define void @foo8(i32 %a) nounwind {
    116 entry:
    117 	%cmp = icmp sgt i32 %a, 1		; <i1> [#uses=1]
    118 	br i1 %cmp, label %if.end, label %if.then
    119 
    120 if.then:		; preds = %entry
    121 	tail call void @bar() nounwind
    122 	ret void
    123 
    124 if.end:		; preds = %entry
    125 	ret void
    126 }
    127 
    128 define void @foo9(i32 %a) nounwind {
    129 entry:
    130 	%cmp = icmp slt i32 %a, 1		; <i1> [#uses=1]
    131 	br i1 %cmp, label %if.end, label %if.then
    132 
    133 if.then:		; preds = %entry
    134 	tail call void @bar() nounwind
    135 	ret void
    136 
    137 if.end:		; preds = %entry
    138 	ret void
    139 }
    140