|
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 | | -; FIXME: The testcase hangs with -O1/2/3 enabled. |
7 | 6 | define i32 @loop1() nounwind { |
8 | 7 | ; CHECK-LABEL: loop1: |
9 | 8 | ; CHECK: # %bb.0: # %entry |
10 | | -; CHECK-NEXT: pushl %esi |
11 | | -; CHECK-NEXT: jmp .LBB0_1 |
| 9 | +; CHECK-NEXT: .p2align 4 |
12 | 10 | ; CHECK-NEXT: .LBB0_1: # %tailrecurse |
13 | 11 | ; CHECK-NEXT: # =>This Inner Loop Header: Depth=1 |
14 | 12 | ; CHECK-NEXT: xorl %eax, %eax |
15 | 13 | ; CHECK-NEXT: movl $1, %edx |
16 | 14 | ; CHECK-NEXT: #APP |
17 | 15 | ; CHECK-NEXT: #NO_APP |
18 | | -; CHECK-NEXT: movl %eax, %ecx |
19 | | -; CHECK-NEXT: movl %edx, %esi |
20 | | -; CHECK-NEXT: jmp .LBB0_3 |
| 16 | +; CHECK-NEXT: jmp .LBB0_1 |
21 | 17 | ; CHECK-NEXT: .LBB0_2: # Inline asm indirect target |
22 | | -; CHECK-NEXT: # %tailrecurse.tailrecurse.backedge_crit_edge |
| 18 | +; CHECK-NEXT: # %tailrecurse.tailrecurse_crit_edge |
23 | 19 | ; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1 |
24 | 20 | ; CHECK-NEXT: # Label of block must be emitted |
25 | | -; CHECK-NEXT: .LBB0_3: # %tailrecurse.backedge |
26 | | -; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1 |
27 | 21 | ; CHECK-NEXT: jmp .LBB0_1 |
28 | | -; CHECK-NEXT: .LBB0_4: # Inline asm indirect target |
| 22 | +; CHECK-NEXT: .LBB0_3: # Inline asm indirect target |
29 | 23 | ; CHECK-NEXT: # %lab2.split |
30 | 24 | ; CHECK-NEXT: # Label of block must be emitted |
31 | 25 | ; CHECK-NEXT: movl %edx, %eax |
32 | | -; CHECK-NEXT: popl %esi |
33 | 26 | ; CHECK-NEXT: retl |
34 | 27 | entry: |
35 | 28 | br label %tailrecurse |
|
0 commit comments