OLD | NEW |
1 ; Test handling of call instructions. | 1 ; Test handling of call instructions. |
2 | 2 |
3 ; RUN: llvm-as < %s | pnacl-freeze -allow-local-symbol-tables \ | 3 ; RUN: %p2i -i %s --insts | FileCheck %s |
4 ; RUN: | %llvm2ice -notranslate -verbose=inst -build-on-read \ | |
5 ; RUN: -allow-pnacl-reader-error-recovery \ | |
6 ; RUN: -allow-local-symbol-tables \ | |
7 ; RUN: | FileCheck %s | |
8 | 4 |
9 define i32 @fib(i32 %n) { | 5 define i32 @fib(i32 %n) { |
10 entry: | 6 entry: |
11 %cmp = icmp slt i32 %n, 2 | 7 %cmp = icmp slt i32 %n, 2 |
12 br i1 %cmp, label %return, label %if.end | 8 br i1 %cmp, label %return, label %if.end |
13 | 9 |
14 if.end: ; preds = %entry | 10 if.end: ; preds = %entry |
15 %sub = add i32 %n, -1 | 11 %sub = add i32 %n, -1 |
16 %call = tail call i32 @fib(i32 %sub) | 12 %call = tail call i32 @fib(i32 %sub) |
17 %sub1 = add i32 %n, -2 | 13 %sub1 = add i32 %n, -2 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 ; CHECK-NEXT: if.then: | 99 ; CHECK-NEXT: if.then: |
104 ; CHECK-NEXT: %n.tr3 = phi i32 [ %call.i, %if.then ], [ %n, %entry ] | 100 ; CHECK-NEXT: %n.tr3 = phi i32 [ %call.i, %if.then ], [ %n, %entry ] |
105 ; CHECK-NEXT: %sub = add i32 %n.tr3, -1 | 101 ; CHECK-NEXT: %sub = add i32 %n.tr3, -1 |
106 ; CHECK-NEXT: %call.i = call i32 @redirect_target(i32 %sub) | 102 ; CHECK-NEXT: %call.i = call i32 @redirect_target(i32 %sub) |
107 ; CHECK-NEXT: %cmp = icmp sgt i32 %call.i, 0 | 103 ; CHECK-NEXT: %cmp = icmp sgt i32 %call.i, 0 |
108 ; CHECK-NEXT: br i1 %cmp, label %if.then, label %if.end | 104 ; CHECK-NEXT: br i1 %cmp, label %if.then, label %if.end |
109 ; CHECK-NEXT: if.end: | 105 ; CHECK-NEXT: if.end: |
110 ; CHECK-NEXT: ret void | 106 ; CHECK-NEXT: ret void |
111 ; CHECK-NEXT: } | 107 ; CHECK-NEXT: } |
112 | 108 |
OLD | NEW |