|
1 | 1 | ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
|
2 | 2 |
|
3 |
| -; RUN: llc -O0 -mtriple=i686-- < %s | FileCheck %s |
| 3 | +; RUN: llc -O1 -mtriple=i686-- < %s | FileCheck %s |
4 | 4 |
|
5 | 5 | ; Test that causes multiple defs of %eax.
|
6 | 6 | ; FIXME: The testcase hangs with -O1/2/3 enabled.
|
7 | 7 | define i32 @loop1() {
|
8 | 8 | ; CHECK-LABEL: loop1:
|
9 | 9 | ; CHECK: # %bb.0: # %entry
|
10 |
| -; CHECK-NEXT: pushl %esi |
11 |
| -; CHECK-NEXT: .cfi_def_cfa_offset 8 |
12 |
| -; CHECK-NEXT: .cfi_offset %esi, -8 |
13 |
| -; CHECK-NEXT: jmp .LBB0_1 |
| 10 | +; CHECK-NEXT: .p2align 4 |
14 | 11 | ; CHECK-NEXT: .LBB0_1: # %tailrecurse
|
15 | 12 | ; CHECK-NEXT: # =>This Inner Loop Header: Depth=1
|
16 | 13 | ; CHECK-NEXT: xorl %eax, %eax
|
17 | 14 | ; CHECK-NEXT: movl $1, %edx
|
18 | 15 | ; CHECK-NEXT: #APP
|
19 | 16 | ; CHECK-NEXT: #NO_APP
|
20 |
| -; CHECK-NEXT: movl %eax, %ecx |
21 |
| -; CHECK-NEXT: movl %edx, %esi |
22 |
| -; CHECK-NEXT: jmp .LBB0_3 |
| 17 | +; CHECK-NEXT: jmp .LBB0_1 |
23 | 18 | ; CHECK-NEXT: .LBB0_2: # Inline asm indirect target
|
24 |
| -; CHECK-NEXT: # %tailrecurse.tailrecurse.backedge_crit_edge |
| 19 | +; CHECK-NEXT: # %tailrecurse.tailrecurse_crit_edge |
25 | 20 | ; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
|
26 | 21 | ; CHECK-NEXT: # Label of block must be emitted
|
27 |
| -; CHECK-NEXT: .LBB0_3: # %tailrecurse.backedge |
28 |
| -; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1 |
29 | 22 | ; CHECK-NEXT: jmp .LBB0_1
|
30 |
| -; CHECK-NEXT: .LBB0_4: # Inline asm indirect target |
| 23 | +; CHECK-NEXT: .LBB0_3: # Inline asm indirect target |
31 | 24 | ; CHECK-NEXT: # %lab2.split
|
32 | 25 | ; CHECK-NEXT: # Label of block must be emitted
|
33 | 26 | ; CHECK-NEXT: movl %edx, %eax
|
34 |
| -; CHECK-NEXT: popl %esi |
35 |
| -; CHECK-NEXT: .cfi_def_cfa_offset 4 |
36 | 27 | ; CHECK-NEXT: retl
|
37 | 28 | entry:
|
38 | 29 | br label %tailrecurse
|
|
0 commit comments