@@ -32,13 +32,14 @@ define dso_local void @fn() {
32
32
; CHECK-NEXT: # implicit-def: $ebp
33
33
; CHECK-NEXT: jmp .LBB0_1
34
34
; CHECK-NEXT: .p2align 4, 0x90
35
- ; CHECK-NEXT: .LBB0_16 : # %for.inc
35
+ ; CHECK-NEXT: .LBB0_15 : # %for.inc
36
36
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
37
+ ; CHECK-NEXT: movl %esi, %ecx
37
38
; CHECK-NEXT: movb %dl, {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Spill
38
39
; CHECK-NEXT: movb %dh, %dl
39
40
; CHECK-NEXT: .LBB0_1: # %for.cond
40
41
; CHECK-NEXT: # =>This Loop Header: Depth=1
41
- ; CHECK-NEXT: # Child Loop BB0_20 Depth 2
42
+ ; CHECK-NEXT: # Child Loop BB0_19 Depth 2
42
43
; CHECK-NEXT: cmpb $8, %dl
43
44
; CHECK-NEXT: movb %dl, {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Spill
44
45
; CHECK-NEXT: ja .LBB0_3
@@ -55,7 +56,7 @@ define dso_local void @fn() {
55
56
; CHECK-NEXT: movb %cl, %dh
56
57
; CHECK-NEXT: movl $0, h
57
58
; CHECK-NEXT: cmpb $8, %dl
58
- ; CHECK-NEXT: jg .LBB0_8
59
+ ; CHECK-NEXT: jg .LBB0_9
59
60
; CHECK-NEXT: # %bb.5: # %if.then13
60
61
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
61
62
; CHECK-NEXT: movl %eax, %esi
@@ -64,12 +65,10 @@ define dso_local void @fn() {
64
65
; CHECK-NEXT: calll printf
65
66
; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %dh # 1-byte Reload
66
67
; CHECK-NEXT: testb %bl, %bl
67
- ; CHECK-NEXT: movl %esi, %ecx
68
68
; CHECK-NEXT: # implicit-def: $eax
69
- ; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %dl # 1-byte Reload
70
- ; CHECK-NEXT: movb %dl, {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Spill
69
+ ; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %cl # 1-byte Reload
71
70
; CHECK-NEXT: movb %dh, %dl
72
- ; CHECK-NEXT: jne .LBB0_16
71
+ ; CHECK-NEXT: jne .LBB0_15
73
72
; CHECK-NEXT: jmp .LBB0_6
74
73
; CHECK-NEXT: .p2align 4, 0x90
75
74
; CHECK-NEXT: .LBB0_3: # %if.then
@@ -78,82 +77,82 @@ define dso_local void @fn() {
78
77
; CHECK-NEXT: calll printf
79
78
; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %dl # 1-byte Reload
80
79
; CHECK-NEXT: # implicit-def: $eax
80
+ ; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %cl # 1-byte Reload
81
+ ; CHECK-NEXT: jmp .LBB0_6
82
+ ; CHECK-NEXT: .p2align 4, 0x90
83
+ ; CHECK-NEXT: .LBB0_9: # %if.end21
84
+ ; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
85
+ ; CHECK-NEXT: # implicit-def: $ebp
86
+ ; CHECK-NEXT: jmp .LBB0_10
87
+ ; CHECK-NEXT: .p2align 4, 0x90
81
88
; CHECK-NEXT: .LBB0_6: # %for.cond35
82
89
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
90
+ ; CHECK-NEXT: movb %dl, %dh
83
91
; CHECK-NEXT: testl %edi, %edi
84
- ; CHECK-NEXT: je .LBB0_7
85
- ; CHECK-NEXT: .LBB0_11: # %af
92
+ ; CHECK-NEXT: movl %edi, %esi
93
+ ; CHECK-NEXT: movl $0, %edi
94
+ ; CHECK-NEXT: movb %cl, %dl
95
+ ; CHECK-NEXT: je .LBB0_19
96
+ ; CHECK-NEXT: # %bb.7: # %af
86
97
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
87
98
; CHECK-NEXT: testb %bl, %bl
88
- ; CHECK-NEXT: jne .LBB0_12
89
- ; CHECK-NEXT: .LBB0_17 : # %if.end39
99
+ ; CHECK-NEXT: jne .LBB0_8
100
+ ; CHECK-NEXT: .LBB0_16 : # %if.end39
90
101
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
91
102
; CHECK-NEXT: testl %eax, %eax
92
- ; CHECK-NEXT: je .LBB0_19
93
- ; CHECK-NEXT: # %bb.18 : # %if.then41
103
+ ; CHECK-NEXT: je .LBB0_18
104
+ ; CHECK-NEXT: # %bb.17 : # %if.then41
94
105
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
95
106
; CHECK-NEXT: movl $0, {{[0-9]+}}(%esp)
96
107
; CHECK-NEXT: movl $fn, {{[0-9]+}}(%esp)
97
108
; CHECK-NEXT: movl $.str, (%esp)
98
109
; CHECK-NEXT: calll printf
99
- ; CHECK-NEXT: .LBB0_19 : # %for.end46
110
+ ; CHECK-NEXT: .LBB0_18 : # %for.end46
100
111
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
112
+ ; CHECK-NEXT: movl %esi, %edi
101
113
; CHECK-NEXT: # implicit-def: $dl
102
114
; CHECK-NEXT: # implicit-def: $dh
103
115
; CHECK-NEXT: # implicit-def: $ebp
104
- ; CHECK-NEXT: jmp .LBB0_20
105
- ; CHECK-NEXT: .p2align 4, 0x90
106
- ; CHECK-NEXT: .LBB0_8: # %if.end21
107
- ; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
108
- ; CHECK-NEXT: # implicit-def: $ebp
109
- ; CHECK-NEXT: jmp .LBB0_9
110
116
; CHECK-NEXT: .p2align 4, 0x90
111
- ; CHECK-NEXT: .LBB0_7: # in Loop: Header=BB0_1 Depth=1
112
- ; CHECK-NEXT: xorl %edi, %edi
113
- ; CHECK-NEXT: movb %dl, %dh
114
- ; CHECK-NEXT: movb {{[-0-9]+}}(%e{{[sb]}}p), %dl # 1-byte Reload
115
- ; CHECK-NEXT: .p2align 4, 0x90
116
- ; CHECK-NEXT: .LBB0_20: # %for.cond47
117
+ ; CHECK-NEXT: .LBB0_19: # %for.cond47
117
118
; CHECK-NEXT: # Parent Loop BB0_1 Depth=1
118
119
; CHECK-NEXT: # => This Inner Loop Header: Depth=2
119
120
; CHECK-NEXT: testb %bl, %bl
120
- ; CHECK-NEXT: jne .LBB0_20
121
- ; CHECK-NEXT: # %bb.21 : # %for.cond47
122
- ; CHECK-NEXT: # in Loop: Header=BB0_20 Depth=2
121
+ ; CHECK-NEXT: jne .LBB0_19
122
+ ; CHECK-NEXT: # %bb.20 : # %for.cond47
123
+ ; CHECK-NEXT: # in Loop: Header=BB0_19 Depth=2
123
124
; CHECK-NEXT: testb %bl, %bl
124
- ; CHECK-NEXT: jne .LBB0_20
125
- ; CHECK-NEXT: .LBB0_9 : # %ae
125
+ ; CHECK-NEXT: jne .LBB0_19
126
+ ; CHECK-NEXT: .LBB0_10 : # %ae
126
127
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
127
128
; CHECK-NEXT: testb %bl, %bl
128
- ; CHECK-NEXT: jne .LBB0_10
129
- ; CHECK-NEXT: # %bb.13 : # %if.end26
129
+ ; CHECK-NEXT: jne .LBB0_11
130
+ ; CHECK-NEXT: # %bb.12 : # %if.end26
130
131
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
131
- ; CHECK-NEXT: xorl %ecx , %ecx
132
+ ; CHECK-NEXT: xorl %esi , %esi
132
133
; CHECK-NEXT: testb %dl, %dl
133
- ; CHECK-NEXT: je .LBB0_16
134
- ; CHECK-NEXT: # %bb.14 : # %if.end26
134
+ ; CHECK-NEXT: je .LBB0_15
135
+ ; CHECK-NEXT: # %bb.13 : # %if.end26
135
136
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
136
137
; CHECK-NEXT: testl %ebp, %ebp
137
- ; CHECK-NEXT: jne .LBB0_16
138
- ; CHECK-NEXT: # %bb.15 : # %if.then31
138
+ ; CHECK-NEXT: jne .LBB0_15
139
+ ; CHECK-NEXT: # %bb.14 : # %if.then31
139
140
; CHECK-NEXT: # in Loop: Header=BB0_1 Depth=1
140
- ; CHECK-NEXT: xorl %ecx , %ecx
141
+ ; CHECK-NEXT: xorl %esi , %esi
141
142
; CHECK-NEXT: xorl %ebp, %ebp
142
- ; CHECK-NEXT: jmp .LBB0_16
143
+ ; CHECK-NEXT: jmp .LBB0_15
143
144
; CHECK-NEXT: .p2align 4, 0x90
144
- ; CHECK-NEXT: .LBB0_10: # in Loop: Header=BB0_1 Depth=1
145
+ ; CHECK-NEXT: .LBB0_11: # in Loop: Header=BB0_1 Depth=1
146
+ ; CHECK-NEXT: movl %edi, %esi
145
147
; CHECK-NEXT: # implicit-def: $eax
146
148
; CHECK-NEXT: testb %bl, %bl
147
- ; CHECK-NEXT: je .LBB0_17
148
- ; CHECK-NEXT: .LBB0_12 : # in Loop: Header=BB0_1 Depth=1
149
+ ; CHECK-NEXT: je .LBB0_16
150
+ ; CHECK-NEXT: .LBB0_8 : # in Loop: Header=BB0_1 Depth=1
149
151
; CHECK-NEXT: # implicit-def: $edi
150
152
; CHECK-NEXT: # implicit-def: $cl
151
- ; CHECK-NEXT: # kill: killed $cl
152
153
; CHECK-NEXT: # implicit-def: $dl
153
154
; CHECK-NEXT: # implicit-def: $ebp
154
- ; CHECK-NEXT: testl %edi, %edi
155
- ; CHECK-NEXT: jne .LBB0_11
156
- ; CHECK-NEXT: jmp .LBB0_7
155
+ ; CHECK-NEXT: jmp .LBB0_6
157
156
entry:
158
157
br label %for.cond
159
158
0 commit comments