Merge branch 'master' into msp430
[llvm/msp430.git] / test / CodeGen / ARM / ifcvt2.ll
blob39420612121822b2be6bdda09edb2f6bc3a52053
1 ; RUN: llvm-as < %s | llc -march=arm
2 ; RUN: llvm-as < %s | llc -march=arm | grep bxlt | count 1
3 ; RUN: llvm-as < %s | llc -march=arm | grep bxgt | count 1
4 ; RUN: llvm-as < %s | llc -march=arm | grep bxge | count 1
6 define i32 @t1(i32 %a, i32 %b, i32 %c, i32 %d) {
7         %tmp2 = icmp sgt i32 %c, 10
8         %tmp5 = icmp slt i32 %d, 4
9         %tmp8 = or i1 %tmp5, %tmp2
10         %tmp13 = add i32 %b, %a
11         br i1 %tmp8, label %cond_true, label %UnifiedReturnBlock
13 cond_true:
14         %tmp15 = add i32 %tmp13, %c
15         %tmp1821 = sub i32 %tmp15, %d
16         ret i32 %tmp1821
18 UnifiedReturnBlock:
19         ret i32 %tmp13
22 define i32 @t2(i32 %a, i32 %b, i32 %c, i32 %d) {
23         %tmp2 = icmp sgt i32 %c, 10
24         %tmp5 = icmp slt i32 %d, 4
25         %tmp8 = and i1 %tmp5, %tmp2
26         %tmp13 = add i32 %b, %a
27         br i1 %tmp8, label %cond_true, label %UnifiedReturnBlock
29 cond_true:
30         %tmp15 = add i32 %tmp13, %c
31         %tmp1821 = sub i32 %tmp15, %d
32         ret i32 %tmp1821
34 UnifiedReturnBlock:
35         ret i32 %tmp13