OLD | NEW |
1 ; Tests that -asm-verbose doesn't fail liveness validation because of | 1 ; Tests that -asm-verbose doesn't fail liveness validation because of |
2 ; callee-save pushes/pops in a single-basic-block function. | 2 ; callee-save pushes/pops in a single-basic-block function. |
3 | 3 |
4 ; REQUIRES: allow_dump | 4 ; REQUIRES: allow_dump |
5 ; RUN: %p2i --target x8632 -i %s --filetype=asm --args -O2 -asm-verbose \ | 5 ; RUN: %p2i --target x8632 -i %s --filetype=asm --args -O2 -asm-verbose \ |
6 ; RUN: | FileCheck %s | 6 ; RUN: | FileCheck %s |
7 ; TODO(stichnot,jpp): Enable for x8664. | 7 ; TODO(stichnot,jpp): Enable for x8664. |
8 ; RUIN: %p2i --target x8664 -i %s --filetype=asm --args -O2 -asm-verbose \ | 8 ; RUIN: %p2i --target x8664 -i %s --filetype=asm --args -O2 -asm-verbose \ |
9 ; RUIN: | FileCheck %s | 9 ; RUIN: | FileCheck %s |
10 ; RUN: %p2i --target arm32 -i %s --filetype=asm --args -O2 -asm-verbose \ | 10 ; RUN: %p2i --target arm32 -i %s --filetype=asm --args -O2 -asm-verbose \ |
11 ; RUN: | FileCheck %s | 11 ; RUN: | FileCheck %s |
12 | 12 |
13 define i32 @single_bb(i32 %arg0, i32 %arg1, i32 %arg2, i32 %arg3, i32 %arg4, i32
%arg5, i32 %arg6, i32 %arg7) { | 13 define internal i32 @single_bb(i32 %arg0, i32 %arg1, i32 %arg2, i32 %arg3, |
| 14 i32 %arg4, i32 %arg5, i32 %arg6, i32 %arg7) { |
14 b1: | 15 b1: |
15 %t1 = add i32 %arg0, %arg1 | 16 %t1 = add i32 %arg0, %arg1 |
16 %t2 = add i32 %t1, %arg2 | 17 %t2 = add i32 %t1, %arg2 |
17 %t3 = add i32 %t2, %arg3 | 18 %t3 = add i32 %t2, %arg3 |
18 %t4 = add i32 %t3, %arg4 | 19 %t4 = add i32 %t3, %arg4 |
19 %t5 = add i32 %t4, %arg5 | 20 %t5 = add i32 %t4, %arg5 |
20 %t6 = add i32 %t5, %arg6 | 21 %t6 = add i32 %t5, %arg6 |
21 %t7 = add i32 %t6, %arg7 | 22 %t7 = add i32 %t6, %arg7 |
22 ret i32 %t7 | 23 ret i32 %t7 |
23 } | 24 } |
24 | 25 |
25 ; CHECK-LABEL: single_bb | 26 ; CHECK-LABEL: single_bb |
OLD | NEW |