OLD | NEW |
| (Empty) |
1 ; This is a very early test that just checks the representation of | |
2 ; arithmetic instructions, i64, variables, and constants. No assembly | |
3 ; tests are done. | |
4 | |
5 ; RUN: %p2i -i %s --args --verbose inst | FileCheck %s | |
6 ; RUN: %p2i -i %s --args --verbose none | FileCheck --check-prefix=ERRORS %s | |
7 ; RUN: %p2i -i %s --insts | %szdiff %s | FileCheck --check-prefix=DUMP %s | |
8 | |
9 define i64 @arithmetic_chain(i64 %foo, i64 %bar) { | |
10 entry: | |
11 %r1 = add i64 %foo, %bar | |
12 %r2 = add i64 %foo, %r1 | |
13 %r3 = mul i64 %bar, %r1 | |
14 %r4 = shl i64 %r3, %r2 | |
15 %r5 = add i64 %r4, 8 | |
16 ret i64 %r5 | |
17 | |
18 ; CHECK: entry: | |
19 ; CHECK-NEXT: %r1 = add i64 %foo, %bar | |
20 ; CHECK-NEXT: %r2 = add i64 %foo, %r1 | |
21 ; CHECK-NEXT: %r3 = mul i64 %bar, %r1 | |
22 ; CHECK-NEXT: %r4 = shl i64 %r3, %r2 | |
23 ; CHECK-NEXT: %r5 = add i64 %r4, 8 | |
24 ; CHECK-NEXT: ret i64 %r5 | |
25 } | |
26 | |
27 ; ERRORS-NOT: ICE translation error | |
28 ; DUMP-NOT: SZ | |
OLD | NEW |