llvm.org GIT mirror llvm / 8de958d
Merge a series of test updates r329055-329057. These required skipping the updates to the update test scripts. Note that to regenerate these tests you'll need to use the test update script close to trunk rather than on the branch. =/ git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_60@332902 91177308-0d34-0410-b5e6-96231b3b80d8 Chandler Carruth 1 year, 4 months ago
2 changed file(s) with 4351 addition(s) and 4164 deletion(s). Raw diff Collapse all Expand all
None ; RUN: llc -o - %s | FileCheck %s
1 ; This tests for the problem originally reported in http://llvm.org/PR25951
2 target triple = "i686-unknown-linux-gnu"
0 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
1 ; RUN: llc -o - -mtriple=i686-unknown-unknown %s | FileCheck %s --check-prefixes=ALL,X32
2 ; RUN: llc -o - -mtriple=x86_64-unknown-unknown %s | FileCheck %s --check-prefixes=ALL,X64
3 ;
4 ; Test patterns that require preserving and restoring flags.
35
46 @b = common global i8 0, align 1
57 @c = common global i32 0, align 4
79 @d = common global i8 0, align 1
810 @.str = private unnamed_addr constant [4 x i8] c"%d\0A\00", align 1
911
10 ; CHECK-LABEL: func:
11 ; This tests whether eax is properly saved/restored around the
12 ; lahf/sahf instruction sequences. We make mem op volatile to prevent
13 ; their reordering to avoid spills.
14
15
16 define i32 @func() {
12 declare void @external(i32)
13
14 ; A test that re-uses flags in interesting ways due to volatile accesses.
15 ; Specifically, the first increment's flags are reused for the branch despite
16 ; being clobbered by the second increment.
17 define i32 @test1() nounwind {
18 ; X32-LABEL: test1:
19 ; X32: # %bb.0: # %entry
20 ; X32-NEXT: movb b, %cl
21 ; X32-NEXT: movb %cl, %al
22 ; X32-NEXT: incb %al
23 ; X32-NEXT: movb %al, b
24 ; X32-NEXT: incl c
25 ; X32-NEXT: pushl %eax
26 ; X32-NEXT: seto %al
27 ; X32-NEXT: lahf
28 ; X32-NEXT: movl %eax, %edx
29 ; X32-NEXT: popl %eax
30 ; X32-NEXT: movb a, %ah
31 ; X32-NEXT: movb %ah, %ch
32 ; X32-NEXT: incb %ch
33 ; X32-NEXT: cmpb %cl, %ah
34 ; X32-NEXT: sete d
35 ; X32-NEXT: movb %ch, a
36 ; X32-NEXT: pushl %eax
37 ; X32-NEXT: movl %edx, %eax
38 ; X32-NEXT: addb $127, %al
39 ; X32-NEXT: sahf
40 ; X32-NEXT: popl %eax
41 ; X32-NEXT: je .LBB0_2
42 ; X32-NEXT: # %bb.1: # %if.then
43 ; X32-NEXT: pushl %ebp
44 ; X32-NEXT: movl %esp, %ebp
45 ; X32-NEXT: movsbl %al, %eax
46 ; X32-NEXT: pushl %eax
47 ; X32-NEXT: calll external
48 ; X32-NEXT: addl $4, %esp
49 ; X32-NEXT: popl %ebp
50 ; X32-NEXT: .LBB0_2: # %if.end
51 ; X32-NEXT: xorl %eax, %eax
52 ; X32-NEXT: retl
53 ;
54 ; X64-LABEL: test1:
55 ; X64: # %bb.0: # %entry
56 ; X64-NEXT: movb {{.*}}(%rip), %dil
57 ; X64-NEXT: movl %edi, %eax
58 ; X64-NEXT: incb %al
59 ; X64-NEXT: movb %al, {{.*}}(%rip)
60 ; X64-NEXT: incl {{.*}}(%rip)
61 ; X64-NEXT: pushfq
62 ; X64-NEXT: popq %rsi
63 ; X64-NEXT: movb {{.*}}(%rip), %cl
64 ; X64-NEXT: movl %ecx, %edx
65 ; X64-NEXT: incb %dl
66 ; X64-NEXT: cmpb %dil, %cl
67 ; X64-NEXT: sete {{.*}}(%rip)
68 ; X64-NEXT: movb %dl, {{.*}}(%rip)
69 ; X64-NEXT: pushq %rsi
70 ; X64-NEXT: popfq
71 ; X64-NEXT: je .LBB0_2
72 ; X64-NEXT: # %bb.1: # %if.then
73 ; X64-NEXT: pushq %rbp
74 ; X64-NEXT: movq %rsp, %rbp
75 ; X64-NEXT: movsbl %al, %edi
76 ; X64-NEXT: callq external
77 ; X64-NEXT: popq %rbp
78 ; X64-NEXT: .LBB0_2: # %if.end
79 ; X64-NEXT: xorl %eax, %eax
80 ; X64-NEXT: retq
1781 entry:
1882 %bval = load i8, i8* @b
1983 %inc = add i8 %bval, 1
2488 %aval = load volatile i8, i8* @a
2589 %inc2 = add i8 %aval, 1
2690 store volatile i8 %inc2, i8* @a
27 ; Copy flags produced by the incb of %inc1 to a register, need to save+restore
28 ; eax around it. The flags will be reused by %tobool.
29 ; CHECK: pushl %eax
30 ; CHECK: seto %al
31 ; CHECK: lahf
32 ; CHECK: movl %eax, [[REG:%[a-z]+]]
33 ; CHECK: popl %eax
3491 %cmp = icmp eq i8 %aval, %bval
3592 %conv5 = zext i1 %cmp to i8
3693 store i8 %conv5, i8* @d
3794 %tobool = icmp eq i32 %inc1, 0
38 ; We restore flags with an 'addb, sahf' sequence, need to save+restore eax
39 ; around it.
40 ; CHECK: pushl %eax
41 ; CHECK: movl [[REG]], %eax
42 ; CHECK: addb $127, %al
43 ; CHECK: sahf
44 ; CHECK: popl %eax
4595 br i1 %tobool, label %if.end, label %if.then
4696
4797 if.then:
4898 %conv6 = sext i8 %inc to i32
49 %call = tail call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str, i32 0, i32 0), i32 %conv6)
99 call void @external(i32 %conv6)
50100 br label %if.end
51101
52102 if.end:
53103 ret i32 0
54104 }
55105
56 declare i32 @printf(i8* nocapture readonly, ...)
106 ; Preserve increment flags across a call.
107 define i32 @test2(i32* %ptr) nounwind {
108 ; X32-LABEL: test2:
109 ; X32: # %bb.0: # %entry
110 ; X32-NEXT: pushl %ebp
111 ; X32-NEXT: movl %esp, %ebp
112 ; X32-NEXT: pushl %esi
113 ; X32-NEXT: movl 8(%ebp), %eax
114 ; X32-NEXT: incl (%eax)
115 ; X32-NEXT: seto %al
116 ; X32-NEXT: lahf
117 ; X32-NEXT: movl %eax, %esi
118 ; X32-NEXT: pushl $42
119 ; X32-NEXT: calll external
120 ; X32-NEXT: addl $4, %esp
121 ; X32-NEXT: movl %esi, %eax
122 ; X32-NEXT: addb $127, %al
123 ; X32-NEXT: sahf
124 ; X32-NEXT: je .LBB1_1
125 ; X32-NEXT: # %bb.3: # %else
126 ; X32-NEXT: xorl %eax, %eax
127 ; X32-NEXT: jmp .LBB1_2
128 ; X32-NEXT: .LBB1_1: # %then
129 ; X32-NEXT: movl $64, %eax
130 ; X32-NEXT: .LBB1_2: # %then
131 ; X32-NEXT: popl %esi
132 ; X32-NEXT: popl %ebp
133 ; X32-NEXT: retl
134 ;
135 ; X64-LABEL: test2:
136 ; X64: # %bb.0: # %entry
137 ; X64-NEXT: pushq %rbp
138 ; X64-NEXT: movq %rsp, %rbp
139 ; X64-NEXT: pushq %rbx
140 ; X64-NEXT: pushq %rax
141 ; X64-NEXT: incl (%rdi)
142 ; X64-NEXT: pushfq
143 ; X64-NEXT: popq %rbx
144 ; X64-NEXT: movl $42, %edi
145 ; X64-NEXT: callq external
146 ; X64-NEXT: pushq %rbx
147 ; X64-NEXT: popfq
148 ; X64-NEXT: je .LBB1_1
149 ; X64-NEXT: # %bb.3: # %else
150 ; X64-NEXT: xorl %eax, %eax
151 ; X64-NEXT: jmp .LBB1_2
152 ; X64-NEXT: .LBB1_1: # %then
153 ; X64-NEXT: movl $64, %eax
154 ; X64-NEXT: .LBB1_2: # %then
155 ; X64-NEXT: addq $8, %rsp
156 ; X64-NEXT: popq %rbx
157 ; X64-NEXT: popq %rbp
158 ; X64-NEXT: retq
159 entry:
160 %val = load i32, i32* %ptr
161 %inc = add i32 %val, 1
162 store i32 %inc, i32* %ptr
163 %cmp = icmp eq i32 %inc, 0
164 call void @external(i32 42)
165 br i1 %cmp, label %then, label %else
166
167 then:
168 ret i32 64
169
170 else:
171 ret i32 0
172 }
173
174 declare void @external_a()
175 declare void @external_b()
176
177 ; This lowers to a conditional tail call instead of a conditional branch. This
178 ; is tricky because we can only do this from a leaf function, and so we have to
179 ; use volatile stores similar to test1 to force the save and restore of
180 ; a condition without calling another function. We then set up subsequent calls
181 ; in tail position.
182 define void @test_tail_call(i32* %ptr) nounwind optsize {
183 ; X32-LABEL: test_tail_call:
184 ; X32: # %bb.0: # %entry
185 ; X32-NEXT: pushl %ebp
186 ; X32-NEXT: movl %esp, %ebp
187 ; X32-NEXT: movl 8(%ebp), %eax
188 ; X32-NEXT: incl (%eax)
189 ; X32-NEXT: seto %al
190 ; X32-NEXT: lahf
191 ; X32-NEXT: movl %eax, %eax
192 ; X32-NEXT: incb a
193 ; X32-NEXT: sete d
194 ; X32-NEXT: movl %eax, %eax
195 ; X32-NEXT: addb $127, %al
196 ; X32-NEXT: sahf
197 ; X32-NEXT: je .LBB2_1
198 ; X32-NEXT: # %bb.2: # %else
199 ; X32-NEXT: popl %ebp
200 ; X32-NEXT: jmp external_b # TAILCALL
201 ; X32-NEXT: .LBB2_1: # %then
202 ; X32-NEXT: popl %ebp
203 ; X32-NEXT: jmp external_a # TAILCALL
204 ;
205 ; X64-LABEL: test_tail_call:
206 ; X64: # %bb.0: # %entry
207 ; X64-NEXT: pushq %rbp
208 ; X64-NEXT: movq %rsp, %rbp
209 ; X64-NEXT: incl (%rdi)
210 ; X64-NEXT: pushfq
211 ; X64-NEXT: popq %rax
212 ; X64-NEXT: incb {{.*}}(%rip)
213 ; X64-NEXT: sete {{.*}}(%rip)
214 ; X64-NEXT: pushq %rax
215 ; X64-NEXT: popfq
216 ; X64-NEXT: je .LBB2_1
217 ; X64-NEXT: # %bb.2: # %else
218 ; X64-NEXT: popq %rbp
219 ; X64-NEXT: jmp external_b # TAILCALL
220 ; X64-NEXT: .LBB2_1: # %then
221 ; X64-NEXT: popq %rbp
222 ; X64-NEXT: jmp external_a # TAILCALL
223 entry:
224 %val = load i32, i32* %ptr
225 %inc = add i32 %val, 1
226 store i32 %inc, i32* %ptr
227 %cmp = icmp eq i32 %inc, 0
228 %aval = load volatile i8, i8* @a
229 %inc2 = add i8 %aval, 1
230 store volatile i8 %inc2, i8* @a
231 %cmp2 = icmp eq i8 %inc2, 0
232 %conv5 = zext i1 %cmp2 to i8
233 store i8 %conv5, i8* @d
234 br i1 %cmp, label %then, label %else
235
236 then:
237 tail call void @external_a()
238 ret void
239
240 else:
241 tail call void @external_b()
242 ret void
243 }
1212 ; X32-NEXT: subl $996, %esp # imm = 0x3E4
1313 ; X32-NEXT: movl 12(%ebp), %eax
1414 ; X32-NEXT: movl 32(%eax), %eax
15 ; X32-NEXT: movl %eax, -188(%ebp) # 4-byte Spill
15 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1616 ; X32-NEXT: xorl %ecx, %ecx
1717 ; X32-NEXT: mull %ecx
1818 ; X32-NEXT: movl %eax, %ebx
1919 ; X32-NEXT: movl %edx, %edi
2020 ; X32-NEXT: movl 8(%ebp), %esi
2121 ; X32-NEXT: movl 48(%esi), %eax
22 ; X32-NEXT: movl %eax, -440(%ebp) # 4-byte Spill
22 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2323 ; X32-NEXT: mull %ecx
2424 ; X32-NEXT: xorl %ecx, %ecx
25 ; X32-NEXT: movl %edx, -140(%ebp) # 4-byte Spill
26 ; X32-NEXT: movl %eax, -132(%ebp) # 4-byte Spill
25 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
26 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2727 ; X32-NEXT: addl %ebx, %eax
2828 ; X32-NEXT: adcl %edi, %edx
29 ; X32-NEXT: movl %edx, -884(%ebp) # 4-byte Spill
29 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3030 ; X32-NEXT: movl 32(%esi), %eax
31 ; X32-NEXT: movl %eax, -416(%ebp) # 4-byte Spill
32 ; X32-NEXT: mull %ecx
33 ; X32-NEXT: movl %edx, -400(%ebp) # 4-byte Spill
34 ; X32-NEXT: movl %eax, -324(%ebp) # 4-byte Spill
31 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
32 ; X32-NEXT: mull %ecx
33 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
34 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3535 ; X32-NEXT: movl %eax, %ecx
3636 ; X32-NEXT: addl %ebx, %ecx
3737 ; X32-NEXT: movl %edx, %eax
4141 ; X32-NEXT: movl %eax, -892(%ebp) # 4-byte Spill
4242 ; X32-NEXT: movl 12(%ebp), %eax
4343 ; X32-NEXT: movl 36(%eax), %eax
44 ; X32-NEXT: movl %eax, -148(%ebp) # 4-byte Spill
44 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4545 ; X32-NEXT: xorl %edx, %edx
4646 ; X32-NEXT: mull %edx
47 ; X32-NEXT: movl %edx, -236(%ebp) # 4-byte Spill
47 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4848 ; X32-NEXT: movl %eax, %edi
4949 ; X32-NEXT: movl %edi, -304(%ebp) # 4-byte Spill
5050 ; X32-NEXT: addl %ecx, %edi
51 ; X32-NEXT: movl %edi, -80(%ebp) # 4-byte Spill
51 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
5252 ; X32-NEXT: movl %edx, %eax
5353 ; X32-NEXT: adcl $0, %eax
54 ; X32-NEXT: movl %eax, -220(%ebp) # 4-byte Spill
54 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
5555 ; X32-NEXT: movl 36(%esi), %eax
56 ; X32-NEXT: movl %eax, -316(%ebp) # 4-byte Spill
56 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
5757 ; X32-NEXT: xorl %ecx, %ecx
5858 ; X32-NEXT: mull %ecx
5959 ; X32-NEXT: movl %edx, %ecx
6060 ; X32-NEXT: movl %ecx, -124(%ebp) # 4-byte Spill
6161 ; X32-NEXT: movl %eax, -184(%ebp) # 4-byte Spill
6262 ; X32-NEXT: movl %eax, %edx
63 ; X32-NEXT: movl -400(%ebp), %esi # 4-byte Reload
63 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
6464 ; X32-NEXT: addl %esi, %edx
6565 ; X32-NEXT: adcl $0, %ecx
66 ; X32-NEXT: movl %ecx, -64(%ebp) # 4-byte Spill
67 ; X32-NEXT: movl -324(%ebp), %ecx # 4-byte Reload
66 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
67 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
6868 ; X32-NEXT: movl %ecx, %eax
69 ; X32-NEXT: movl %ebx, -100(%ebp) # 4-byte Spill
69 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
7070 ; X32-NEXT: addl %ebx, %eax
71 ; X32-NEXT: movl %eax, -656(%ebp) # 4-byte Spill
71 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
7272 ; X32-NEXT: leal (%ebx,%edi), %eax
7373 ; X32-NEXT: movl %edx, %edi
7474 ; X32-NEXT: leal (%ecx,%edi), %edx
7575 ; X32-NEXT: adcl %eax, %edx
76 ; X32-NEXT: movl %edx, -700(%ebp) # 4-byte Spill
76 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
7777 ; X32-NEXT: seto %al
7878 ; X32-NEXT: lahf
7979 ; X32-NEXT: movl %eax, %eax
80 ; X32-NEXT: movl %eax, -640(%ebp) # 4-byte Spill
81 ; X32-NEXT: movl %eax, -96(%ebp) # 4-byte Spill
80 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
81 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
8282 ; X32-NEXT: addl %ecx, %edi
83 ; X32-NEXT: movl %edi, -112(%ebp) # 4-byte Spill
84 ; X32-NEXT: adcl %esi, -64(%ebp) # 4-byte Folded Spill
83 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
84 ; X32-NEXT: adcl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
8585 ; X32-NEXT: movl %esi, %ebx
86 ; X32-NEXT: setb -160(%ebp) # 1-byte Folded Spill
86 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
8787 ; X32-NEXT: movl 12(%ebp), %eax
8888 ; X32-NEXT: movl (%eax), %eax
89 ; X32-NEXT: movl %eax, -168(%ebp) # 4-byte Spill
89 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
9090 ; X32-NEXT: xorl %ecx, %ecx
9191 ; X32-NEXT: mull %ecx
9292 ; X32-NEXT: movl %eax, %esi
9393 ; X32-NEXT: movl %edx, %edi
9494 ; X32-NEXT: movl 8(%ebp), %ecx
9595 ; X32-NEXT: movl 16(%ecx), %eax
96 ; X32-NEXT: movl %eax, -348(%ebp) # 4-byte Spill
96 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
9797 ; X32-NEXT: xorl %edx, %edx
9898 ; X32-NEXT: mull %edx
99 ; X32-NEXT: movl %edx, -320(%ebp) # 4-byte Spill
100 ; X32-NEXT: movl %eax, -180(%ebp) # 4-byte Spill
99 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
100 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
101101 ; X32-NEXT: addl %esi, %eax
102102 ; X32-NEXT: adcl %edi, %edx
103 ; X32-NEXT: movl %edx, -428(%ebp) # 4-byte Spill
103 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
104104 ; X32-NEXT: movl (%ecx), %eax
105 ; X32-NEXT: movl %eax, -260(%ebp) # 4-byte Spill
105 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
106106 ; X32-NEXT: xorl %ecx, %ecx
107107 ; X32-NEXT: mull %ecx
108 ; X32-NEXT: movl %edx, -264(%ebp) # 4-byte Spill
109 ; X32-NEXT: movl %eax, -136(%ebp) # 4-byte Spill
108 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
109 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
110110 ; X32-NEXT: addl %esi, %eax
111111 ; X32-NEXT: movl %edx, %eax
112112 ; X32-NEXT: adcl %edi, %eax
113 ; X32-NEXT: movl %eax, -452(%ebp) # 4-byte Spill
114 ; X32-NEXT: movl -132(%ebp), %eax # 4-byte Reload
113 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
114 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
115115 ; X32-NEXT: addl %esi, %eax
116 ; X32-NEXT: movl -140(%ebp), %eax # 4-byte Reload
116 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
117117 ; X32-NEXT: adcl %edi, %eax
118 ; X32-NEXT: movl %eax, -764(%ebp) # 4-byte Spill
119 ; X32-NEXT: movl -324(%ebp), %eax # 4-byte Reload
118 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
119 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
120120 ; X32-NEXT: addl %esi, %eax
121121 ; X32-NEXT: movl %esi, %ecx
122122 ; X32-NEXT: adcl %edi, %ebx
123 ; X32-NEXT: movl %ebx, -424(%ebp) # 4-byte Spill
123 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
124124 ; X32-NEXT: movl %edi, %ebx
125125 ; X32-NEXT: movl %ebx, -256(%ebp) # 4-byte Spill
126126 ; X32-NEXT: movl -100(%ebp), %eax # 4-byte Reload
130130 ; X32-NEXT: setb -388(%ebp) # 1-byte Folded Spill
131131 ; X32-NEXT: movl 12(%ebp), %eax
132132 ; X32-NEXT: movl 4(%eax), %eax
133 ; X32-NEXT: movl %eax, -92(%ebp) # 4-byte Spill
133 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
134134 ; X32-NEXT: xorl %edx, %edx
135135 ; X32-NEXT: mull %edx
136136 ; X32-NEXT: movl %eax, %edi
137137 ; X32-NEXT: addl %ebx, %edi
138138 ; X32-NEXT: movl %edx, %esi
139139 ; X32-NEXT: adcl $0, %esi
140 ; X32-NEXT: movl %ecx, -28(%ebp) # 4-byte Spill
140 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
141141 ; X32-NEXT: addl %ecx, %edi
142 ; X32-NEXT: movl %edi, -16(%ebp) # 4-byte Spill
142 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
143143 ; X32-NEXT: adcl %ebx, %esi
144144 ; X32-NEXT: setb %bh
145145 ; X32-NEXT: addl %eax, %esi
146 ; X32-NEXT: movl %esi, -76(%ebp) # 4-byte Spill
146 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
147147 ; X32-NEXT: movzbl %bh, %eax
148148 ; X32-NEXT: adcl %edx, %eax
149149 ; X32-NEXT: movl %eax, %edi
150150 ; X32-NEXT: movl %edi, -72(%ebp) # 4-byte Spill
151151 ; X32-NEXT: movl 12(%ebp), %eax
152152 ; X32-NEXT: movl 8(%eax), %eax
153 ; X32-NEXT: movl %eax, -108(%ebp) # 4-byte Spill
153 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
154154 ; X32-NEXT: xorl %ebx, %ebx
155155 ; X32-NEXT: mull %ebx
156 ; X32-NEXT: movl %eax, -104(%ebp) # 4-byte Spill
157 ; X32-NEXT: movl %edx, -156(%ebp) # 4-byte Spill
156 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
157 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
158158 ; X32-NEXT: addl %eax, %ecx
159 ; X32-NEXT: movl -256(%ebp), %eax # 4-byte Reload
159 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
160160 ; X32-NEXT: adcl %edx, %eax
161161 ; X32-NEXT: addl %esi, %ecx
162 ; X32-NEXT: movl %ecx, -120(%ebp) # 4-byte Spill
162 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
163163 ; X32-NEXT: adcl %edi, %eax
164 ; X32-NEXT: movl %eax, -60(%ebp) # 4-byte Spill
164 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
165165 ; X32-NEXT: movl 8(%ebp), %eax
166166 ; X32-NEXT: movl 52(%eax), %eax
167 ; X32-NEXT: movl %eax, -340(%ebp) # 4-byte Spill
167 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
168168 ; X32-NEXT: mull %ebx
169169 ; X32-NEXT: movl %eax, %edi
170 ; X32-NEXT: movl -140(%ebp), %ecx # 4-byte Reload
170 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
171171 ; X32-NEXT: addl %ecx, %edi
172172 ; X32-NEXT: movl %edx, %esi
173173 ; X32-NEXT: adcl $0, %esi
174 ; X32-NEXT: movl -132(%ebp), %ebx # 4-byte Reload
174 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
175175 ; X32-NEXT: addl %ebx, %edi
176 ; X32-NEXT: movl %edi, -192(%ebp) # 4-byte Spill
176 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
177177 ; X32-NEXT: adcl %ecx, %esi
178178 ; X32-NEXT: movl %ecx, %edi
179179 ; X32-NEXT: setb %cl
180180 ; X32-NEXT: addl %eax, %esi
181181 ; X32-NEXT: movzbl %cl, %eax
182182 ; X32-NEXT: adcl %edx, %eax
183 ; X32-NEXT: movl %eax, -216(%ebp) # 4-byte Spill
183 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
184184 ; X32-NEXT: movl 8(%ebp), %eax
185185 ; X32-NEXT: movl 56(%eax), %eax
186 ; X32-NEXT: movl %eax, -408(%ebp) # 4-byte Spill
186 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
187187 ; X32-NEXT: xorl %ecx, %ecx
188188 ; X32-NEXT: mull %ecx
189 ; X32-NEXT: movl %eax, -392(%ebp) # 4-byte Spill
190 ; X32-NEXT: movl %edx, -412(%ebp) # 4-byte Spill
189 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
190 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
191191 ; X32-NEXT: movl %ebx, %ecx
192192 ; X32-NEXT: addl %eax, %ebx
193193 ; X32-NEXT: adcl %edx, %edi
194194 ; X32-NEXT: addl %esi, %ebx
195 ; X32-NEXT: movl %ebx, -272(%ebp) # 4-byte Spill
196 ; X32-NEXT: adcl -216(%ebp), %edi # 4-byte Folded Reload
197 ; X32-NEXT: movl %edi, -24(%ebp) # 4-byte Spill
198 ; X32-NEXT: addl -28(%ebp), %ecx # 4-byte Folded Reload
199 ; X32-NEXT: movl %ecx, -68(%ebp) # 4-byte Spill
200 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
201 ; X32-NEXT: adcl -16(%ebp), %eax # 4-byte Folded Reload
202 ; X32-NEXT: movl %eax, -420(%ebp) # 4-byte Spill
195 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
196 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
197 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
198 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
199 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
200 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
201 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
202 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
203203 ; X32-NEXT: movl %ebx, %eax
204 ; X32-NEXT: adcl -120(%ebp), %eax # 4-byte Folded Reload
205 ; X32-NEXT: movl %eax, -616(%ebp) # 4-byte Spill
204 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
205 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
206206 ; X32-NEXT: movl %edi, %eax
207 ; X32-NEXT: adcl -60(%ebp), %eax # 4-byte Folded Reload
208 ; X32-NEXT: movl %eax, -612(%ebp) # 4-byte Spill
209 ; X32-NEXT: movl -64(%ebp), %esi # 4-byte Reload
210 ; X32-NEXT: addl -184(%ebp), %esi # 4-byte Folded Reload
211 ; X32-NEXT: movl %esi, -64(%ebp) # 4-byte Spill
212 ; X32-NEXT: movzbl -160(%ebp), %eax # 1-byte Folded Reload
213 ; X32-NEXT: adcl -124(%ebp), %eax # 4-byte Folded Reload
214 ; X32-NEXT: movl %eax, -152(%ebp) # 4-byte Spill
207 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
208 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
209 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
210 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
211 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
212 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
213 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
214 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
215215 ; X32-NEXT: movl 8(%ebp), %eax
216216 ; X32-NEXT: movl 40(%eax), %eax
217 ; X32-NEXT: movl %eax, -352(%ebp) # 4-byte Spill
217 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
218218 ; X32-NEXT: xorl %ecx, %ecx
219219 ; X32-NEXT: mull %ecx
220 ; X32-NEXT: movl %eax, -364(%ebp) # 4-byte Spill
220 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
221221 ; X32-NEXT: movl %edx, %ebx
222222 ; X32-NEXT: movl %ebx, -396(%ebp) # 4-byte Spill
223223 ; X32-NEXT: movl -324(%ebp), %edx # 4-byte Reload
224224 ; X32-NEXT: movl %edx, %edi
225225 ; X32-NEXT: addl %eax, %edi
226 ; X32-NEXT: movl -400(%ebp), %ecx # 4-byte Reload
226 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
227227 ; X32-NEXT: adcl %ebx, %ecx
228228 ; X32-NEXT: addl %esi, %edi
229 ; X32-NEXT: movl %edi, -44(%ebp) # 4-byte Spill
230 ; X32-NEXT: adcl -152(%ebp), %ecx # 4-byte Folded Reload
231 ; X32-NEXT: movl %ecx, -52(%ebp) # 4-byte Spill
232 ; X32-NEXT: addl -28(%ebp), %edx # 4-byte Folded Reload
233 ; X32-NEXT: movl %edx, -32(%ebp) # 4-byte Spill
234 ; X32-NEXT: movl -112(%ebp), %eax # 4-byte Reload
235 ; X32-NEXT: adcl -16(%ebp), %eax # 4-byte Folded Reload
236 ; X32-NEXT: movl %eax, -196(%ebp) # 4-byte Spill
229 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
230 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
231 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
232 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
233 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
234 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
235 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
236 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
237237 ; X32-NEXT: seto %al
238238 ; X32-NEXT: lahf
239239 ; X32-NEXT: movl %eax, %eax
240 ; X32-NEXT: movl %eax, -456(%ebp) # 4-byte Spill
240 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
241241 ; X32-NEXT: movl %edi, %eax
242 ; X32-NEXT: adcl -120(%ebp), %eax # 4-byte Folded Reload
243 ; X32-NEXT: movl %eax, -504(%ebp) # 4-byte Spill
242 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
243 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
244244 ; X32-NEXT: movl %ecx, %eax
245 ; X32-NEXT: adcl -60(%ebp), %eax # 4-byte Folded Reload
246 ; X32-NEXT: movl %eax, -508(%ebp) # 4-byte Spill
245 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
246 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
247247 ; X32-NEXT: movl 12(%ebp), %ecx
248248 ; X32-NEXT: movl 16(%ecx), %eax
249 ; X32-NEXT: movl %eax, -212(%ebp) # 4-byte Spill
249 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
250250 ; X32-NEXT: xorl %ebx, %ebx
251251 ; X32-NEXT: mull %ebx
252252 ; X32-NEXT: movl %eax, %edi
253253 ; X32-NEXT: movl %edx, %esi
254254 ; X32-NEXT: movl %esi, -84(%ebp) # 4-byte Spill
255255 ; X32-NEXT: movl 20(%ecx), %eax
256 ; X32-NEXT: movl %eax, -252(%ebp) # 4-byte Spill
256 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
257257 ; X32-NEXT: mull %ebx
258258 ; X32-NEXT: movl %eax, %ebx
259259 ; X32-NEXT: addl %esi, %ebx
260260 ; X32-NEXT: movl %edx, %ecx
261261 ; X32-NEXT: adcl $0, %ecx
262262 ; X32-NEXT: addl %edi, %ebx
263 ; X32-NEXT: movl %ebx, -164(%ebp) # 4-byte Spill
263 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
264264 ; X32-NEXT: adcl %esi, %ecx
265265 ; X32-NEXT: setb %bl
266266 ; X32-NEXT: addl %eax, %ecx
268268 ; X32-NEXT: adcl %edx, %esi
269269 ; X32-NEXT: movl 12(%ebp), %eax
270270 ; X32-NEXT: movl 24(%eax), %eax
271 ; X32-NEXT: movl %eax, -284(%ebp) # 4-byte Spill
271 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
272272 ; X32-NEXT: xorl %edx, %edx
273273 ; X32-NEXT: mull %edx
274 ; X32-NEXT: movl %eax, -308(%ebp) # 4-byte Spill
275 ; X32-NEXT: movl %edx, -208(%ebp) # 4-byte Spill
274 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
275 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
276276 ; X32-NEXT: movl %edi, %ebx
277277 ; X32-NEXT: addl %eax, %ebx
278 ; X32-NEXT: movl -84(%ebp), %eax # 4-byte Reload
278 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
279279 ; X32-NEXT: adcl %edx, %eax
280280 ; X32-NEXT: addl %ecx, %ebx
281 ; X32-NEXT: movl %ebx, -40(%ebp) # 4-byte Spill
281 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
282282 ; X32-NEXT: adcl %esi, %eax
283283 ; X32-NEXT: movl %eax, %edx
284 ; X32-NEXT: movl -324(%ebp), %esi # 4-byte Reload
285 ; X32-NEXT: movl %esi, %eax
286 ; X32-NEXT: movl %edi, -116(%ebp) # 4-byte Spill
284 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
285 ; X32-NEXT: movl %esi, %eax
286 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
287287 ; X32-NEXT: addl %edi, %eax
288 ; X32-NEXT: movl -400(%ebp), %eax # 4-byte Reload
289 ; X32-NEXT: movl -84(%ebp), %ecx # 4-byte Reload
288 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
289 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
290290 ; X32-NEXT: adcl %ecx, %eax
291 ; X32-NEXT: movl %eax, -768(%ebp) # 4-byte Spill
291 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
292292 ; X32-NEXT: movl %esi, %eax
293293 ; X32-NEXT: addl %edi, %eax
294 ; X32-NEXT: movl %eax, -296(%ebp) # 4-byte Spill
295 ; X32-NEXT: movl -112(%ebp), %eax # 4-byte Reload
296 ; X32-NEXT: movl -164(%ebp), %esi # 4-byte Reload
294 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
295 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
296 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
297297 ; X32-NEXT: adcl %esi, %eax
298 ; X32-NEXT: movl %eax, -776(%ebp) # 4-byte Spill
299 ; X32-NEXT: movl -44(%ebp), %eax # 4-byte Reload
298 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
299 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
300300 ; X32-NEXT: adcl %ebx, %eax
301 ; X32-NEXT: movl %eax, -772(%ebp) # 4-byte Spill
302 ; X32-NEXT: movl -52(%ebp), %eax # 4-byte Reload
301 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
302 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
303303 ; X32-NEXT: adcl %edx, %eax
304304 ; X32-NEXT: movl %edx, %ebx
305305 ; X32-NEXT: movl %ebx, -56(%ebp) # 4-byte Spill
307307 ; X32-NEXT: movl -132(%ebp), %edx # 4-byte Reload
308308 ; X32-NEXT: movl %edx, %eax
309309 ; X32-NEXT: addl %edi, %eax
310 ; X32-NEXT: movl -140(%ebp), %eax # 4-byte Reload
310 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
311311 ; X32-NEXT: adcl %ecx, %eax
312 ; X32-NEXT: movl %eax, -448(%ebp) # 4-byte Spill
312 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
313313 ; X32-NEXT: movl %edx, %eax
314314 ; X32-NEXT: addl %edi, %eax
315 ; X32-NEXT: movl %eax, -332(%ebp) # 4-byte Spill
316 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
315 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
316 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
317317 ; X32-NEXT: adcl %esi, %eax
318 ; X32-NEXT: movl %eax, -648(%ebp) # 4-byte Spill
319 ; X32-NEXT: movl -272(%ebp), %eax # 4-byte Reload
320 ; X32-NEXT: adcl -40(%ebp), %eax # 4-byte Folded Reload
321 ; X32-NEXT: movl %eax, -644(%ebp) # 4-byte Spill
322 ; X32-NEXT: movl -24(%ebp), %eax # 4-byte Reload
318 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
319 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
320 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
321 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
322 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
323323 ; X32-NEXT: adcl %ebx, %eax
324 ; X32-NEXT: movl %eax, -572(%ebp) # 4-byte Spill
324 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
325325 ; X32-NEXT: movl 8(%ebp), %eax
326326 ; X32-NEXT: movl 20(%eax), %eax
327 ; X32-NEXT: movl %eax, -216(%ebp) # 4-byte Spill
327 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
328328 ; X32-NEXT: xorl %ecx, %ecx
329329 ; X32-NEXT: mull %ecx
330330 ; X32-NEXT: movl %eax, %esi
331 ; X32-NEXT: movl -320(%ebp), %ebx # 4-byte Reload
331 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
332332 ; X32-NEXT: addl %ebx, %esi
333333 ; X32-NEXT: movl %edx, %ecx
334334 ; X32-NEXT: adcl $0, %ecx
335 ; X32-NEXT: movl -180(%ebp), %edi # 4-byte Reload
335 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
336336 ; X32-NEXT: addl %edi, %esi
337 ; X32-NEXT: movl %esi, -48(%ebp) # 4-byte Spill
337 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
338338 ; X32-NEXT: adcl %ebx, %ecx
339339 ; X32-NEXT: setb %bl
340340 ; X32-NEXT: addl %eax, %ecx
342342 ; X32-NEXT: adcl %edx, %esi
343343 ; X32-NEXT: movl 8(%ebp), %eax
344344 ; X32-NEXT: movl 24(%eax), %eax
345 ; X32-NEXT: movl %eax, -288(%ebp) # 4-byte Spill
345 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
346346 ; X32-NEXT: xorl %edx, %edx
347347 ; X32-NEXT: mull %edx
348 ; X32-NEXT: movl %eax, -280(%ebp) # 4-byte Spill
349 ; X32-NEXT: movl %edx, -312(%ebp) # 4-byte Spill
348 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
349 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
350350 ; X32-NEXT: movl %edi, %edx
351351 ; X32-NEXT: addl %eax, %edi
352 ; X32-NEXT: movl -320(%ebp), %ebx # 4-byte Reload
353 ; X32-NEXT: adcl -312(%ebp), %ebx # 4-byte Folded Reload
352 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
353 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
354354 ; X32-NEXT: addl %ecx, %edi
355 ; X32-NEXT: movl %edi, -36(%ebp) # 4-byte Spill
355 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
356356 ; X32-NEXT: adcl %esi, %ebx
357 ; X32-NEXT: movl %ebx, -20(%ebp) # 4-byte Spill
358 ; X32-NEXT: addl -28(%ebp), %edx # 4-byte Folded Reload
359 ; X32-NEXT: movl %edx, -228(%ebp) # 4-byte Spill
360 ; X32-NEXT: movl -48(%ebp), %eax # 4-byte Reload
361 ; X32-NEXT: adcl -16(%ebp), %eax # 4-byte Folded Reload
362 ; X32-NEXT: movl %eax, -596(%ebp) # 4-byte Spill
357 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
358 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
359 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
360 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
361 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
362 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
363363 ; X32-NEXT: movl %edi, %eax
364 ; X32-NEXT: adcl -120(%ebp), %eax # 4-byte Folded Reload
365 ; X32-NEXT: movl %eax, -464(%ebp) # 4-byte Spill
364 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
365 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
366366 ; X32-NEXT: movl %ebx, %eax
367 ; X32-NEXT: adcl -60(%ebp), %eax # 4-byte Folded Reload
368 ; X32-NEXT: movl %eax, -536(%ebp) # 4-byte Spill
367 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
368 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
369369 ; X32-NEXT: movl 8(%ebp), %eax
370370 ; X32-NEXT: movl 4(%eax), %eax
371 ; X32-NEXT: movl %eax, -124(%ebp) # 4-byte Spill
371 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
372372 ; X32-NEXT: xorl %ecx, %ecx
373373 ; X32-NEXT: mull %ecx
374374 ; X32-NEXT: movl %eax, %esi
375 ; X32-NEXT: movl -264(%ebp), %ecx # 4-byte Reload
375 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
376376 ; X32-NEXT: addl %ecx, %esi
377377 ; X32-NEXT: movl %edx, %edi
378378 ; X32-NEXT: adcl $0, %edi
379 ; X32-NEXT: movl -136(%ebp), %ebx # 4-byte Reload
379 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
380380 ; X32-NEXT: addl %ebx, %esi
381 ; X32-NEXT: movl %esi, -276(%ebp) # 4-byte Spill
381 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
382382 ; X32-NEXT: adcl %ecx, %edi
383383 ; X32-NEXT: setb %cl
384384 ; X32-NEXT: addl %eax, %edi
385 ; X32-NEXT: movl %edi, -584(%ebp) # 4-byte Spill
385 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
386386 ; X32-NEXT: movzbl %cl, %eax
387387 ; X32-NEXT: adcl %edx, %eax
388 ; X32-NEXT: movl %eax, -432(%ebp) # 4-byte Spill
388 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
389389 ; X32-NEXT: movl 8(%ebp), %eax
390390 ; X32-NEXT: movl 8(%eax), %eax
391 ; X32-NEXT: movl %eax, -184(%ebp) # 4-byte Spill
391 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
392392 ; X32-NEXT: xorl %ecx, %ecx
393393 ; X32-NEXT: mull %ecx
394394 ; X32-NEXT: movl %eax, %ecx
397397 ; X32-NEXT: movl %ebx, %esi
398398 ; X32-NEXT: movl %esi, %eax
399399 ; X32-NEXT: addl %ecx, %eax
400 ; X32-NEXT: movl -264(%ebp), %ebx # 4-byte Reload
400 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
401401 ; X32-NEXT: movl %ebx, %ecx
402402 ; X32-NEXT: adcl %edx, %ecx
403403 ; X32-NEXT: addl %edi, %eax
404 ; X32-NEXT: movl %eax, -240(%ebp) # 4-byte Spill
405 ; X32-NEXT: adcl -432(%ebp), %ecx # 4-byte Folded Reload
404 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
405 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
406406 ; X32-NEXT: movl %esi, %edx
407 ; X32-NEXT: addl -28(%ebp), %edx # 4-byte Folded Reload
408 ; X32-NEXT: movl %edx, -344(%ebp) # 4-byte Spill
409 ; X32-NEXT: movl -276(%ebp), %edi # 4-byte Reload
407 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
408 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
409 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
410410 ; X32-NEXT: movl %edi, %edx
411 ; X32-NEXT: adcl -16(%ebp), %edx # 4-byte Folded Reload
412 ; X32-NEXT: movl %edx, -404(%ebp) # 4-byte Spill
411 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
412 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
413413 ; X32-NEXT: pushl %eax
414414 ; X32-NEXT: seto %al
415415 ; X32-NEXT: lahf
416416 ; X32-NEXT: movl %eax, %edx
417417 ; X32-NEXT: popl %eax
418 ; X32-NEXT: movl %edx, -736(%ebp) # 4-byte Spill
418 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
419419 ; X32-NEXT: movl %eax, %edx
420 ; X32-NEXT: adcl -120(%ebp), %edx # 4-byte Folded Reload
421 ; X32-NEXT: movl %edx, -532(%ebp) # 4-byte Spill
420 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
421 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
422422 ; X32-NEXT: movl %ecx, %eax
423 ; X32-NEXT: movl %ecx, -172(%ebp) # 4-byte Spill
424 ; X32-NEXT: adcl -60(%ebp), %eax # 4-byte Folded Reload
425 ; X32-NEXT: movl %eax, -592(%ebp) # 4-byte Spill
423 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
424 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
425 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
426426 ; X32-NEXT: movl %esi, %edx
427427 ; X32-NEXT: movl %edx, %eax
428 ; X32-NEXT: movl -116(%ebp), %esi # 4-byte Reload
428 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
429429 ; X32-NEXT: addl %esi, %eax
430430 ; X32-NEXT: movl %ebx, %eax
431 ; X32-NEXT: movl -84(%ebp), %ebx # 4-byte Reload
431 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
432432 ; X32-NEXT: adcl %ebx, %eax
433 ; X32-NEXT: movl %eax, -328(%ebp) # 4-byte Spill
433 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
434434 ; X32-NEXT: movl %edx, %eax
435435 ; X32-NEXT: addl %esi, %eax
436 ; X32-NEXT: movl %eax, -368(%ebp) # 4-byte Spill
436 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
437437 ; X32-NEXT: movl %edi, %eax
438 ; X32-NEXT: adcl -164(%ebp), %eax # 4-byte Folded Reload
439 ; X32-NEXT: movl %eax, -620(%ebp) # 4-byte Spill
440 ; X32-NEXT: movl -240(%ebp), %eax # 4-byte Reload
441 ; X32-NEXT: movl -40(%ebp), %edi # 4-byte Reload
438 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
439 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
440 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
441 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
442442 ; X32-NEXT: adcl %edi, %eax
443 ; X32-NEXT: movl %eax, -788(%ebp) # 4-byte Spill
443 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
444444 ; X32-NEXT: movl %ecx, %eax
445 ; X32-NEXT: adcl -56(%ebp), %eax # 4-byte Folded Reload
446 ; X32-NEXT: movl %eax, -784(%ebp) # 4-byte Spill
447 ; X32-NEXT: movl -180(%ebp), %eax # 4-byte Reload
448 ; X32-NEXT: movl -100(%ebp), %edx # 4-byte Reload
445 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
446 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
447 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
448 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
449449 ; X32-NEXT: addl %edx, %eax
450 ; X32-NEXT: movl -320(%ebp), %esi # 4-byte Reload
451 ; X32-NEXT: movl %esi, %eax
452 ; X32-NEXT: movl -204(%ebp), %ecx # 4-byte Reload
450 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
451 ; X32-NEXT: movl %esi, %eax
452 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
453453 ; X32-NEXT: adcl %ecx, %eax
454 ; X32-NEXT: movl %eax, -804(%ebp) # 4-byte Spill
455 ; X32-NEXT: movl -136(%ebp), %eax # 4-byte Reload
454 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
455 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
456456 ; X32-NEXT: addl %edx, %eax
457 ; X32-NEXT: movl -264(%ebp), %eax # 4-byte Reload
457 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
458458 ; X32-NEXT: adcl %ecx, %eax
459 ; X32-NEXT: movl %eax, -820(%ebp) # 4-byte Spill
460 ; X32-NEXT: movl -180(%ebp), %ecx # 4-byte Reload
459 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
460 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
461461 ; X32-NEXT: movl %ecx, %eax
462 ; X32-NEXT: movl -116(%ebp), %edx # 4-byte Reload
462 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
463463 ; X32-NEXT: addl %edx, %eax
464464 ; X32-NEXT: adcl %ebx, %esi
465 ; X32-NEXT: movl %esi, -576(%ebp) # 4-byte Spill
465 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
466466 ; X32-NEXT: addl %edx, %ecx
467 ; X32-NEXT: movl %ecx, -540(%ebp) # 4-byte Spill
468 ; X32-NEXT: movl -48(%ebp), %eax # 4-byte Reload
469 ; X32-NEXT: adcl -164(%ebp), %eax # 4-byte Folded Reload
470 ; X32-NEXT: movl %eax, -800(%ebp) # 4-byte Spill
471 ; X32-NEXT: movl -36(%ebp), %eax # 4-byte Reload
467 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
468 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
469 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
470 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
471 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
472472 ; X32-NEXT: adcl %edi, %eax
473 ; X32-NEXT: movl %eax, -796(%ebp) # 4-byte Spill
474 ; X32-NEXT: movl -20(%ebp), %eax # 4-byte Reload
475 ; X32-NEXT: adcl -56(%ebp), %eax # 4-byte Folded Reload
476 ; X32-NEXT: movl %eax, -792(%ebp) # 4-byte Spill
477 ; X32-NEXT: movl -220(%ebp), %esi # 4-byte Reload
478 ; X32-NEXT: addl -304(%ebp), %esi # 4-byte Folded Reload
479 ; X32-NEXT: movl %esi, -220(%ebp) # 4-byte Spill
480 ; X32-NEXT: movzbl -388(%ebp), %eax # 1-byte Folded Reload
481 ; X32-NEXT: adcl -236(%ebp), %eax # 4-byte Folded Reload
482 ; X32-NEXT: movl %eax, -376(%ebp) # 4-byte Spill
473 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
474 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
475 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
476 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
477 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
478 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
479 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
480 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
481 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
482 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
483483 ; X32-NEXT: movl 12(%ebp), %eax
484484 ; X32-NEXT: movl 40(%eax), %eax
485 ; X32-NEXT: movl %eax, -236(%ebp) # 4-byte Spill
485 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
486486 ; X32-NEXT: xorl %ecx, %ecx
487487 ; X32-NEXT: mull %ecx
488 ; X32-NEXT: movl %eax, -304(%ebp) # 4-byte Spill
489 ; X32-NEXT: movl %edx, -128(%ebp) # 4-byte Spill
490 ; X32-NEXT: movl -100(%ebp), %ebx # 4-byte Reload
488 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
489 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
490 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
491491 ; X32-NEXT: movl %ebx, %edi
492492 ; X32-NEXT: addl %eax, %edi
493 ; X32-NEXT: movl -204(%ebp), %ecx # 4-byte Reload
493 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
494494 ; X32-NEXT: adcl %edx, %ecx
495495 ; X32-NEXT: addl %esi, %edi
496 ; X32-NEXT: adcl -376(%ebp), %ecx # 4-byte Folded Reload
496 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
497497 ; X32-NEXT: movl %ecx, %edx
498 ; X32-NEXT: movl -180(%ebp), %eax # 4-byte Reload
498 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
499499 ; X32-NEXT: addl %ebx, %eax
500 ; X32-NEXT: movl %eax, -468(%ebp) # 4-byte Spill
501 ; X32-NEXT: movl -48(%ebp), %eax # 4-byte Reload
502 ; X32-NEXT: movl -80(%ebp), %ecx # 4-byte Reload
500 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
501 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
502 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
503503 ; X32-NEXT: adcl %ecx, %eax
504 ; X32-NEXT: movl %eax, -816(%ebp) # 4-byte Spill
505 ; X32-NEXT: movl -36(%ebp), %eax # 4-byte Reload
504 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
505 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
506506 ; X32-NEXT: adcl %edi, %eax
507 ; X32-NEXT: movl %edi, -372(%ebp) # 4-byte Spill
508 ; X32-NEXT: movl %eax, -812(%ebp) # 4-byte Spill
509 ; X32-NEXT: movl -20(%ebp), %eax # 4-byte Reload
510 ; X32-NEXT: movl %edx, -292(%ebp) # 4-byte Spill
507 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
508 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
509 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
510 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
511511 ; X32-NEXT: adcl %edx, %eax
512 ; X32-NEXT: movl %eax, -808(%ebp) # 4-byte Spill
513 ; X32-NEXT: movl -136(%ebp), %eax # 4-byte Reload
512 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
513 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
514514 ; X32-NEXT: addl %ebx, %eax
515 ; X32-NEXT: movl %eax, -512(%ebp) # 4-byte Spill
516 ; X32-NEXT: movl -276(%ebp), %eax # 4-byte Reload
515 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
516 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
517517 ; X32-NEXT: adcl %ecx, %eax
518 ; X32-NEXT: movl %eax, -676(%ebp) # 4-byte Spill
518 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
519519 ; X32-NEXT: seto %al
520520 ; X32-NEXT: lahf
521521 ; X32-NEXT: movl %eax, %eax
522 ; X32-NEXT: movl %eax, -740(%ebp) # 4-byte Spill
523 ; X32-NEXT: movl -240(%ebp), %eax # 4-byte Reload
522 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
523 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
524524 ; X32-NEXT: adcl %edi, %eax
525 ; X32-NEXT: movl %eax, -624(%ebp) # 4-byte Spill
526 ; X32-NEXT: movl -172(%ebp), %eax # 4-byte Reload
525 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
526 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
527527 ; X32-NEXT: adcl %edx, %eax
528 ; X32-NEXT: movl %eax, -628(%ebp) # 4-byte Spill
528 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
529529 ; X32-NEXT: movl 12(%ebp), %esi
530530 ; X32-NEXT: movl 48(%esi), %eax
531 ; X32-NEXT: movl %eax, -300(%ebp) # 4-byte Spill
531 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
532532 ; X32-NEXT: xorl %ecx, %ecx
533533 ; X32-NEXT: mull %ecx
534534 ; X32-NEXT: movl %eax, %ebx
535535 ; X32-NEXT: movl %ebx, -336(%ebp) # 4-byte Spill
536536 ; X32-NEXT: movl %edx, %edi
537537 ; X32-NEXT: movl 52(%esi), %eax
538 ; X32-NEXT: movl %eax, -144(%ebp) # 4-byte Spill
538 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
539539 ; X32-NEXT: mull %ecx
540540 ; X32-NEXT: movl %eax, %esi
541541 ; X32-NEXT: addl %edi, %esi
542542 ; X32-NEXT: movl %edx, %ecx
543543 ; X32-NEXT: adcl $0, %ecx
544544 ; X32-NEXT: addl %ebx, %esi
545 ; X32-NEXT: movl %esi, -200(%ebp) # 4-byte Spill
545 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
546546 ; X32-NEXT: adcl %edi, %ecx
547547 ; X32-NEXT: setb %bl
548548 ; X32-NEXT: addl %eax, %ecx
550550 ; X32-NEXT: adcl %edx, %esi
551551 ; X32-NEXT: movl 12(%ebp), %eax
552552 ; X32-NEXT: movl 56(%eax), %eax
553 ; X32-NEXT: movl %eax, -244(%ebp) # 4-byte Spill
553 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
554554 ; X32-NEXT: xorl %edx, %edx
555555 ; X32-NEXT: mull %edx
556 ; X32-NEXT: movl %eax, -224(%ebp) # 4-byte Spill
557 ; X32-NEXT: movl %edx, -360(%ebp) # 4-byte Spill
558 ; X32-NEXT: movl -336(%ebp), %ebx # 4-byte Reload
556 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
557 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
558 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
559559 ; X32-NEXT: addl %eax, %ebx
560560 ; X32-NEXT: movl %edi, %edx
561561 ; X32-NEXT: movl %edx, -176(%ebp) # 4-byte Spill
562562 ; X32-NEXT: adcl -360(%ebp), %edi # 4-byte Folded Reload
563563 ; X32-NEXT: addl %ecx, %ebx
564 ; X32-NEXT: movl %ebx, -472(%ebp) # 4-byte Spill
564 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
565565 ; X32-NEXT: adcl %esi, %edi
566 ; X32-NEXT: movl %edi, -436(%ebp) # 4-byte Spill
567 ; X32-NEXT: movl -136(%ebp), %ecx # 4-byte Reload
566 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
567 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
568568 ; X32-NEXT: movl %ecx, %eax
569 ; X32-NEXT: movl -336(%ebp), %esi # 4-byte Reload
569 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
570570 ; X32-NEXT: addl %esi, %eax
571 ; X32-NEXT: movl -264(%ebp), %eax # 4-byte Reload
571 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
572572 ; X32-NEXT: adcl %edx, %eax
573 ; X32-NEXT: movl %eax, -824(%ebp) # 4-byte Spill
573 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
574574 ; X32-NEXT: movl %ecx, %eax
575575 ; X32-NEXT: addl %esi, %eax
576 ; X32-NEXT: movl %eax, -588(%ebp) # 4-byte Spill
577 ; X32-NEXT: movl -276(%ebp), %eax # 4-byte Reload
578 ; X32-NEXT: adcl -200(%ebp), %eax # 4-byte Folded Reload
579 ; X32-NEXT: movl %eax, -632(%ebp) # 4-byte Spill
580 ; X32-NEXT: movl -240(%ebp), %eax # 4-byte Reload
576 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
577 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
578 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
579 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
580 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
581581 ; X32-NEXT: adcl %ebx, %eax
582 ; X32-NEXT: movl %eax, -828(%ebp) # 4-byte Spill
583 ; X32-NEXT: movl -172(%ebp), %eax # 4-byte Reload
582 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
583 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
584584 ; X32-NEXT: adcl %edi, %eax
585 ; X32-NEXT: movl %eax, -636(%ebp) # 4-byte Spill
585 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
586586 ; X32-NEXT: movl 8(%ebp), %eax
587587 ; X32-NEXT: movl 64(%eax), %eax
588 ; X32-NEXT: movl %eax, -476(%ebp) # 4-byte Spill
588 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
589589 ; X32-NEXT: xorl %ecx, %ecx
590590 ; X32-NEXT: mull %ecx
591591 ; X32-NEXT: movl %edx, %esi
595595 ; X32-NEXT: movl %eax, %edx
596596 ; X32-NEXT: movl %edx, -480(%ebp) # 4-byte Spill
597597 ; X32-NEXT: addl %edx, %ecx
598 ; X32-NEXT: movl -84(%ebp), %ebx # 4-byte Reload
598 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
599599 ; X32-NEXT: movl %ebx, %eax
600600 ; X32-NEXT: adcl %esi, %eax
601 ; X32-NEXT: movl %eax, -920(%ebp) # 4-byte Spill
602 ; X32-NEXT: movl -28(%ebp), %esi # 4-byte Reload
601 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
602 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
603603 ; X32-NEXT: movl %esi, %eax
604604 ; X32-NEXT: addl %edx, %eax
605 ; X32-NEXT: movl -256(%ebp), %ecx # 4-byte Reload
605 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
606606 ; X32-NEXT: movl %ecx, %eax
607 ; X32-NEXT: adcl -384(%ebp), %eax # 4-byte Folded Reload
608 ; X32-NEXT: movl %eax, -932(%ebp) # 4-byte Spill
607 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
608 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
609609 ; X32-NEXT: movl 8(%ebp), %eax
610610 ; X32-NEXT: movl 80(%eax), %eax
611 ; X32-NEXT: movl %eax, -548(%ebp) # 4-byte Spill
611 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
612612 ; X32-NEXT: xorl %edx, %edx
613613 ; X32-NEXT: mull %edx
614 ; X32-NEXT: movl %eax, -380(%ebp) # 4-byte Spill
615 ; X32-NEXT: movl %esi, %eax
616 ; X32-NEXT: movl -380(%ebp), %esi # 4-byte Reload
614 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
615 ; X32-NEXT: movl %esi, %eax
616 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
617617 ; X32-NEXT: addl %esi, %eax
618 ; X32-NEXT: movl %edx, -356(%ebp) # 4-byte Spill
618 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
619619 ; X32-NEXT: adcl %edx, %ecx
620 ; X32-NEXT: movl %ecx, -948(%ebp) # 4-byte Spill
620 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
621621 ; X32-NEXT: addl %esi, %edi
622622 ; X32-NEXT: adcl %edx, %ebx
623 ; X32-NEXT: movl %ebx, -960(%ebp) # 4-byte Spill
623 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
624624 ; X32-NEXT: movl 12(%ebp), %ecx
625625 ; X32-NEXT: movl 80(%ecx), %eax
626 ; X32-NEXT: movl %eax, -552(%ebp) # 4-byte Spill
626 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
627627 ; X32-NEXT: xorl %ebx, %ebx
628628 ; X32-NEXT: mull %ebx
629 ; X32-NEXT: movl %edx, -528(%ebp) # 4-byte Spill
630 ; X32-NEXT: movl %eax, -524(%ebp) # 4-byte Spill
631 ; X32-NEXT: movl -136(%ebp), %esi # 4-byte Reload
629 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
630 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
631 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
632632 ; X32-NEXT: addl %esi, %eax
633633 ; X32-NEXT: movl %edx, %eax
634 ; X32-NEXT: movl -264(%ebp), %edi # 4-byte Reload
634 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
635635 ; X32-NEXT: adcl %edi, %eax
636 ; X32-NEXT: movl %eax, -976(%ebp) # 4-byte Spill
636 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
637637 ; X32-NEXT: movl 64(%ecx), %eax
638 ; X32-NEXT: movl %eax, -520(%ebp) # 4-byte Spill
638 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
639639 ; X32-NEXT: mull %ebx
640 ; X32-NEXT: movl %eax, -500(%ebp) # 4-byte Spill
640 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
641641 ; X32-NEXT: movl %eax, %ecx
642642 ; X32-NEXT: addl %esi, %ecx
643643 ; X32-NEXT: movl %edx, %esi
644644 ; X32-NEXT: movl %esi, -496(%ebp) # 4-byte Spill
645645 ; X32-NEXT: movl %esi, %ecx
646646 ; X32-NEXT: adcl %edi, %ecx
647 ; X32-NEXT: movl %ecx, -992(%ebp) # 4-byte Spill
647 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
648648 ; X32-NEXT: movl %eax, %ecx
649 ; X32-NEXT: movl -180(%ebp), %edx # 4-byte Reload
649 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
650650 ; X32-NEXT: addl %edx, %ecx
651651 ; X32-NEXT: movl %esi, %eax
652 ; X32-NEXT: movl -320(%ebp), %ecx # 4-byte Reload
652 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
653653 ; X32-NEXT: adcl %ecx, %eax
654 ; X32-NEXT: movl %eax, -1008(%ebp) # 4-byte Spill
654 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
655655 ; X32-NEXT: movl %edx, %eax
656 ; X32-NEXT: movl -336(%ebp), %edi # 4-byte Reload
656 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
657657 ; X32-NEXT: addl %edi, %eax
658 ; X32-NEXT: adcl -176(%ebp), %ecx # 4-byte Folded Reload
659 ; X32-NEXT: movl %ecx, -832(%ebp) # 4-byte Spill
658 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
659 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
660660 ; X32-NEXT: movl %edx, %eax
661661 ; X32-NEXT: addl %edi, %eax
662 ; X32-NEXT: movl %eax, -672(%ebp) # 4-byte Spill
663 ; X32-NEXT: movl -48(%ebp), %eax # 4-byte Reload
664 ; X32-NEXT: adcl -200(%ebp), %eax # 4-byte Folded Reload
665 ; X32-NEXT: movl %eax, -836(%ebp) # 4-byte Spill
666 ; X32-NEXT: movl -36(%ebp), %eax # 4-byte Reload
667 ; X32-NEXT: adcl -472(%ebp), %eax # 4-byte Folded Reload
668 ; X32-NEXT: movl %eax, -840(%ebp) # 4-byte Spill
669 ; X32-NEXT: movl -20(%ebp), %eax # 4-byte Reload
670 ; X32-NEXT: adcl -436(%ebp), %eax # 4-byte Folded Reload
671 ; X32-NEXT: movl %eax, -844(%ebp) # 4-byte Spill
672 ; X32-NEXT: movl -132(%ebp), %eax # 4-byte Reload
673 ; X32-NEXT: addl -100(%ebp), %eax # 4-byte Folded Reload
674 ; X32-NEXT: movl %eax, -680(%ebp) # 4-byte Spill
675 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
676 ; X32-NEXT: adcl -80(%ebp), %eax # 4-byte Folded Reload
677 ; X32-NEXT: movl %eax, -856(%ebp) # 4-byte Spill
678 ; X32-NEXT: movl -272(%ebp), %eax # 4-byte Reload
679 ; X32-NEXT: movl -372(%ebp), %edx # 4-byte Reload
662 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
663 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
664 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
665 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
666 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
667 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
668 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
669 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
670 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
671 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
672 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
673 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
674 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
675 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
676 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
677 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
678 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
679 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
680680 ; X32-NEXT: adcl %edx, %eax
681 ; X32-NEXT: movl %eax, -852(%ebp) # 4-byte Spill
682 ; X32-NEXT: movl -24(%ebp), %eax # 4-byte Reload
683 ; X32-NEXT: movl -292(%ebp), %ecx # 4-byte Reload
681 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
682 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
683 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
684684 ; X32-NEXT: adcl %ecx, %eax
685 ; X32-NEXT: movl %eax, -848(%ebp) # 4-byte Spill
686 ; X32-NEXT: movl -44(%ebp), %ebx # 4-byte Reload
685 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
686 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
687687 ; X32-NEXT: movl %ebx, %eax
688 ; X32-NEXT: movl -96(%ebp), %esi # 4-byte Reload
688 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
689689 ; X32-NEXT: pushl %eax
690690 ; X32-NEXT: movl %esi, %eax
691691 ; X32-NEXT: addb $127, %al
692692 ; X32-NEXT: sahf
693693 ; X32-NEXT: popl %eax
694694 ; X32-NEXT: adcl %edx, %eax
695 ; X32-NEXT: movl %eax, -860(%ebp) # 4-byte Spill
696 ; X32-NEXT: movl -52(%ebp), %esi # 4-byte Reload
695 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
696 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
697697 ; X32-NEXT: movl %esi, %eax
698698 ; X32-NEXT: adcl %ecx, %eax
699 ; X32-NEXT: movl %eax, -864(%ebp) # 4-byte Spill
700 ; X32-NEXT: movl -324(%ebp), %ecx # 4-byte Reload
699 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
700 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
701701 ; X32-NEXT: movl %ecx, %eax
702702 ; X32-NEXT: addl %edi, %eax
703 ; X32-NEXT: movl -400(%ebp), %eax # 4-byte Reload
704 ; X32-NEXT: movl -176(%ebp), %edx # 4-byte Reload
703 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
704 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
705705 ; X32-NEXT: adcl %edx, %eax
706 ; X32-NEXT: movl %eax, -868(%ebp) # 4-byte Spill
706 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
707707 ; X32-NEXT: movl %ecx, %eax
708708 ; X32-NEXT: addl %edi, %eax
709 ; X32-NEXT: movl %eax, -684(%ebp) # 4-byte Spill
710 ; X32-NEXT: movl -112(%ebp), %eax # 4-byte Reload
711 ; X32-NEXT: adcl -200(%ebp), %eax # 4-byte Folded Reload
712 ; X32-NEXT: movl %eax, -876(%ebp) # 4-byte Spill
709 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
710 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
711 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
712 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
713713 ; X32-NEXT: movl %ebx, %eax
714 ; X32-NEXT: movl -472(%ebp), %ebx # 4-byte Reload
714 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
715715 ; X32-NEXT: adcl %ebx, %eax
716 ; X32-NEXT: movl %eax, -872(%ebp) # 4-byte Spill
717 ; X32-NEXT: movl %esi, %eax
718 ; X32-NEXT: movl -436(%ebp), %esi # 4-byte Reload
716 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
717 ; X32-NEXT: movl %esi, %eax
718 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
719719 ; X32-NEXT: adcl %esi, %eax
720 ; X32-NEXT: movl %eax, -880(%ebp) # 4-byte Spill
721 ; X32-NEXT: movl -132(%ebp), %ecx # 4-byte Reload
720 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
721 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
722722 ; X32-NEXT: movl %ecx, %eax
723723 ; X32-NEXT: addl %edi, %eax
724 ; X32-NEXT: movl -140(%ebp), %eax # 4-byte Reload
724 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
725725 ; X32-NEXT: adcl %edx, %eax
726 ; X32-NEXT: movl %eax, -888(%ebp) # 4-byte Spill
726 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
727727 ; X32-NEXT: movl %ecx, %eax
728728 ; X32-NEXT: addl %edi, %eax
729 ; X32-NEXT: movl %eax, -688(%ebp) # 4-byte Spill
730 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
731 ; X32-NEXT: adcl -200(%ebp), %eax # 4-byte Folded Reload
732 ; X32-NEXT: movl %eax, -900(%ebp) # 4-byte Spill
733 ; X32-NEXT: movl -272(%ebp), %eax # 4-byte Reload
729 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
730 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
731 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
732 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
733 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
734734 ; X32-NEXT: adcl %ebx, %eax
735 ; X32-NEXT: movl %eax, -896(%ebp) # 4-byte Spill
736 ; X32-NEXT: movl -24(%ebp), %eax # 4-byte Reload
735 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
736 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
737737 ; X32-NEXT: adcl %esi, %eax
738 ; X32-NEXT: movl %eax, -904(%ebp) # 4-byte Spill
738 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
739739 ; X32-NEXT: movl 8(%ebp), %eax
740740 ; X32-NEXT: movl 68(%eax), %eax
741 ; X32-NEXT: movl %eax, -248(%ebp) # 4-byte Spill
741 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
742742 ; X32-NEXT: xorl %ecx, %ecx
743743 ; X32-NEXT: mull %ecx
744744 ; X32-NEXT: movl %eax, %esi
745 ; X32-NEXT: movl -384(%ebp), %edi # 4-byte Reload
745 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
746746 ; X32-NEXT: addl %edi, %esi
747747 ; X32-NEXT: movl %edx, %ecx
748748 ; X32-NEXT: adcl $0, %ecx
749 ; X32-NEXT: movl -480(%ebp), %ebx # 4-byte Reload
749 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
750750 ; X32-NEXT: addl %ebx, %esi
751 ; X32-NEXT: movl %esi, -652(%ebp) # 4-byte Spill
751 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
752752 ; X32-NEXT: adcl %edi, %ecx
753 ; X32-NEXT: setb -96(%ebp) # 1-byte Folded Spill
753 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
754754 ; X32-NEXT: addl %eax, %ecx
755 ; X32-NEXT: movzbl -96(%ebp), %edi # 1-byte Folded Reload
755 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
756756 ; X32-NEXT: adcl %edx, %edi
757757 ; X32-NEXT: movl 8(%ebp), %eax
758758 ; X32-NEXT: movl 72(%eax), %eax
759 ; X32-NEXT: movl %eax, -516(%ebp) # 4-byte Spill
759 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
760760 ; X32-NEXT: xorl %edx, %edx
761761 ; X32-NEXT: mull %edx
762762 ; X32-NEXT: movl %eax, %esi
764764 ; X32-NEXT: movl %edx, -488(%ebp) # 4-byte Spill
765765 ; X32-NEXT: movl %ebx, %eax
766766 ; X32-NEXT: addl %esi, %eax
767 ; X32-NEXT: movl -384(%ebp), %ebx # 4-byte Reload
767 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
768768 ; X32-NEXT: adcl %edx, %ebx
769769 ; X32-NEXT: addl %ecx, %eax
770770 ; X32-NEXT: adcl %edi, %ebx
771 ; X32-NEXT: movl -116(%ebp), %ecx # 4-byte Reload
772 ; X32-NEXT: movl -480(%ebp), %edx # 4-byte Reload
771 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
772 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
773773 ; X32-NEXT: addl %edx, %ecx
774 ; X32-NEXT: movl %ecx, -692(%ebp) # 4-byte Spill
775 ; X32-NEXT: movl -164(%ebp), %esi # 4-byte Reload
776 ; X32-NEXT: movl -652(%ebp), %ecx # 4-byte Reload
774 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
775 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
776 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
777777 ; X32-NEXT: adcl %ecx, %esi
778 ; X32-NEXT: movl %esi, -908(%ebp) # 4-byte Spill
779 ; X32-NEXT: movl -40(%ebp), %esi # 4-byte Reload
778 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
779 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
780780 ; X32-NEXT: adcl %eax, %esi
781 ; X32-NEXT: movl %esi, -916(%ebp) # 4-byte Spill
782 ; X32-NEXT: movl -56(%ebp), %esi # 4-byte Reload
781 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
782 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
783783 ; X32-NEXT: adcl %ebx, %esi
784 ; X32-NEXT: movl %esi, -912(%ebp) # 4-byte Spill
785 ; X32-NEXT: movl -28(%ebp), %esi # 4-byte Reload
784 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
785 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
786786 ; X32-NEXT: addl %edx, %esi
787 ; X32-NEXT: movl %esi, -696(%ebp) # 4-byte Spill
788 ; X32-NEXT: adcl -16(%ebp), %ecx # 4-byte Folded Reload
789 ; X32-NEXT: movl %ecx, -652(%ebp) # 4-byte Spill
790 ; X32-NEXT: adcl -120(%ebp), %eax # 4-byte Folded Reload
791 ; X32-NEXT: movl %eax, -924(%ebp) # 4-byte Spill
792 ; X32-NEXT: adcl -60(%ebp), %ebx # 4-byte Folded Reload
793 ; X32-NEXT: movl %ebx, -928(%ebp) # 4-byte Spill
787 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
788 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
789 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
790 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
791 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
792 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
793 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
794794 ; X32-NEXT: movl 8(%ebp), %ecx
795795 ; X32-NEXT: movl %ecx, %eax
796796 ; X32-NEXT: movl 84(%eax), %eax
797 ; X32-NEXT: movl %eax, -544(%ebp) # 4-byte Spill
797 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
798798 ; X32-NEXT: xorl %ecx, %ecx
799799 ; X32-NEXT: mull %ecx
800800 ; X32-NEXT: movl %eax, %esi
801 ; X32-NEXT: movl -356(%ebp), %ebx # 4-byte Reload
801 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
802802 ; X32-NEXT: addl %ebx, %esi
803803 ; X32-NEXT: movl %edx, %ecx
804804 ; X32-NEXT: adcl $0, %ecx
805 ; X32-NEXT: movl -380(%ebp), %edi # 4-byte Reload
805 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
806806 ; X32-NEXT: addl %edi, %esi
807 ; X32-NEXT: movl %esi, -660(%ebp) # 4-byte Spill
807 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
808808 ; X32-NEXT: adcl %ebx, %ecx
809809 ; X32-NEXT: setb %bl
810810 ; X32-NEXT: addl %eax, %ecx
812812 ; X32-NEXT: adcl %edx, %esi
813813 ; X32-NEXT: movl 8(%ebp), %eax
814814 ; X32-NEXT: movl 88(%eax), %eax
815 ; X32-NEXT: movl %eax, -580(%ebp) # 4-byte Spill
815 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
816816 ; X32-NEXT: xorl %edx, %edx
817817 ; X32-NEXT: mull %edx
818 ; X32-NEXT: movl %eax, -600(%ebp) # 4-byte Spill
819 ; X32-NEXT: movl %edx, -604(%ebp) # 4-byte Spill
818 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
819 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
820820 ; X32-NEXT: movl %edi, %ebx
821821 ; X32-NEXT: addl %eax, %edi
822 ; X32-NEXT: movl -356(%ebp), %eax # 4-byte Reload
822 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
823823 ; X32-NEXT: adcl %edx, %eax
824824 ; X32-NEXT: addl %ecx, %edi
825825 ; X32-NEXT: adcl %esi, %eax
826826 ; X32-NEXT: movl %eax, %esi
827 ; X32-NEXT: movl -28(%ebp), %eax # 4-byte Reload
827 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
828828 ; X32-NEXT: addl %ebx, %eax
829 ; X32-NEXT: movl %eax, -704(%ebp) # 4-byte Spill
830 ; X32-NEXT: movl -16(%ebp), %edx # 4-byte Reload
831 ; X32-NEXT: movl -660(%ebp), %eax # 4-byte Reload
829 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
830 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
831 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
832832 ; X32-NEXT: adcl %eax, %edx
833 ; X32-NEXT: movl %edx, -940(%ebp) # 4-byte Spill
834 ; X32-NEXT: movl -120(%ebp), %edx # 4-byte Reload
833 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
834 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
835835 ; X32-NEXT: adcl %edi, %edx
836 ; X32-NEXT: movl %edx, -944(%ebp) # 4-byte Spill
836 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
837837 ; X32-NEXT: movl %edi, %edx
838 ; X32-NEXT: movl -60(%ebp), %edi # 4-byte Reload
838 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
839839 ; X32-NEXT: adcl %esi, %edi
840 ; X32-NEXT: movl %edi, -936(%ebp) # 4-byte Spill
841 ; X32-NEXT: movl -116(%ebp), %edi # 4-byte Reload
840 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
841 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
842842 ; X32-NEXT: addl %ebx, %edi
843 ; X32-NEXT: movl %edi, -708(%ebp) # 4-byte Spill
844 ; X32-NEXT: adcl -164(%ebp), %eax # 4-byte Folded Reload
845 ; X32-NEXT: movl %eax, -660(%ebp) # 4-byte Spill
846 ; X32-NEXT: adcl -40(%ebp), %edx # 4-byte Folded Reload
847 ; X32-NEXT: movl %edx, -952(%ebp) # 4-byte Spill
848 ; X32-NEXT: adcl -56(%ebp), %esi # 4-byte Folded Reload
849 ; X32-NEXT: movl %esi, -956(%ebp) # 4-byte Spill
843 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
844 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
845 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
846 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
847 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
848 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
849 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
850850 ; X32-NEXT: movl 12(%ebp), %eax
851851 ; X32-NEXT: movl 84(%eax), %eax
852 ; X32-NEXT: movl %eax, -460(%ebp) # 4-byte Spill
852 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
853853 ; X32-NEXT: xorl %ecx, %ecx
854854 ; X32-NEXT: mull %ecx
855855 ; X32-NEXT: movl %eax, %edi
856 ; X32-NEXT: movl -528(%ebp), %esi # 4-byte Reload
856 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
857857 ; X32-NEXT: addl %esi, %edi
858858 ; X32-NEXT: movl %edx, %ecx
859859 ; X32-NEXT: adcl $0, %ecx
860 ; X32-NEXT: addl -524(%ebp), %edi # 4-byte Folded Reload
861 ; X32-NEXT: movl %edi, -668(%ebp) # 4-byte Spill
860 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
861 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
862862 ; X32-NEXT: adcl %esi, %ecx
863863 ; X32-NEXT: setb %bl
864864 ; X32-NEXT: addl %eax, %ecx
866866 ; X32-NEXT: adcl %edx, %edi
867867 ; X32-NEXT: movl 12(%ebp), %eax
868868 ; X32-NEXT: movl 88(%eax), %eax
869 ; X32-NEXT: movl %eax, -492(%ebp) # 4-byte Spill
869 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
870870 ; X32-NEXT: xorl %edx, %edx
871871 ; X32-NEXT: mull %edx
872872 ; X32-NEXT: movl %eax, %esi
875875 ; X32-NEXT: movl -524(%ebp), %eax # 4-byte Reload
876876 ; X32-NEXT: movl %eax, %ebx
877877 ; X32-NEXT: addl %esi, %ebx
878 ; X32-NEXT: movl -528(%ebp), %esi # 4-byte Reload
878 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
879879 ; X32-NEXT: adcl %edx, %esi
880880 ; X32-NEXT: addl %ecx, %ebx
881 ; X32-NEXT: movl %ebx, -732(%ebp) # 4-byte Spill
881 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
882882 ; X32-NEXT: adcl %edi, %esi
883883 ; X32-NEXT: movl %esi, %edx
884884 ; X32-NEXT: movl %edx, -728(%ebp) # 4-byte Spill
888888 ; X32-NEXT: adcl -276(%ebp), %ecx # 4-byte Folded Reload
889889 ; X32-NEXT: movl %ecx, -968(%ebp) # 4-byte Spill
890890 ; X32-NEXT: movl %ebx, %eax
891 ; X32-NEXT: adcl -240(%ebp), %eax # 4-byte Folded Reload
892 ; X32-NEXT: movl %eax, -964(%ebp) # 4-byte Spill
893 ; X32-NEXT: adcl -172(%ebp), %edx # 4-byte Folded Reload
894 ; X32-NEXT: movl %edx, -972(%ebp) # 4-byte Spill
891 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
892 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
893 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
894 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
895895 ; X32-NEXT: movl 12(%ebp), %eax
896896 ; X32-NEXT: movl 68(%eax), %eax
897 ; X32-NEXT: movl %eax, -444(%ebp) # 4-byte Spill
897 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
898898 ; X32-NEXT: xorl %ecx, %ecx
899899 ; X32-NEXT: mull %ecx
900900 ; X32-NEXT: xorl %ebx, %ebx
901901 ; X32-NEXT: movl %eax, %esi
902 ; X32-NEXT: movl -496(%ebp), %edi # 4-byte Reload
902 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
903903 ; X32-NEXT: addl %edi, %esi
904904 ; X32-NEXT: movl %edx, %ecx
905905 ; X32-NEXT: adcl $0, %ecx
906 ; X32-NEXT: addl -500(%ebp), %esi # 4-byte Folded Reload
907 ; X32-NEXT: movl %esi, -664(%ebp) # 4-byte Spill
906 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
907 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
908908 ; X32-NEXT: adcl %edi, %ecx
909 ; X32-NEXT: setb -96(%ebp) # 1-byte Folded Spill
909 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
910910 ; X32-NEXT: addl %eax, %ecx
911 ; X32-NEXT: movzbl -96(%ebp), %esi # 1-byte Folded Reload
911 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
912912 ; X32-NEXT: adcl %edx, %esi
913913 ; X32-NEXT: movl 12(%ebp), %eax
914914 ; X32-NEXT: movl 72(%eax), %eax
915 ; X32-NEXT: movl %eax, -388(%ebp) # 4-byte Spill
915 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
916916 ; X32-NEXT: mull %ebx
917 ; X32-NEXT: movl %eax, -564(%ebp) # 4-byte Spill
917 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
918918 ; X32-NEXT: movl %edx, %ebx
919919 ; X32-NEXT: movl %ebx, -568(%ebp) # 4-byte Spill
920920 ; X32-NEXT: movl -500(%ebp), %edx # 4-byte Reload
921921 ; X32-NEXT: movl %edx, %edi
922922 ; X32-NEXT: addl %eax, %edi
923 ; X32-NEXT: movl -496(%ebp), %eax # 4-byte Reload
923 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
924924 ; X32-NEXT: adcl %ebx, %eax
925925 ; X32-NEXT: addl %ecx, %edi
926926 ; X32-NEXT: adcl %esi, %eax
927927 ; X32-NEXT: movl %eax, %ecx
928928 ; X32-NEXT: movl %edx, %eax
929 ; X32-NEXT: addl -136(%ebp), %eax # 4-byte Folded Reload
930 ; X32-NEXT: movl %eax, -716(%ebp) # 4-byte Spill
931 ; X32-NEXT: movl -664(%ebp), %eax # 4-byte Reload
929 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
930 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
931 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
932932 ; X32-NEXT: movl %eax, %esi
933 ; X32-NEXT: adcl -276(%ebp), %esi # 4-byte Folded Reload
934 ; X32-NEXT: movl %esi, -988(%ebp) # 4-byte Spill
933 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
934 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
935935 ; X32-NEXT: movl %edi, %esi
936 ; X32-NEXT: adcl -240(%ebp), %esi # 4-byte Folded Reload
937 ; X32-NEXT: movl %esi, -984(%ebp) # 4-byte Spill
936 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
937 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
938938 ; X32-NEXT: movl %ecx, %esi
939 ; X32-NEXT: adcl -172(%ebp), %esi # 4-byte Folded Reload
940 ; X32-NEXT: movl %esi, -980(%ebp) # 4-byte Spill
939 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
940 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
941941 ; X32-NEXT: movl %edx, %esi
942 ; X32-NEXT: movl -180(%ebp), %edx # 4-byte Reload
942 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
943943 ; X32-NEXT: addl %edx, %esi
944 ; X32-NEXT: movl %esi, -720(%ebp) # 4-byte Spill
945 ; X32-NEXT: movl -48(%ebp), %esi # 4-byte Reload
944 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
945 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
946946 ; X32-NEXT: adcl %esi, %eax
947 ; X32-NEXT: movl %eax, -664(%ebp) # 4-byte Spill
948 ; X32-NEXT: movl -36(%ebp), %ebx # 4-byte Reload
947 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
948 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
949949 ; X32-NEXT: adcl %ebx, %edi
950 ; X32-NEXT: movl %edi, -996(%ebp) # 4-byte Spill
951 ; X32-NEXT: movl -20(%ebp), %edi # 4-byte Reload
950 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
951 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
952952 ; X32-NEXT: adcl %edi, %ecx
953 ; X32-NEXT: movl %ecx, -1000(%ebp) # 4-byte Spill
954 ; X32-NEXT: movl -524(%ebp), %ecx # 4-byte Reload
953 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
954 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
955955 ; X32-NEXT: movl %ecx, %eax
956956 ; X32-NEXT: addl %edx, %eax
957 ; X32-NEXT: movl -528(%ebp), %eax # 4-byte Reload
958 ; X32-NEXT: adcl -320(%ebp), %eax # 4-byte Folded Reload
959 ; X32-NEXT: movl %eax, -1004(%ebp) # 4-byte Spill
957 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
958 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
959 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
960960 ; X32-NEXT: movl %ecx, %eax
961961 ; X32-NEXT: addl %edx, %eax
962 ; X32-NEXT: movl %eax, -724(%ebp) # 4-byte Spill
963 ; X32-NEXT: adcl %esi, -668(%ebp) # 4-byte Folded Spill
964 ; X32-NEXT: adcl %ebx, -732(%ebp) # 4-byte Folded Spill
965 ; X32-NEXT: adcl %edi, -728(%ebp) # 4-byte Folded Spill
962 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
963 ; X32-NEXT: adcl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
964 ; X32-NEXT: adcl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
965 ; X32-NEXT: adcl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
966966 ; X32-NEXT: movl 12(%ebp), %eax
967967 ; X32-NEXT: movl 12(%eax), %eax
968 ; X32-NEXT: movl %eax, -96(%ebp) # 4-byte Spill
968 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
969969 ; X32-NEXT: xorl %ecx, %ecx
970970 ; X32-NEXT: mull %ecx
971971 ; X32-NEXT: movl %eax, %edi
972 ; X32-NEXT: movl -156(%ebp), %esi # 4-byte Reload
972 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
973973 ; X32-NEXT: addl %esi, %edi
974974 ; X32-NEXT: movl %edx, %ebx
975975 ; X32-NEXT: adcl $0, %ebx
976 ; X32-NEXT: movl -104(%ebp), %ecx # 4-byte Reload
976 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
977977 ; X32-NEXT: addl %ecx, %edi
978 ; X32-NEXT: movl %edi, -232(%ebp) # 4-byte Spill
978 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
979979 ; X32-NEXT: adcl %esi, %ebx
980 ; X32-NEXT: setb -88(%ebp) # 1-byte Folded Spill
980 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
981981 ; X32-NEXT: addl %eax, %ebx
982 ; X32-NEXT: movzbl -88(%ebp), %eax # 1-byte Folded Reload
982 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
983983 ; X32-NEXT: adcl %edx, %eax
984984 ; X32-NEXT: movl %ecx, %edx
985985 ; X32-NEXT: addl %edx, %ebx
986986 ; X32-NEXT: adcl %esi, %eax
987 ; X32-NEXT: movl %eax, -88(%ebp) # 4-byte Spill
988 ; X32-NEXT: movl -28(%ebp), %edi # 4-byte Reload
989 ; X32-NEXT: movl -76(%ebp), %ecx # 4-byte Reload
987 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
988 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
989 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
990990 ; X32-NEXT: addl %edi, %ecx
991 ; X32-NEXT: movl -72(%ebp), %esi # 4-byte Reload
992 ; X32-NEXT: adcl -256(%ebp), %esi # 4-byte Folded Reload
991 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
992 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
993993 ; X32-NEXT: addl %ecx, %edx
994 ; X32-NEXT: movl %edx, -72(%ebp) # 4-byte Spill
995 ; X32-NEXT: movl -232(%ebp), %edx # 4-byte Reload
994 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
995 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
996996 ; X32-NEXT: adcl %esi, %edx
997997 ; X32-NEXT: movl %esi, %eax
998 ; X32-NEXT: movl %edx, -76(%ebp) # 4-byte Spill
998 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
999999 ; X32-NEXT: movl %ebx, %edx
10001000 ; X32-NEXT: adcl $0, %edx
1001 ; X32-NEXT: movl -88(%ebp), %esi # 4-byte Reload
1001 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
10021002 ; X32-NEXT: adcl $0, %esi
1003 ; X32-NEXT: addl %edi, -72(%ebp) # 4-byte Folded Spill
1004 ; X32-NEXT: movl -16(%ebp), %edi # 4-byte Reload
1005 ; X32-NEXT: adcl %edi, -76(%ebp) # 4-byte Folded Spill
1003 ; X32-NEXT: addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1004 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1005 ; X32-NEXT: adcl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
10061006 ; X32-NEXT: adcl $0, %ecx
10071007 ; X32-NEXT: adcl $0, %eax
10081008 ; X32-NEXT: addl %edx, %ecx
10091009 ; X32-NEXT: adcl %esi, %eax
10101010 ; X32-NEXT: setb %dl
1011 ; X32-NEXT: addl -104(%ebp), %ecx # 4-byte Folded Reload
1012 ; X32-NEXT: adcl -232(%ebp), %eax # 4-byte Folded Reload
1011 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1012 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
10131013 ; X32-NEXT: movzbl %dl, %edx
10141014 ; X32-NEXT: adcl %ebx, %edx
1015 ; X32-NEXT: movl %edx, -608(%ebp) # 4-byte Spill
1016 ; X32-NEXT: adcl $0, -88(%ebp) # 4-byte Folded Spill
1017 ; X32-NEXT: movl -28(%ebp), %ebx # 4-byte Reload
1018 ; X32-NEXT: addl -116(%ebp), %ebx # 4-byte Folded Reload
1019 ; X32-NEXT: movl -164(%ebp), %edx # 4-byte Reload
1015 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1016 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1017 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1018 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1019 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
10201020 ; X32-NEXT: adcl %edi, %edx
1021 ; X32-NEXT: movl -40(%ebp), %esi # 4-byte Reload
1022 ; X32-NEXT: adcl -120(%ebp), %esi # 4-byte Folded Reload
1023 ; X32-NEXT: movl -56(%ebp), %edi # 4-byte Reload
1024 ; X32-NEXT: adcl -60(%ebp), %edi # 4-byte Folded Reload
1021 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1022 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1023 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1024 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
10251025 ; X32-NEXT: addl %ecx, %ebx
1026 ; X32-NEXT: movl %ebx, -232(%ebp) # 4-byte Spill
1026 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10271027 ; X32-NEXT: adcl %eax, %edx
1028 ; X32-NEXT: movl %edx, -164(%ebp) # 4-byte Spill
1029 ; X32-NEXT: adcl -608(%ebp), %esi # 4-byte Folded Reload
1030 ; X32-NEXT: movl %esi, -40(%ebp) # 4-byte Spill
1031 ; X32-NEXT: adcl -88(%ebp), %edi # 4-byte Folded Reload
1032 ; X32-NEXT: movl %edi, -56(%ebp) # 4-byte Spill
1028 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1029 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1030 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1031 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1032 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10331033 ; X32-NEXT: movl 8(%ebp), %eax
10341034 ; X32-NEXT: movl 44(%eax), %eax
1035 ; X32-NEXT: movl %eax, -120(%ebp) # 4-byte Spill
1035 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10361036 ; X32-NEXT: xorl %ecx, %ecx
10371037 ; X32-NEXT: mull %ecx
10381038 ; X32-NEXT: movl %edx, %edi
10391039 ; X32-NEXT: movl %eax, %ebx
10401040 ; X32-NEXT: movl %ebx, %ecx
1041 ; X32-NEXT: movl -396(%ebp), %esi # 4-byte Reload
1041 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
10421042 ; X32-NEXT: addl %esi, %ecx
10431043 ; X32-NEXT: adcl $0, %edx
1044 ; X32-NEXT: movl -364(%ebp), %eax # 4-byte Reload
1044 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
10451045 ; X32-NEXT: addl %eax, %ecx
1046 ; X32-NEXT: movl %ecx, -60(%ebp) # 4-byte Spill
1046 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10471047 ; X32-NEXT: adcl %esi, %edx
10481048 ; X32-NEXT: movl %esi, %ecx
1049 ; X32-NEXT: setb -16(%ebp) # 1-byte Folded Spill
1049 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
10501050 ; X32-NEXT: addl %ebx, %edx
1051 ; X32-NEXT: movzbl -16(%ebp), %ebx # 1-byte Folded Reload
1051 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 1-byte Folded Reload
10521052 ; X32-NEXT: adcl %edi, %ebx
10531053 ; X32-NEXT: movl %eax, %esi
10541054 ; X32-NEXT: addl %esi, %edx
10551055 ; X32-NEXT: adcl %ecx, %ebx
1056 ; X32-NEXT: movl -64(%ebp), %eax # 4-byte Reload
1057 ; X32-NEXT: addl -324(%ebp), %eax # 4-byte Folded Reload
1058 ; X32-NEXT: movl -152(%ebp), %ecx # 4-byte Reload
1059 ; X32-NEXT: adcl -400(%ebp), %ecx # 4-byte Folded Reload
1056 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1057 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1058 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1059 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
10601060 ; X32-NEXT: addl %eax, %esi
1061 ; X32-NEXT: movl %esi, -64(%ebp) # 4-byte Spill
1062 ; X32-NEXT: movl -60(%ebp), %esi # 4-byte Reload
1061 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1062 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
10631063 ; X32-NEXT: adcl %ecx, %esi
1064 ; X32-NEXT: movl %esi, -16(%ebp) # 4-byte Spill
1064 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10651065 ; X32-NEXT: movl %edx, %esi
10661066 ; X32-NEXT: adcl $0, %esi
1067 ; X32-NEXT: movl %esi, -88(%ebp) # 4-byte Spill
1067 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10681068 ; X32-NEXT: movl %ebx, %edi
10691069 ; X32-NEXT: adcl $0, %edi
1070 ; X32-NEXT: movl -324(%ebp), %esi # 4-byte Reload
1071 ; X32-NEXT: addl %esi, -64(%ebp) # 4-byte Folded Spill
1072 ; X32-NEXT: movl -16(%ebp), %esi # 4-byte Reload
1073 ; X32-NEXT: adcl -112(%ebp), %esi # 4-byte Folded Reload
1074 ; X32-NEXT: movl %esi, -16(%ebp) # 4-byte Spill
1070 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1071 ; X32-NEXT: addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1072 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1073 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1074 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10751075 ; X32-NEXT: adcl $0, %eax
10761076 ; X32-NEXT: adcl $0, %ecx
1077 ; X32-NEXT: addl -88(%ebp), %eax # 4-byte Folded Reload
1077 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
10781078 ; X32-NEXT: adcl %edi, %ecx
1079 ; X32-NEXT: setb -88(%ebp) # 1-byte Folded Spill
1080 ; X32-NEXT: addl -364(%ebp), %eax # 4-byte Folded Reload
1081 ; X32-NEXT: adcl -60(%ebp), %ecx # 4-byte Folded Reload
1082 ; X32-NEXT: movzbl -88(%ebp), %esi # 1-byte Folded Reload
1079 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1080 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1081 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1082 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
10831083 ; X32-NEXT: adcl %edx, %esi
1084 ; X32-NEXT: movl %esi, -60(%ebp) # 4-byte Spill
1084 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
10851085 ; X32-NEXT: adcl $0, %ebx
1086 ; X32-NEXT: movl -324(%ebp), %edx # 4-byte Reload
1087 ; X32-NEXT: addl -132(%ebp), %edx # 4-byte Folded Reload
1088 ; X32-NEXT: movl %edx, -88(%ebp) # 4-byte Spill
1089 ; X32-NEXT: movl -192(%ebp), %edx # 4-byte Reload
1090 ; X32-NEXT: adcl -112(%ebp), %edx # 4-byte Folded Reload
1091 ; X32-NEXT: movl -44(%ebp), %esi # 4-byte Reload
1092 ; X32-NEXT: adcl -272(%ebp), %esi # 4-byte Folded Reload
1093 ; X32-NEXT: movl -52(%ebp), %edi # 4-byte Reload
1094 ; X32-NEXT: adcl -24(%ebp), %edi # 4-byte Folded Reload
1095 ; X32-NEXT: addl %eax, -88(%ebp) # 4-byte Folded Spill
1096 ; X32-NEXT: adcl %ecx, %edx
1097 ; X32-NEXT: movl %edx, -192(%ebp) # 4-byte Spill
1098 ; X32-NEXT: adcl -60(%ebp), %esi # 4-byte Folded Reload
1099 ; X32-NEXT: movl %esi, -44(%ebp) # 4-byte Spill
1086 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1087 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1088 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1089 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1090 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1091 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1092 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1093 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1094 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1095 ; X32-NEXT: addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1096 ; X32-NEXT: adcl %ecx, %edx
1097 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1098 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1099 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11001100 ; X32-NEXT: adcl %ebx, %edi
1101 ; X32-NEXT: movl %edi, -52(%ebp) # 4-byte Spill
1102 ; X32-NEXT: movl -64(%ebp), %eax # 4-byte Reload
1103 ; X32-NEXT: movl -456(%ebp), %ecx # 4-byte Reload
1101 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1102 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1103 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
11041104 ; X32-NEXT: pushl %eax
11051105 ; X32-NEXT: movl %ecx, %eax
11061106 ; X32-NEXT: addb $127, %al
11071107 ; X32-NEXT: sahf
11081108 ; X32-NEXT: popl %eax
1109 ; X32-NEXT: adcl -72(%ebp), %eax # 4-byte Folded Reload
1110 ; X32-NEXT: movl %eax, -608(%ebp) # 4-byte Spill
1111 ; X32-NEXT: movl -16(%ebp), %eax # 4-byte Reload
1112 ; X32-NEXT: adcl -76(%ebp), %eax # 4-byte Folded Reload
1113 ; X32-NEXT: movl %eax, -760(%ebp) # 4-byte Spill
1114 ; X32-NEXT: movl -88(%ebp), %eax # 4-byte Reload
1115 ; X32-NEXT: adcl -232(%ebp), %eax # 4-byte Folded Reload
1116 ; X32-NEXT: movl %eax, -756(%ebp) # 4-byte Spill
1109 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1110 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1111 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1112 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1113 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1114 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1115 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1116 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11171117 ; X32-NEXT: movl %edx, %eax
1118 ; X32-NEXT: adcl -164(%ebp), %eax # 4-byte Folded Reload
1119 ; X32-NEXT: movl %eax, -752(%ebp) # 4-byte Spill
1120 ; X32-NEXT: movl %esi, %eax
1121 ; X32-NEXT: adcl -40(%ebp), %eax # 4-byte Folded Reload
1122 ; X32-NEXT: movl %eax, -748(%ebp) # 4-byte Spill
1118 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1119 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1120 ; X32-NEXT: movl %esi, %eax
1121 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1122 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11231123 ; X32-NEXT: movl %edi, %eax
1124 ; X32-NEXT: adcl -56(%ebp), %eax # 4-byte Folded Reload
1125 ; X32-NEXT: movl %eax, -744(%ebp) # 4-byte Spill
1124 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1125 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11261126 ; X32-NEXT: movl 8(%ebp), %eax
11271127 ; X32-NEXT: movl 12(%eax), %eax
1128 ; X32-NEXT: movl %eax, -60(%ebp) # 4-byte Spill
1128 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11291129 ; X32-NEXT: xorl %ecx, %ecx
11301130 ; X32-NEXT: mull %ecx
11311131 ; X32-NEXT: movl %edx, %esi
11321132 ; X32-NEXT: movl %eax, %ecx
1133 ; X32-NEXT: movl -268(%ebp), %ebx # 4-byte Reload
1133 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
11341134 ; X32-NEXT: addl %ebx, %ecx
11351135 ; X32-NEXT: adcl $0, %edx
1136 ; X32-NEXT: movl -160(%ebp), %edi # 4-byte Reload
1136 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
11371137 ; X32-NEXT: addl %edi, %ecx
1138 ; X32-NEXT: movl %ecx, -24(%ebp) # 4-byte Spill
1138 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11391139 ; X32-NEXT: adcl %ebx, %edx
11401140 ; X32-NEXT: setb %cl
11411141 ; X32-NEXT: addl %eax, %edx
11441144 ; X32-NEXT: movl %edi, %esi
11451145 ; X32-NEXT: addl %esi, %edx
11461146 ; X32-NEXT: adcl %ebx, %eax
1147 ; X32-NEXT: movl %eax, -112(%ebp) # 4-byte Spill
1148 ; X32-NEXT: movl -136(%ebp), %edi # 4-byte Reload
1149 ; X32-NEXT: movl -584(%ebp), %ecx # 4-byte Reload
1147 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1148 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1149 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
11501150 ; X32-NEXT: addl %edi, %ecx
1151 ; X32-NEXT: movl -432(%ebp), %eax # 4-byte Reload
1152 ; X32-NEXT: adcl -264(%ebp), %eax # 4-byte Folded Reload
1151 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1152 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
11531153 ; X32-NEXT: addl %ecx, %esi
1154 ; X32-NEXT: movl %esi, -432(%ebp) # 4-byte Spill
1155 ; X32-NEXT: movl -24(%ebp), %esi # 4-byte Reload
1154 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1155 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
11561156 ; X32-NEXT: adcl %eax, %esi
1157 ; X32-NEXT: movl %esi, -456(%ebp) # 4-byte Spill
1157 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11581158 ; X32-NEXT: movl %edx, %esi
11591159 ; X32-NEXT: adcl $0, %esi
1160 ; X32-NEXT: movl -112(%ebp), %ebx # 4-byte Reload
1160 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
11611161 ; X32-NEXT: adcl $0, %ebx
1162 ; X32-NEXT: addl %edi, -432(%ebp) # 4-byte Folded Spill
1163 ; X32-NEXT: movl -276(%ebp), %edi # 4-byte Reload
1164 ; X32-NEXT: adcl %edi, -456(%ebp) # 4-byte Folded Spill
1162 ; X32-NEXT: addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1163 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1164 ; X32-NEXT: adcl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
11651165 ; X32-NEXT: adcl $0, %ecx
11661166 ; X32-NEXT: adcl $0, %eax
11671167 ; X32-NEXT: addl %esi, %ecx
11681168 ; X32-NEXT: adcl %ebx, %eax
11691169 ; X32-NEXT: setb %bl
1170 ; X32-NEXT: addl -160(%ebp), %ecx # 4-byte Folded Reload
1171 ; X32-NEXT: adcl -24(%ebp), %eax # 4-byte Folded Reload
1170 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1171 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
11721172 ; X32-NEXT: movzbl %bl, %esi
11731173 ; X32-NEXT: adcl %edx, %esi
1174 ; X32-NEXT: movl %esi, -24(%ebp) # 4-byte Spill
1175 ; X32-NEXT: adcl $0, -112(%ebp) # 4-byte Folded Spill
1176 ; X32-NEXT: movl -136(%ebp), %ebx # 4-byte Reload
1177 ; X32-NEXT: addl -180(%ebp), %ebx # 4-byte Folded Reload
1174 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1175 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1176 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1177 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
11781178 ; X32-NEXT: movl %edi, %edx
1179 ; X32-NEXT: adcl -48(%ebp), %edx # 4-byte Folded Reload
1180 ; X32-NEXT: movl -240(%ebp), %esi # 4-byte Reload
1181 ; X32-NEXT: adcl -36(%ebp), %esi # 4-byte Folded Reload
1182 ; X32-NEXT: movl -172(%ebp), %edi # 4-byte Reload
1183 ; X32-NEXT: adcl -20(%ebp), %edi # 4-byte Folded Reload
1179 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1180 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1181 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1182 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1183 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
11841184 ; X32-NEXT: addl %ecx, %ebx
1185 ; X32-NEXT: movl %ebx, -584(%ebp) # 4-byte Spill
1185 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
11861186 ; X32-NEXT: adcl %eax, %edx
1187 ; X32-NEXT: movl %edx, -276(%ebp) # 4-byte Spill
1188 ; X32-NEXT: adcl -24(%ebp), %esi # 4-byte Folded Reload
1189 ; X32-NEXT: movl %esi, -240(%ebp) # 4-byte Spill
1190 ; X32-NEXT: adcl -112(%ebp), %edi # 4-byte Folded Reload
1191 ; X32-NEXT: movl %edi, -172(%ebp) # 4-byte Spill
1192 ; X32-NEXT: movl -736(%ebp), %eax # 4-byte Reload
1187 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1188 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1189 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1190 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1191 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1192 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
11931193 ; X32-NEXT: movl %eax, %eax
11941194 ; X32-NEXT: addb $127, %al
11951195 ; X32-NEXT: sahf
1196 ; X32-NEXT: movl -72(%ebp), %eax # 4-byte Reload
1197 ; X32-NEXT: adcl -432(%ebp), %eax # 4-byte Folded Reload
1198 ; X32-NEXT: movl %eax, -72(%ebp) # 4-byte Spill
1199 ; X32-NEXT: movl -76(%ebp), %eax # 4-byte Reload
1200 ; X32-NEXT: adcl -456(%ebp), %eax # 4-byte Folded Reload
1201 ; X32-NEXT: movl %eax, -76(%ebp) # 4-byte Spill
1202 ; X32-NEXT: adcl %ebx, -232(%ebp) # 4-byte Folded Spill
1203 ; X32-NEXT: adcl %edx, -164(%ebp) # 4-byte Folded Spill
1204 ; X32-NEXT: adcl %esi, -40(%ebp) # 4-byte Folded Spill
1205 ; X32-NEXT: adcl %edi, -56(%ebp) # 4-byte Folded Spill
1196 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1197 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1198 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1199 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1200 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1201 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1202 ; X32-NEXT: adcl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1203 ; X32-NEXT: adcl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1204 ; X32-NEXT: adcl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1205 ; X32-NEXT: adcl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
12061206 ; X32-NEXT: movl 12(%ebp), %eax
12071207 ; X32-NEXT: movl 44(%eax), %eax
1208 ; X32-NEXT: movl %eax, -112(%ebp) # 4-byte Spill
1208 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
12091209 ; X32-NEXT: xorl %ecx, %ecx
12101210 ; X32-NEXT: mull %ecx
12111211 ; X32-NEXT: movl %eax, %ebx
1212 ; X32-NEXT: movl -128(%ebp), %edi # 4-byte Reload
1212 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
12131213 ; X32-NEXT: addl %edi, %ebx
12141214 ; X32-NEXT: movl %edx, %esi
12151215 ; X32-NEXT: adcl $0, %esi
1216 ; X32-NEXT: movl -304(%ebp), %ecx # 4-byte Reload
1216 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
12171217 ; X32-NEXT: addl %ecx, %ebx
1218 ; X32-NEXT: movl %ebx, -36(%ebp) # 4-byte Spill
1218 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
12191219 ; X32-NEXT: adcl %edi, %esi
12201220 ; X32-NEXT: setb %bl
12211221 ; X32-NEXT: addl %eax, %esi
12241224 ; X32-NEXT: movl %ecx, %edx
12251225 ; X32-NEXT: addl %edx, %esi
12261226 ; X32-NEXT: adcl %edi, %eax
1227 ; X32-NEXT: movl %eax, -48(%ebp) # 4-byte Spill
1228 ; X32-NEXT: movl -100(%ebp), %edi # 4-byte Reload
1229 ; X32-NEXT: movl -220(%ebp), %eax # 4-byte Reload
1227 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1228 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1229 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
12301230 ; X32-NEXT: addl %edi, %eax
1231 ; X32-NEXT: movl -376(%ebp), %ecx # 4-byte Reload
1232 ; X32-NEXT: adcl -204(%ebp), %ecx # 4-byte Folded Reload
1231 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1232 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
12331233 ; X32-NEXT: addl %eax, %edx
1234 ; X32-NEXT: movl %edx, -376(%ebp) # 4-byte Spill
1235 ; X32-NEXT: movl -36(%ebp), %edx # 4-byte Reload
1236 ; X32-NEXT: adcl %ecx, %edx
1237 ; X32-NEXT: movl %edx, -220(%ebp) # 4-byte Spill
1234 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1235 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1236 ; X32-NEXT: adcl %ecx, %edx
1237 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
12381238 ; X32-NEXT: movl %esi, %edx
12391239 ; X32-NEXT: adcl $0, %edx
1240 ; X32-NEXT: movl %edx, -20(%ebp) # 4-byte Spill
1241 ; X32-NEXT: movl -48(%ebp), %ebx # 4-byte Reload
1240 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1241 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
12421242 ; X32-NEXT: adcl $0, %ebx
1243 ; X32-NEXT: addl %edi, -376(%ebp) # 4-byte Folded Spill
1244 ; X32-NEXT: movl -220(%ebp), %edx # 4-byte Reload
1245 ; X32-NEXT: adcl -80(%ebp), %edx # 4-byte Folded Reload
1246 ; X32-NEXT: movl %edx, -220(%ebp) # 4-byte Spill
1243 ; X32-NEXT: addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1244 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1245 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1246 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
12471247 ; X32-NEXT: adcl $0, %eax
12481248 ; X32-NEXT: adcl $0, %ecx
1249 ; X32-NEXT: addl -20(%ebp), %eax # 4-byte Folded Reload
1249 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
12501250 ; X32-NEXT: adcl %ebx, %ecx
12511251 ; X32-NEXT: setb %dl
1252 ; X32-NEXT: addl -304(%ebp), %eax # 4-byte Folded Reload
1253 ; X32-NEXT: adcl -36(%ebp), %ecx # 4-byte Folded Reload
1252 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1253 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
12541254 ; X32-NEXT: movzbl %dl, %edx
12551255 ; X32-NEXT: adcl %esi, %edx
1256 ; X32-NEXT: movl %edx, -36(%ebp) # 4-byte Spill
1257 ; X32-NEXT: adcl $0, -48(%ebp) # 4-byte Folded Spill
1256 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1257 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
12581258 ; X32-NEXT: movl %edi, %ebx
1259 ; X32-NEXT: addl -336(%ebp), %ebx # 4-byte Folded Reload
1260 ; X32-NEXT: movl -200(%ebp), %edx # 4-byte Reload
1261 ; X32-NEXT: adcl -80(%ebp), %edx # 4-byte Folded Reload
1262 ; X32-NEXT: movl -472(%ebp), %edi # 4-byte Reload
1263 ; X32-NEXT: adcl -372(%ebp), %edi # 4-byte Folded Reload
1264 ; X32-NEXT: movl -436(%ebp), %esi # 4-byte Reload
1265 ; X32-NEXT: adcl -292(%ebp), %esi # 4-byte Folded Reload
1259 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1260 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1261 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1262 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1263 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1264 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1265 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
12661266 ; X32-NEXT: addl %eax, %ebx
12671267 ; X32-NEXT: adcl %ecx, %edx
1268 ; X32-NEXT: movl %edx, -200(%ebp) # 4-byte Spill
1269 ; X32-NEXT: adcl -36(%ebp), %edi # 4-byte Folded Reload
1270 ; X32-NEXT: adcl -48(%ebp), %esi # 4-byte Folded Reload
1271 ; X32-NEXT: movl -740(%ebp), %eax # 4-byte Reload
1268 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1269 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1270 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1271 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
12721272 ; X32-NEXT: movl %eax, %eax
12731273 ; X32-NEXT: addb $127, %al
12741274 ; X32-NEXT: sahf
1275 ; X32-NEXT: movl -376(%ebp), %edx # 4-byte Reload
1276 ; X32-NEXT: adcl %edx, -432(%ebp) # 4-byte Folded Spill
1277 ; X32-NEXT: movl -220(%ebp), %ecx # 4-byte Reload
1278 ; X32-NEXT: adcl %ecx, -456(%ebp) # 4-byte Folded Spill
1279 ; X32-NEXT: adcl %ebx, -584(%ebp) # 4-byte Folded Spill
1280 ; X32-NEXT: movl -200(%ebp), %eax # 4-byte Reload
1281 ; X32-NEXT: adcl %eax, -276(%ebp) # 4-byte Folded Spill
1282 ; X32-NEXT: adcl %edi, -240(%ebp) # 4-byte Folded Spill
1283 ; X32-NEXT: adcl %esi, -172(%ebp) # 4-byte Folded Spill
1284 ; X32-NEXT: movl -640(%ebp), %eax # 4-byte Reload
1275 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1276 ; X32-NEXT: adcl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1277 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1278 ; X32-NEXT: adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1279 ; X32-NEXT: adcl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1280 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1281 ; X32-NEXT: adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1282 ; X32-NEXT: adcl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1283 ; X32-NEXT: adcl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1284 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
12851285 ; X32-NEXT: movl %eax, %eax
12861286 ; X32-NEXT: addb $127, %al
12871287 ; X32-NEXT: sahf
1288 ; X32-NEXT: adcl -64(%ebp), %edx # 4-byte Folded Reload
1289 ; X32-NEXT: movl %edx, -376(%ebp) # 4-byte Spill
1290 ; X32-NEXT: adcl -16(%ebp), %ecx # 4-byte Folded Reload
1291 ; X32-NEXT: movl %ecx, -220(%ebp) # 4-byte Spill
1292 ; X32-NEXT: adcl -88(%ebp), %ebx # 4-byte Folded Reload
1293 ; X32-NEXT: movl %ebx, -640(%ebp) # 4-byte Spill
1294 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1295 ; X32-NEXT: adcl %eax, -200(%ebp) # 4-byte Folded Spill
1296 ; X32-NEXT: adcl -44(%ebp), %edi # 4-byte Folded Reload
1297 ; X32-NEXT: movl %edi, -472(%ebp) # 4-byte Spill
1298 ; X32-NEXT: adcl -52(%ebp), %esi # 4-byte Folded Reload
1299 ; X32-NEXT: movl %esi, -436(%ebp) # 4-byte Spill
1300 ; X32-NEXT: movl -408(%ebp), %ecx # 4-byte Reload
1288 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1289 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1290 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1291 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1292 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1293 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1294 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1295 ; X32-NEXT: adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1296 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1297 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1298 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1299 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1300 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
13011301 ; X32-NEXT: movl %ecx, %eax
1302 ; X32-NEXT: movl -168(%ebp), %esi # 4-byte Reload
1303 ; X32-NEXT: mull %esi
1304 ; X32-NEXT: movl %eax, -48(%ebp) # 4-byte Spill
1305 ; X32-NEXT: movl %edx, -16(%ebp) # 4-byte Spill
1302 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1303 ; X32-NEXT: mull %esi
1304 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1305 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13061306 ; X32-NEXT: movl 8(%ebp), %eax
13071307 ; X32-NEXT: movl 60(%eax), %eax
1308 ; X32-NEXT: movl %eax, -192(%ebp) # 4-byte Spill
1308 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13091309 ; X32-NEXT: mull %esi
13101310 ; X32-NEXT: movl %edx, %edi
13111311 ; X32-NEXT: movl %eax, %ebx
1312 ; X32-NEXT: addl -16(%ebp), %ebx # 4-byte Folded Reload
1312 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
13131313 ; X32-NEXT: adcl $0, %edi
13141314 ; X32-NEXT: movl %ecx, %eax
1315 ; X32-NEXT: movl -92(%ebp), %esi # 4-byte Reload
1315 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
13161316 ; X32-NEXT: mull %esi
13171317 ; X32-NEXT: movl %edx, %ecx
13181318 ; X32-NEXT: addl %ebx, %eax
1319 ; X32-NEXT: movl %eax, -36(%ebp) # 4-byte Spill
1319 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13201320 ; X32-NEXT: adcl %edi, %ecx
13211321 ; X32-NEXT: setb %bl
1322 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1322 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
13231323 ; X32-NEXT: mull %esi
13241324 ; X32-NEXT: addl %ecx, %eax
13251325 ; X32-NEXT: movzbl %bl, %ecx
13261326 ; X32-NEXT: adcl %ecx, %edx
1327 ; X32-NEXT: movl -392(%ebp), %ecx # 4-byte Reload
1328 ; X32-NEXT: addl -28(%ebp), %ecx # 4-byte Folded Reload
1329 ; X32-NEXT: movl -412(%ebp), %esi # 4-byte Reload
1330 ; X32-NEXT: adcl -256(%ebp), %esi # 4-byte Folded Reload
1327 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1328 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1329 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1330 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
13311331 ; X32-NEXT: addl %eax, %ecx
1332 ; X32-NEXT: movl %ecx, -80(%ebp) # 4-byte Spill
1332 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13331333 ; X32-NEXT: adcl %edx, %esi
1334 ; X32-NEXT: movl %esi, -16(%ebp) # 4-byte Spill
1335 ; X32-NEXT: movl -440(%ebp), %esi # 4-byte Reload
1336 ; X32-NEXT: movl %esi, %eax
1337 ; X32-NEXT: movl -168(%ebp), %edi # 4-byte Reload
1338 ; X32-NEXT: mull %edi
1339 ; X32-NEXT: movl %edx, %ecx
1340 ; X32-NEXT: movl %eax, -24(%ebp) # 4-byte Spill
1341 ; X32-NEXT: movl -340(%ebp), %eax # 4-byte Reload
1334 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1335 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1336 ; X32-NEXT: movl %esi, %eax
1337 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1338 ; X32-NEXT: mull %edi
1339 ; X32-NEXT: movl %edx, %ecx
1340 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1341 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
13421342 ; X32-NEXT: mull %edi
13431343 ; X32-NEXT: movl %edx, %edi
13441344 ; X32-NEXT: movl %eax, %ebx
13451345 ; X32-NEXT: addl %ecx, %ebx
13461346 ; X32-NEXT: adcl $0, %edi
13471347 ; X32-NEXT: movl %esi, %eax
1348 ; X32-NEXT: movl -92(%ebp), %esi # 4-byte Reload
1348 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
13491349 ; X32-NEXT: mull %esi
13501350 ; X32-NEXT: movl %edx, %ecx
13511351 ; X32-NEXT: addl %ebx, %eax
1352 ; X32-NEXT: movl %eax, -64(%ebp) # 4-byte Spill
1352 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13531353 ; X32-NEXT: adcl %edi, %ecx
13541354 ; X32-NEXT: setb %bl
1355 ; X32-NEXT: movl -340(%ebp), %edi # 4-byte Reload
1355 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
13561356 ; X32-NEXT: movl %edi, %eax
13571357 ; X32-NEXT: mull %esi
13581358 ; X32-NEXT: addl %ecx, %eax
13591359 ; X32-NEXT: movzbl %bl, %ecx
13601360 ; X32-NEXT: adcl %ecx, %edx
1361 ; X32-NEXT: addl -68(%ebp), %eax # 4-byte Folded Reload
1362 ; X32-NEXT: adcl -764(%ebp), %edx # 4-byte Folded Reload
1363 ; X32-NEXT: addl -48(%ebp), %eax # 4-byte Folded Reload
1364 ; X32-NEXT: movl %eax, -20(%ebp) # 4-byte Spill
1365 ; X32-NEXT: adcl -36(%ebp), %edx # 4-byte Folded Reload
1366 ; X32-NEXT: movl %edx, -36(%ebp) # 4-byte Spill
1367 ; X32-NEXT: adcl $0, -80(%ebp) # 4-byte Folded Spill
1368 ; X32-NEXT: adcl $0, -16(%ebp) # 4-byte Folded Spill
1369 ; X32-NEXT: movl -440(%ebp), %esi # 4-byte Reload
1370 ; X32-NEXT: movl %esi, %eax
1371 ; X32-NEXT: movl -108(%ebp), %ecx # 4-byte Reload
1372 ; X32-NEXT: mull %ecx
1373 ; X32-NEXT: movl %edx, -44(%ebp) # 4-byte Spill
1374 ; X32-NEXT: movl %eax, -48(%ebp) # 4-byte Spill
1361 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1362 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1363 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1364 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1365 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1366 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1367 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1368 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1369 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1370 ; X32-NEXT: movl %esi, %eax
1371 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1372 ; X32-NEXT: mull %ecx
1373 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1374 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13751375 ; X32-NEXT: movl %edi, %eax
13761376 ; X32-NEXT: mull %ecx
13771377 ; X32-NEXT: movl %edx, %ebx
13781378 ; X32-NEXT: movl %eax, %ecx
1379 ; X32-NEXT: addl -44(%ebp), %ecx # 4-byte Folded Reload
1379 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
13801380 ; X32-NEXT: adcl $0, %ebx
13811381 ; X32-NEXT: movl %esi, %eax
1382 ; X32-NEXT: movl -96(%ebp), %esi # 4-byte Reload
1383 ; X32-NEXT: mull %esi
1384 ; X32-NEXT: movl %edx, %edi
1385 ; X32-NEXT: addl %ecx, %eax
1386 ; X32-NEXT: movl %eax, -52(%ebp) # 4-byte Spill
1382 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1383 ; X32-NEXT: mull %esi
1384 ; X32-NEXT: movl %edx, %edi
1385 ; X32-NEXT: addl %ecx, %eax
1386 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
13871387 ; X32-NEXT: adcl %ebx, %edi
13881388 ; X32-NEXT: setb %cl
1389 ; X32-NEXT: movl -340(%ebp), %eax # 4-byte Reload
1389 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
13901390 ; X32-NEXT: mull %esi
13911391 ; X32-NEXT: addl %edi, %eax
13921392 ; X32-NEXT: movzbl %cl, %ecx
13931393 ; X32-NEXT: adcl %ecx, %edx
1394 ; X32-NEXT: movl -132(%ebp), %ecx # 4-byte Reload
1395 ; X32-NEXT: addl -104(%ebp), %ecx # 4-byte Folded Reload
1396 ; X32-NEXT: movl -140(%ebp), %esi # 4-byte Reload
1397 ; X32-NEXT: adcl -156(%ebp), %esi # 4-byte Folded Reload
1394 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1395 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1396 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1397 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
13981398 ; X32-NEXT: addl %eax, %ecx
13991399 ; X32-NEXT: adcl %edx, %esi
1400 ; X32-NEXT: movl -20(%ebp), %eax # 4-byte Reload
1401 ; X32-NEXT: addl %eax, -48(%ebp) # 4-byte Folded Spill
1402 ; X32-NEXT: movl -36(%ebp), %eax # 4-byte Reload
1403 ; X32-NEXT: adcl %eax, -52(%ebp) # 4-byte Folded Spill
1400 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1401 ; X32-NEXT: addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1402 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1403 ; X32-NEXT: adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
14041404 ; X32-NEXT: adcl $0, %ecx
14051405 ; X32-NEXT: adcl $0, %esi
1406 ; X32-NEXT: addl -80(%ebp), %ecx # 4-byte Folded Reload
1407 ; X32-NEXT: adcl -16(%ebp), %esi # 4-byte Folded Reload
1408 ; X32-NEXT: setb -36(%ebp) # 1-byte Folded Spill
1409 ; X32-NEXT: movl -408(%ebp), %eax # 4-byte Reload
1410 ; X32-NEXT: movl -108(%ebp), %edi # 4-byte Reload
1411 ; X32-NEXT: mull %edi
1412 ; X32-NEXT: movl %edx, -80(%ebp) # 4-byte Spill
1413 ; X32-NEXT: movl %eax, -16(%ebp) # 4-byte Spill
1414 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1406 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1407 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1408 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1409 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1410 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1411 ; X32-NEXT: mull %edi
1412 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1413 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1414 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
14151415 ; X32-NEXT: mull %edi
14161416 ; X32-NEXT: movl %eax, %ebx
1417 ; X32-NEXT: addl -80(%ebp), %ebx # 4-byte Folded Reload
1417 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
14181418 ; X32-NEXT: adcl $0, %edx
1419 ; X32-NEXT: movl %edx, -20(%ebp) # 4-byte Spill
1420 ; X32-NEXT: movl -408(%ebp), %eax # 4-byte Reload
1421 ; X32-NEXT: movl -96(%ebp), %edi # 4-byte Reload
1419 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1420 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1421 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
14221422 ; X32-NEXT: mull %edi
14231423 ; X32-NEXT: addl %ebx, %eax
1424 ; X32-NEXT: movl %eax, -80(%ebp) # 4-byte Spill
1425 ; X32-NEXT: adcl -20(%ebp), %edx # 4-byte Folded Reload
1424 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1425 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
14261426 ; X32-NEXT: movl %edx, %ebx
1427 ; X32-NEXT: setb -20(%ebp) # 1-byte Folded Spill
1428 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1427 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1428 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
14291429 ; X32-NEXT: mull %edi
14301430 ; X32-NEXT: addl %ebx, %eax
1431 ; X32-NEXT: movzbl -20(%ebp), %edi # 1-byte Folded Reload
1431 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
14321432 ; X32-NEXT: adcl %edi, %edx
1433 ; X32-NEXT: movl -392(%ebp), %edi # 4-byte Reload
1434 ; X32-NEXT: addl -104(%ebp), %edi # 4-byte Folded Reload
1435 ; X32-NEXT: movl -412(%ebp), %ebx # 4-byte Reload
1436 ; X32-NEXT: adcl -156(%ebp), %ebx # 4-byte Folded Reload
1433 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1434 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1435 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1436 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
14371437 ; X32-NEXT: addl %eax, %edi
14381438 ; X32-NEXT: adcl %edx, %ebx
1439 ; X32-NEXT: movl -16(%ebp), %edx # 4-byte Reload
1439 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
14401440 ; X32-NEXT: addl %ecx, %edx
1441 ; X32-NEXT: movl -80(%ebp), %ecx # 4-byte Reload
1441 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
14421442 ; X32-NEXT: adcl %esi, %ecx
1443 ; X32-NEXT: movzbl -36(%ebp), %eax # 1-byte Folded Reload
1443 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
14441444 ; X32-NEXT: adcl %eax, %edi
14451445 ; X32-NEXT: adcl $0, %ebx
1446 ; X32-NEXT: addl -68(%ebp), %edx # 4-byte Folded Reload
1447 ; X32-NEXT: movl %edx, -16(%ebp) # 4-byte Spill
1448 ; X32-NEXT: adcl -420(%ebp), %ecx # 4-byte Folded Reload
1449 ; X32-NEXT: movl %ecx, -80(%ebp) # 4-byte Spill
1450 ; X32-NEXT: adcl -616(%ebp), %edi # 4-byte Folded Reload
1451 ; X32-NEXT: movl %edi, -88(%ebp) # 4-byte Spill
1452 ; X32-NEXT: adcl -612(%ebp), %ebx # 4-byte Folded Reload
1453 ; X32-NEXT: movl %ebx, -272(%ebp) # 4-byte Spill
1454 ; X32-NEXT: movl -352(%ebp), %edi # 4-byte Reload
1446 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1447 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1448 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1449 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1450 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1451 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1452 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1453 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1454 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
14551455 ; X32-NEXT: movl %edi, %eax
1456 ; X32-NEXT: movl -168(%ebp), %esi # 4-byte Reload
1457 ; X32-NEXT: mull %esi
1458 ; X32-NEXT: movl %edx, %ecx
1459 ; X32-NEXT: movl %eax, -44(%ebp) # 4-byte Spill
1460 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1456 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1457 ; X32-NEXT: mull %esi
1458 ; X32-NEXT: movl %edx, %ecx
1459 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1460 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
14611461 ; X32-NEXT: mull %esi
14621462 ; X32-NEXT: movl %edx, %ebx
14631463 ; X32-NEXT: movl %eax, %esi
14641464 ; X32-NEXT: addl %ecx, %esi
14651465 ; X32-NEXT: adcl $0, %ebx
14661466 ; X32-NEXT: movl %edi, %eax
1467 ; X32-NEXT: movl -92(%ebp), %ecx # 4-byte Reload
1467 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
14681468 ; X32-NEXT: mull %ecx
14691469 ; X32-NEXT: movl %edx, %edi
14701470 ; X32-NEXT: addl %esi, %eax
1471 ; X32-NEXT: movl %eax, -68(%ebp) # 4-byte Spill
1471 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
14721472 ; X32-NEXT: adcl %ebx, %edi
14731473 ; X32-NEXT: setb %bl
1474 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1474 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
14751475 ; X32-NEXT: mull %ecx
14761476 ; X32-NEXT: addl %edi, %eax
14771477 ; X32-NEXT: movzbl %bl, %ecx
14781478 ; X32-NEXT: adcl %ecx, %edx
1479 ; X32-NEXT: movl -364(%ebp), %ecx # 4-byte Reload
1480 ; X32-NEXT: addl -28(%ebp), %ecx # 4-byte Folded Reload
1481 ; X32-NEXT: movl -396(%ebp), %esi # 4-byte Reload
1482 ; X32-NEXT: adcl -256(%ebp), %esi # 4-byte Folded Reload
1479 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1480 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1481 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1482 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
14831483 ; X32-NEXT: addl %eax, %ecx
1484 ; X32-NEXT: movl %ecx, -20(%ebp) # 4-byte Spill
1484 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
14851485 ; X32-NEXT: adcl %edx, %esi
1486 ; X32-NEXT: movl %esi, -36(%ebp) # 4-byte Spill
1487 ; X32-NEXT: movl -416(%ebp), %ecx # 4-byte Reload
1486 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1487 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
14881488 ; X32-NEXT: movl %ecx, %eax
1489 ; X32-NEXT: movl -168(%ebp), %esi # 4-byte Reload
1490 ; X32-NEXT: mull %esi
1491 ; X32-NEXT: movl %edx, %edi
1492 ; X32-NEXT: movl %eax, -616(%ebp) # 4-byte Spill
1493 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1489 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1490 ; X32-NEXT: mull %esi
1491 ; X32-NEXT: movl %edx, %edi
1492 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1493 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
14941494 ; X32-NEXT: mull %esi
14951495 ; X32-NEXT: movl %edx, %esi
14961496 ; X32-NEXT: movl %eax, %ebx
14971497 ; X32-NEXT: addl %edi, %ebx
14981498 ; X32-NEXT: adcl $0, %esi
14991499 ; X32-NEXT: movl %ecx, %eax
1500 ; X32-NEXT: movl -92(%ebp), %edi # 4-byte Reload
1500 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
15011501 ; X32-NEXT: mull %edi
15021502 ; X32-NEXT: movl %edx, %ecx
15031503 ; X32-NEXT: addl %ebx, %eax
1504 ; X32-NEXT: movl %eax, -612(%ebp) # 4-byte Spill
1504 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
15051505 ; X32-NEXT: adcl %esi, %ecx
1506 ; X32-NEXT: setb -152(%ebp) # 1-byte Folded Spill
1507 ; X32-NEXT: movl -316(%ebp), %ebx # 4-byte Reload
1506 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1507 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
15081508 ; X32-NEXT: movl %ebx, %eax
15091509 ; X32-NEXT: mull %edi
15101510 ; X32-NEXT: addl %ecx, %eax
1511 ; X32-NEXT: movzbl -152(%ebp), %ecx # 1-byte Folded Reload
1512 ; X32-NEXT: adcl %ecx, %edx
1513 ; X32-NEXT: addl -32(%ebp), %eax # 4-byte Folded Reload
1514 ; X32-NEXT: adcl -424(%ebp), %edx # 4-byte Folded Reload
1515 ; X32-NEXT: addl -44(%ebp), %eax # 4-byte Folded Reload
1516 ; X32-NEXT: movl %eax, -152(%ebp) # 4-byte Spill
1517 ; X32-NEXT: adcl -68(%ebp), %edx # 4-byte Folded Reload
1518 ; X32-NEXT: movl %edx, -44(%ebp) # 4-byte Spill
1519 ; X32-NEXT: adcl $0, -20(%ebp) # 4-byte Folded Spill
1520 ; X32-NEXT: adcl $0, -36(%ebp) # 4-byte Folded Spill
1521 ; X32-NEXT: movl -416(%ebp), %esi # 4-byte Reload
1522 ; X32-NEXT: movl %esi, %eax
1523 ; X32-NEXT: movl -108(%ebp), %ecx # 4-byte Reload
1524 ; X32-NEXT: mull %ecx
1525 ; X32-NEXT: movl %edx, %edi
1526 ; X32-NEXT: movl %eax, -424(%ebp) # 4-byte Spill
1511 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1512 ; X32-NEXT: adcl %ecx, %edx
1513 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1514 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1515 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1516 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1517 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1518 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1519 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1520 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1521 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1522 ; X32-NEXT: movl %esi, %eax
1523 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1524 ; X32-NEXT: mull %ecx
1525 ; X32-NEXT: movl %edx, %edi
1526 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
15271527 ; X32-NEXT: movl %ebx, %eax
15281528 ; X32-NEXT: mull %ecx
15291529 ; X32-NEXT: movl %edx, %ebx
15311531 ; X32-NEXT: addl %edi, %ecx
15321532 ; X32-NEXT: adcl $0, %ebx
15331533 ; X32-NEXT: movl %esi, %eax
1534 ; X32-NEXT: movl -96(%ebp), %edi # 4-byte Reload
1534 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
15351535 ; X32-NEXT: mull %edi
15361536 ; X32-NEXT: movl %edx, %esi
15371537 ; X32-NEXT: addl %ecx, %eax
1538 ; X32-NEXT: movl %eax, -420(%ebp) # 4-byte Spill
1538 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
15391539 ; X32-NEXT: adcl %ebx, %esi
15401540 ; X32-NEXT: setb %cl
1541 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1541 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
15421542 ; X32-NEXT: mull %edi
15431543 ; X32-NEXT: addl %esi, %eax
15441544 ; X32-NEXT: movzbl %cl, %ecx
15451545 ; X32-NEXT: adcl %ecx, %edx
1546 ; X32-NEXT: movl -324(%ebp), %edi # 4-byte Reload
1547 ; X32-NEXT: addl -104(%ebp), %edi # 4-byte Folded Reload
1548 ; X32-NEXT: movl -400(%ebp), %ecx # 4-byte Reload
1549 ; X32-NEXT: adcl -156(%ebp), %ecx # 4-byte Folded Reload
1546 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1547 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1548 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1549 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
15501550 ; X32-NEXT: addl %eax, %edi
15511551 ; X32-NEXT: adcl %edx, %ecx
1552 ; X32-NEXT: movl -152(%ebp), %eax # 4-byte Reload
1553 ; X32-NEXT: addl %eax, -424(%ebp) # 4-byte Folded Spill
1554 ; X32-NEXT: movl -44(%ebp), %eax # 4-byte Reload
1555 ; X32-NEXT: adcl %eax, -420(%ebp) # 4-byte Folded Spill
1552 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1553 ; X32-NEXT: addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1554 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1555 ; X32-NEXT: adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
15561556 ; X32-NEXT: adcl $0, %edi
15571557 ; X32-NEXT: adcl $0, %ecx
1558 ; X32-NEXT: addl -20(%ebp), %edi # 4-byte Folded Reload
1559 ; X32-NEXT: adcl -36(%ebp), %ecx # 4-byte Folded Reload
1560 ; X32-NEXT: setb -68(%ebp) # 1-byte Folded Spill
1561 ; X32-NEXT: movl -352(%ebp), %eax # 4-byte Reload
1562 ; X32-NEXT: movl -108(%ebp), %esi # 4-byte Reload
1563 ; X32-NEXT: mull %esi
1564 ; X32-NEXT: movl %edx, -20(%ebp) # 4-byte Spill
1565 ; X32-NEXT: movl %eax, -36(%ebp) # 4-byte Spill
1566 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1558 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1559 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1560 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1561 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1562 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1563 ; X32-NEXT: mull %esi
1564 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1565 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1566 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
15671567 ; X32-NEXT: mull %esi
15681568 ; X32-NEXT: movl %eax, %ebx
1569 ; X32-NEXT: addl -20(%ebp), %ebx # 4-byte Folded Reload
1569 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
15701570 ; X32-NEXT: adcl $0, %edx
1571 ; X32-NEXT: movl %edx, -44(%ebp) # 4-byte Spill
1572 ; X32-NEXT: movl -352(%ebp), %eax # 4-byte Reload
1573 ; X32-NEXT: movl -96(%ebp), %esi # 4-byte Reload
1571 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1572 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1573 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
15741574 ; X32-NEXT: mull %esi
15751575 ; X32-NEXT: addl %ebx, %eax
1576 ; X32-NEXT: movl %eax, -20(%ebp) # 4-byte Spill
1577 ; X32-NEXT: adcl -44(%ebp), %edx # 4-byte Folded Reload
1576 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1577 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
15781578 ; X32-NEXT: movl %edx, %ebx
1579 ; X32-NEXT: setb -44(%ebp) # 1-byte Folded Spill
1580 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1579 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1580 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
15811581 ; X32-NEXT: mull %esi
15821582 ; X32-NEXT: addl %ebx, %eax
1583 ; X32-NEXT: movzbl -44(%ebp), %esi # 1-byte Folded Reload
1583 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
15841584 ; X32-NEXT: adcl %esi, %edx
1585 ; X32-NEXT: movl -364(%ebp), %ebx # 4-byte Reload
1586 ; X32-NEXT: addl -104(%ebp), %ebx # 4-byte Folded Reload
1587 ; X32-NEXT: movl -396(%ebp), %esi # 4-byte Reload
1588 ; X32-NEXT: adcl -156(%ebp), %esi # 4-byte Folded Reload
1585 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1586 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1587 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1588 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
15891589 ; X32-NEXT: addl %eax, %ebx
15901590 ; X32-NEXT: adcl %edx, %esi
1591 ; X32-NEXT: movl %esi, -44(%ebp) # 4-byte Spill
1592 ; X32-NEXT: movl -36(%ebp), %edx # 4-byte Reload
1591 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1592 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
15931593 ; X32-NEXT: addl %edi, %edx
1594 ; X32-NEXT: movl -20(%ebp), %esi # 4-byte Reload
1594 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
15951595 ; X32-NEXT: adcl %ecx, %esi
1596 ; X32-NEXT: movzbl -68(%ebp), %eax # 1-byte Folded Reload
1596 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
15971597 ; X32-NEXT: adcl %eax, %ebx
1598 ; X32-NEXT: movl -44(%ebp), %eax # 4-byte Reload
1598 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
15991599 ; X32-NEXT: adcl $0, %eax
1600 ; X32-NEXT: addl -32(%ebp), %edx # 4-byte Folded Reload
1601 ; X32-NEXT: adcl -196(%ebp), %esi # 4-byte Folded Reload
1602 ; X32-NEXT: adcl -504(%ebp), %ebx # 4-byte Folded Reload
1603 ; X32-NEXT: adcl -508(%ebp), %eax # 4-byte Folded Reload
1604 ; X32-NEXT: addl -24(%ebp), %edx # 4-byte Folded Reload
1605 ; X32-NEXT: movl %edx, -36(%ebp) # 4-byte Spill
1606 ; X32-NEXT: adcl -64(%ebp), %esi # 4-byte Folded Reload
1607 ; X32-NEXT: movl %esi, -20(%ebp) # 4-byte Spill
1608 ; X32-NEXT: adcl -48(%ebp), %ebx # 4-byte Folded Reload
1609 ; X32-NEXT: movl %ebx, -292(%ebp) # 4-byte Spill
1610 ; X32-NEXT: adcl -52(%ebp), %eax # 4-byte Folded Reload
1611 ; X32-NEXT: movl %eax, -44(%ebp) # 4-byte Spill
1612 ; X32-NEXT: adcl $0, -16(%ebp) # 4-byte Folded Spill
1613 ; X32-NEXT: adcl $0, -80(%ebp) # 4-byte Folded Spill
1614 ; X32-NEXT: adcl $0, -88(%ebp) # 4-byte Folded Spill
1615 ; X32-NEXT: adcl $0, -272(%ebp) # 4-byte Folded Spill
1616 ; X32-NEXT: movl -352(%ebp), %ecx # 4-byte Reload
1600 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1601 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1602 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1603 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1604 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1605 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1606 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1607 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1608 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1609 ; X32-NEXT: movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1610 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1611 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1612 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1613 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1614 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1615 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1616 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
16171617 ; X32-NEXT: movl %ecx, %eax
1618 ; X32-NEXT: movl -212(%ebp), %esi # 4-byte Reload
1619 ; X32-NEXT: mull %esi
1620 ; X32-NEXT: movl %edx, -52(%ebp) # 4-byte Spill
1621 ; X32-NEXT: movl %eax, -48(%ebp) # 4-byte Spill
1622 ; X32-NEXT: movl -120(%ebp), %edi # 4-byte Reload
1618 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1619 ; X32-NEXT: mull %esi
1620 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1621 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1622 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
16231623 ; X32-NEXT: movl %edi, %eax
16241624 ; X32-NEXT: mull %esi
16251625 ; X32-NEXT: movl %edx, %esi
16261626 ; X32-NEXT: movl %eax, %ebx
1627 ; X32-NEXT: addl -52(%ebp), %ebx # 4-byte Folded Reload
1627 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
16281628 ; X32-NEXT: adcl $0, %esi
16291629 ; X32-NEXT: movl %ecx, %eax
1630 ; X32-NEXT: mull -252(%ebp) # 4-byte Folded Reload
1630 ; X32-NEXT: mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
16311631 ; X32-NEXT: movl %edx, %ecx
16321632 ; X32-NEXT: addl %ebx, %eax
1633 ; X32-NEXT: movl %eax, -64(%ebp) # 4-byte Spill
1633 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
16341634 ; X32-NEXT: adcl %esi, %ecx
16351635 ; X32-NEXT: setb %bl
16361636 ; X32-NEXT: movl %edi, %eax
1637 ; X32-NEXT: movl -252(%ebp), %edi # 4-byte Reload
1637 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
16381638 ; X32-NEXT: mull %edi
16391639 ; X32-NEXT: addl %ecx, %eax
16401640 ; X32-NEXT: movzbl %bl, %ecx
16411641 ; X32-NEXT: adcl %ecx, %edx
1642 ; X32-NEXT: movl -364(%ebp), %ecx # 4-byte Reload
1643 ; X32-NEXT: addl -116(%ebp), %ecx # 4-byte Folded Reload
1644 ; X32-NEXT: movl -396(%ebp), %esi # 4-byte Reload
1645 ; X32-NEXT: adcl -84(%ebp), %esi # 4-byte Folded Reload
1642 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1643 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1644 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1645 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
16461646 ; X32-NEXT: addl %eax, %ecx
1647 ; X32-NEXT: movl %ecx, -24(%ebp) # 4-byte Spill
1647 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
16481648 ; X32-NEXT: adcl %edx, %esi
1649 ; X32-NEXT: movl %esi, -52(%ebp) # 4-byte Spill
1650 ; X32-NEXT: movl -416(%ebp), %ecx # 4-byte Reload
1649 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1650 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
16511651 ; X32-NEXT: movl %ecx, %eax
1652 ; X32-NEXT: movl -212(%ebp), %esi # 4-byte Reload
1653 ; X32-NEXT: mull %esi
1654 ; X32-NEXT: movl %edx, -68(%ebp) # 4-byte Spill
1655 ; X32-NEXT: movl %eax, -508(%ebp) # 4-byte Spill
1656 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1652 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1653 ; X32-NEXT: mull %esi
1654 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1655 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1656 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
16571657 ; X32-NEXT: mull %esi
16581658 ; X32-NEXT: movl %edx, %esi
16591659 ; X32-NEXT: movl %eax, %ebx
1660 ; X32-NEXT: addl -68(%ebp), %ebx # 4-byte Folded Reload
1660 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
16611661 ; X32-NEXT: adcl $0, %esi
16621662 ; X32-NEXT: movl %ecx, %eax
16631663 ; X32-NEXT: mull %edi
16641664 ; X32-NEXT: movl %edx, %ecx
16651665 ; X32-NEXT: addl %ebx, %eax
1666 ; X32-NEXT: movl %eax, -504(%ebp) # 4-byte Spill
1666 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
16671667 ; X32-NEXT: adcl %esi, %ecx
16681668 ; X32-NEXT: setb %bl
1669 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1669 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
16701670 ; X32-NEXT: mull %edi
16711671 ; X32-NEXT: addl %ecx, %eax
16721672 ; X32-NEXT: movzbl %bl, %ecx
16731673 ; X32-NEXT: adcl %ecx, %edx
1674 ; X32-NEXT: addl -296(%ebp), %eax # 4-byte Folded Reload
1675 ; X32-NEXT: adcl -768(%ebp), %edx # 4-byte Folded Reload
1676 ; X32-NEXT: addl -48(%ebp), %eax # 4-byte Folded Reload
1677 ; X32-NEXT: movl %eax, -372(%ebp) # 4-byte Spill
1678 ; X32-NEXT: adcl -64(%ebp), %edx # 4-byte Folded Reload
1679 ; X32-NEXT: movl %edx, -68(%ebp) # 4-byte Spill
1680 ; X32-NEXT: adcl $0, -24(%ebp) # 4-byte Folded Spill
1681 ; X32-NEXT: adcl $0, -52(%ebp) # 4-byte Folded Spill
1682 ; X32-NEXT: movl -416(%ebp), %esi # 4-byte Reload
1683 ; X32-NEXT: movl %esi, %eax
1684 ; X32-NEXT: movl -284(%ebp), %ecx # 4-byte Reload
1674 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1675 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1676 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1677 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1678 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1679 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1680 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1681 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1682 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1683 ; X32-NEXT: movl %esi, %eax
1684 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
16851685 ; X32-NEXT: mull %ecx
16861686 ; X32-NEXT: movl %edx, %ebx
1687 ; X32-NEXT: movl %eax, -152(%ebp) # 4-byte Spill
1688 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1687 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1688 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
16891689 ; X32-NEXT: mull %ecx
16901690 ; X32-NEXT: movl %edx, %edi
16911691 ; X32-NEXT: movl %eax, %ecx
16991699 ; X32-NEXT: movl %esi, -48(%ebp) # 4-byte Spill
17001700 ; X32-NEXT: movl %edx, %ebx
17011701 ; X32-NEXT: addl %ecx, %eax
1702 ; X32-NEXT: movl %eax, -64(%ebp) # 4-byte Spill
1702 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
17031703 ; X32-NEXT: adcl %edi, %ebx
17041704 ; X32-NEXT: setb %cl
1705 ; X32-NEXT: movl -316(%ebp), %eax # 4-byte Reload
1705 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
17061706 ; X32-NEXT: mull %esi
17071707 ; X32-NEXT: addl %ebx, %eax
17081708 ; X32-NEXT: movzbl %cl, %ecx
17091709 ; X32-NEXT: adcl %ecx, %edx
1710 ; X32-NEXT: movl -324(%ebp), %ebx # 4-byte Reload
1711 ; X32-NEXT: addl -308(%ebp), %ebx # 4-byte Folded Reload
1712 ; X32-NEXT: movl -400(%ebp), %ecx # 4-byte Reload
1713 ; X32-NEXT: adcl -208(%ebp), %ecx # 4-byte Folded Reload
1710 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1711 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1712 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1713 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
17141714 ; X32-NEXT: addl %eax, %ebx
17151715 ; X32-NEXT: adcl %edx, %ecx
1716 ; X32-NEXT: movl -372(%ebp), %eax # 4-byte Reload
1717 ; X32-NEXT: addl %eax, -152(%ebp) # 4-byte Folded Spill
1718 ; X32-NEXT: movl -64(%ebp), %eax # 4-byte Reload
1719 ; X32-NEXT: adcl -68(%ebp), %eax # 4-byte Folded Reload
1720 ; X32-NEXT: movl %eax, -64(%ebp) # 4-byte Spill
1716 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1717 ; X32-NEXT: addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1718 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1719 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1720 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
17211721 ; X32-NEXT: adcl $0, %ebx
17221722 ; X32-NEXT: adcl $0, %ecx
1723 ; X32-NEXT: addl -24(%ebp), %ebx # 4-byte Folded Reload
1724 ; X32-NEXT: adcl -52(%ebp), %ecx # 4-byte Folded Reload
1725 ; X32-NEXT: setb -372(%ebp) # 1-byte Folded Spill
1726 ; X32-NEXT: movl -352(%ebp), %eax # 4-byte Reload
1727 ; X32-NEXT: movl -284(%ebp), %esi # 4-byte Reload
1728 ; X32-NEXT: mull %esi
1729 ; X32-NEXT: movl %edx, -24(%ebp) # 4-byte Spill
1730 ; X32-NEXT: movl %eax, -52(%ebp) # 4-byte Spill
1731 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1723 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1724 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1725 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1726 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1727 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1728 ; X32-NEXT: mull %esi
1729 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1730 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1731 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
17321732 ; X32-NEXT: mull %esi
17331733 ; X32-NEXT: movl %eax, %edi
1734 ; X32-NEXT: addl -24(%ebp), %edi # 4-byte Folded Reload
1734 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
17351735 ; X32-NEXT: adcl $0, %edx
1736 ; X32-NEXT: movl %edx, -68(%ebp) # 4-byte Spill
1737 ; X32-NEXT: movl -352(%ebp), %eax # 4-byte Reload
1738 ; X32-NEXT: movl -48(%ebp), %esi # 4-byte Reload
1736 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1737 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1738 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
17391739 ; X32-NEXT: mull %esi
17401740 ; X32-NEXT: addl %edi, %eax
1741 ; X32-NEXT: movl %eax, -24(%ebp) # 4-byte Spill
1742 ; X32-NEXT: adcl -68(%ebp), %edx # 4-byte Folded Reload
1743 ; X32-NEXT: movl %edx, %edi
1744 ; X32-NEXT: setb -68(%ebp) # 1-byte Folded Spill
1745 ; X32-NEXT: movl -120(%ebp), %eax # 4-byte Reload
1741 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1742 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1743 ; X32-NEXT: movl %edx, %edi
1744 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1745 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
17461746 ; X32-NEXT: mull %esi
17471747 ; X32-NEXT: addl %edi, %eax
1748 ; X32-NEXT: movzbl -68(%ebp), %esi # 1-byte Folded Reload
1748 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
17491749 ; X32-NEXT: adcl %esi, %edx
1750 ; X32-NEXT: movl -364(%ebp), %edi # 4-byte Reload
1751 ; X32-NEXT: addl -308(%ebp), %edi # 4-byte Folded Reload
1752 ; X32-NEXT: movl -396(%ebp), %esi # 4-byte Reload
1753 ; X32-NEXT: adcl -208(%ebp), %esi # 4-byte Folded Reload
1750 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1751 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1752 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1753 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
17541754 ; X32-NEXT: addl %eax, %edi
17551755 ; X32-NEXT: adcl %edx, %esi
1756 ; X32-NEXT: movl %esi, -68(%ebp) # 4-byte Spill
1757 ; X32-NEXT: movl -52(%ebp), %edx # 4-byte Reload
1756 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1757 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
17581758 ; X32-NEXT: addl %ebx, %edx
1759 ; X32-NEXT: movl -24(%ebp), %esi # 4-byte Reload
1759 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
17601760 ; X32-NEXT: adcl %ecx, %esi
1761 ; X32-NEXT: movzbl -372(%ebp), %eax # 1-byte Folded Reload
1761 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
17621762 ; X32-NEXT: adcl %eax, %edi
1763 ; X32-NEXT: movl -68(%ebp), %eax # 4-byte Reload
1763 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
17641764 ; X32-NEXT: adcl $0, %eax
1765 ; X32-NEXT: addl -296(%ebp), %edx # 4-byte Folded Reload
1766 ; X32-NEXT: adcl -776(%ebp), %esi # 4-byte Folded Reload
1767 ; X32-NEXT: adcl -772(%ebp), %edi # 4-byte Folded Reload
1768 ; X32-NEXT: adcl -780(%ebp), %eax # 4-byte Folded Reload
1769 ; X32-NEXT: movl -36(%ebp), %ecx # 4-byte Reload
1770 ; X32-NEXT: addl %ecx, -508(%ebp) # 4-byte Folded Spill
1771 ; X32-NEXT: movl -20(%ebp), %ecx # 4-byte Reload
1772 ; X32-NEXT: adcl %ecx, -504(%ebp) # 4-byte Folded Spill
1773 ; X32-NEXT: movl -292(%ebp), %ecx # 4-byte Reload
1774 ; X32-NEXT: adcl %ecx, -152(%ebp) # 4-byte Folded Spill
1775 ; X32-NEXT: movl -44(%ebp), %ecx # 4-byte Reload
1776 ; X32-NEXT: adcl %ecx, -64(%ebp) # 4-byte Folded Spill
1765 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1766 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1767 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1768 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1769 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1770 ; X32-NEXT: addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1771 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1772 ; X32-NEXT: adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1773 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1774 ; X32-NEXT: adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1775 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1776 ; X32-NEXT: adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
17771777 ; X32-NEXT: adcl $0, %edx
17781778 ; X32-NEXT: adcl $0, %esi
17791779 ; X32-NEXT: adcl $0, %edi
17801780 ; X32-NEXT: adcl $0, %eax
1781 ; X32-NEXT: addl -16(%ebp), %edx # 4-byte Folded Reload
1782 ; X32-NEXT: movl %edx, -52(%ebp) # 4-byte Spill
1783 ; X32-NEXT: adcl -80(%ebp), %esi # 4-byte Folded Reload
1784 ; X32-NEXT: movl %esi, -24(%ebp) # 4-byte Spill
1785 ; X32-NEXT: adcl -88(%ebp), %edi # 4-byte Folded Reload
1786 ; X32-NEXT: movl %edi, -44(%ebp) # 4-byte Spill
1787 ; X32-NEXT: adcl -272(%ebp), %eax # 4-byte Folded Reload
1788 ; X32-NEXT: movl %eax, -68(%ebp) # 4-byte Spill
1789 ; X32-NEXT: setb -20(%ebp) # 1-byte Folded Spill
1790 ; X32-NEXT: movl -408(%ebp), %ebx # 4-byte Reload
1781 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1782 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1783 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1784 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1785 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1786 ; X32-NEXT: movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1787 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1788 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1789 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1790 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
17911791 ; X32-NEXT: movl %ebx, %eax
1792 ; X32-NEXT: movl -212(%ebp), %esi # 4-byte Reload
1793 ; X32-NEXT: mull %esi
1794 ; X32-NEXT: movl %edx, %ecx
1795 ; X32-NEXT: movl %eax, -36(%ebp) # 4-byte Spill
1796 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1792 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1793 ; X32-NEXT: mull %esi
1794 ; X32-NEXT: movl %edx, %ecx
1795 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1796 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
17971797 ; X32-NEXT: mull %esi
17981798 ; X32-NEXT: movl %edx, %esi
17991799 ; X32-NEXT: movl %eax, %edi
18001800 ; X32-NEXT: addl %ecx, %edi
18011801 ; X32-NEXT: adcl $0, %esi
18021802 ; X32-NEXT: movl %ebx, %eax
1803 ; X32-NEXT: movl -252(%ebp), %ebx # 4-byte Reload
1803 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
18041804 ; X32-NEXT: mull %ebx
18051805 ; X32-NEXT: movl %edx, %ecx
18061806 ; X32-NEXT: addl %edi, %eax
1807 ; X32-NEXT: movl %eax, -272(%ebp) # 4-byte Spill
1807 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18081808 ; X32-NEXT: adcl %esi, %ecx
1809 ; X32-NEXT: setb -16(%ebp) # 1-byte Folded Spill
1810 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1809 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1810 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
18111811 ; X32-NEXT: mull %ebx
18121812 ; X32-NEXT: addl %ecx, %eax
1813 ; X32-NEXT: movzbl -16(%ebp), %ecx # 1-byte Folded Reload
1814 ; X32-NEXT: adcl %ecx, %edx
1815 ; X32-NEXT: movl -392(%ebp), %ecx # 4-byte Reload
1816 ; X32-NEXT: addl -116(%ebp), %ecx # 4-byte Folded Reload
1817 ; X32-NEXT: movl -412(%ebp), %esi # 4-byte Reload
1818 ; X32-NEXT: adcl -84(%ebp), %esi # 4-byte Folded Reload
1813 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1814 ; X32-NEXT: adcl %ecx, %edx
1815 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1816 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1817 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1818 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
18191819 ; X32-NEXT: addl %eax, %ecx
1820 ; X32-NEXT: movl %ecx, -80(%ebp) # 4-byte Spill
1820 ; X32-NEXT: movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18211821 ; X32-NEXT: adcl %edx, %esi
1822 ; X32-NEXT: movl %esi, -16(%ebp) # 4-byte Spill
1823 ; X32-NEXT: movl -440(%ebp), %ebx # 4-byte Reload
1822 ; X32-NEXT: movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1823 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
18241824 ; X32-NEXT: movl %ebx, %eax
1825 ; X32-NEXT: movl -212(%ebp), %esi # 4-byte Reload
1826 ; X32-NEXT: mull %esi
1827 ; X32-NEXT: movl %edx, %ecx
1828 ; X32-NEXT: movl %eax, -292(%ebp) # 4-byte Spill
1829 ; X32-NEXT: movl -340(%ebp), %eax # 4-byte Reload
1825 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1826 ; X32-NEXT: mull %esi
1827 ; X32-NEXT: movl %edx, %ecx
1828 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1829 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
18301830 ; X32-NEXT: mull %esi
18311831 ; X32-NEXT: movl %edx, %esi
18321832 ; X32-NEXT: movl %eax, %edi
18331833 ; X32-NEXT: addl %ecx, %edi
18341834 ; X32-NEXT: adcl $0, %esi
18351835 ; X32-NEXT: movl %ebx, %eax
1836 ; X32-NEXT: movl -252(%ebp), %ebx # 4-byte Reload
1836 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
18371837 ; X32-NEXT: mull %ebx
18381838 ; X32-NEXT: movl %edx, %ecx
18391839 ; X32-NEXT: addl %edi, %eax
1840 ; X32-NEXT: movl %eax, -372(%ebp) # 4-byte Spill
1840 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18411841 ; X32-NEXT: adcl %esi, %ecx
1842 ; X32-NEXT: setb -88(%ebp) # 1-byte Folded Spill
1843 ; X32-NEXT: movl -340(%ebp), %edi # 4-byte Reload
1842 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1843 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
18441844 ; X32-NEXT: movl %edi, %eax
18451845 ; X32-NEXT: mull %ebx
18461846 ; X32-NEXT: addl %ecx, %eax
1847 ; X32-NEXT: movzbl -88(%ebp), %ecx # 1-byte Folded Reload
1848 ; X32-NEXT: adcl %ecx, %edx
1849 ; X32-NEXT: addl -332(%ebp), %eax # 4-byte Folded Reload
1850 ; X32-NEXT: adcl -448(%ebp), %edx # 4-byte Folded Reload
1851 ; X32-NEXT: addl -36(%ebp), %eax # 4-byte Folded Reload
1852 ; X32-NEXT: movl %eax, -448(%ebp) # 4-byte Spill
1853 ; X32-NEXT: adcl -272(%ebp), %edx # 4-byte Folded Reload
1854 ; X32-NEXT: movl %edx, -36(%ebp) # 4-byte Spill
1855 ; X32-NEXT: adcl $0, -80(%ebp) # 4-byte Folded Spill
1856 ; X32-NEXT: adcl $0, -16(%ebp) # 4-byte Folded Spill
1857 ; X32-NEXT: movl -440(%ebp), %esi # 4-byte Reload
1858 ; X32-NEXT: movl %esi, %eax
1859 ; X32-NEXT: movl -284(%ebp), %ecx # 4-byte Reload
1847 ; X32-NEXT: movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1848 ; X32-NEXT: adcl %ecx, %edx
1849 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1850 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1851 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1852 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1853 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1854 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1855 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1856 ; X32-NEXT: adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1857 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1858 ; X32-NEXT: movl %esi, %eax
1859 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
18601860 ; X32-NEXT: mull %ecx
18611861 ; X32-NEXT: movl %edx, %ebx
1862 ; X32-NEXT: movl %eax, -88(%ebp) # 4-byte Spill
1862 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18631863 ; X32-NEXT: movl %edi, %eax
18641864 ; X32-NEXT: mull %ecx
18651865 ; X32-NEXT: movl %edx, %edi
18671867 ; X32-NEXT: addl %ebx, %ecx
18681868 ; X32-NEXT: adcl $0, %edi
18691869 ; X32-NEXT: movl %esi, %eax
1870 ; X32-NEXT: movl -48(%ebp), %ebx # 4-byte Reload
1870 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
18711871 ; X32-NEXT: mull %ebx
18721872 ; X32-NEXT: movl %edx, %esi
18731873 ; X32-NEXT: addl %ecx, %eax
1874 ; X32-NEXT: movl %eax, -296(%ebp) # 4-byte Spill
1874 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18751875 ; X32-NEXT: adcl %edi, %esi
18761876 ; X32-NEXT: setb %cl
1877 ; X32-NEXT: movl -340(%ebp), %eax # 4-byte Reload
1877 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
18781878 ; X32-NEXT: mull %ebx
18791879 ; X32-NEXT: addl %esi, %eax
18801880 ; X32-NEXT: movzbl %cl, %ecx
18811881 ; X32-NEXT: adcl %ecx, %edx
1882 ; X32-NEXT: movl -132(%ebp), %ebx # 4-byte Reload
1883 ; X32-NEXT: addl -308(%ebp), %ebx # 4-byte Folded Reload
1884 ; X32-NEXT: movl -140(%ebp), %ecx # 4-byte Reload
1885 ; X32-NEXT: adcl -208(%ebp), %ecx # 4-byte Folded Reload
1882 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1883 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1884 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1885 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
18861886 ; X32-NEXT: addl %eax, %ebx
18871887 ; X32-NEXT: adcl %edx, %ecx
1888 ; X32-NEXT: movl -448(%ebp), %eax # 4-byte Reload
1889 ; X32-NEXT: addl %eax, -88(%ebp) # 4-byte Folded Spill
1890 ; X32-NEXT: movl -36(%ebp), %eax # 4-byte Reload
1891 ; X32-NEXT: adcl %eax, -296(%ebp) # 4-byte Folded Spill
1888 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1889 ; X32-NEXT: addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1890 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1891 ; X32-NEXT: adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
18921892 ; X32-NEXT: adcl $0, %ebx
18931893 ; X32-NEXT: adcl $0, %ecx
1894 ; X32-NEXT: addl -80(%ebp), %ebx # 4-byte Folded Reload
1895 ; X32-NEXT: adcl -16(%ebp), %ecx # 4-byte Folded Reload
1896 ; X32-NEXT: setb -16(%ebp) # 1-byte Folded Spill
1897 ; X32-NEXT: movl -408(%ebp), %eax # 4-byte Reload
1898 ; X32-NEXT: movl -284(%ebp), %esi # 4-byte Reload
1899 ; X32-NEXT: mull %esi
1900 ; X32-NEXT: movl %edx, -80(%ebp) # 4-byte Spill
1901 ; X32-NEXT: movl %eax, -272(%ebp) # 4-byte Spill
1902 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1894 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1895 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1896 ; X32-NEXT: setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1897 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1898 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1899 ; X32-NEXT: mull %esi
1900 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1901 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1902 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
19031903 ; X32-NEXT: mull %esi
19041904 ; X32-NEXT: movl %eax, %edi
1905 ; X32-NEXT: addl -80(%ebp), %edi # 4-byte Folded Reload
1905 ; X32-NEXT: addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
19061906 ; X32-NEXT: adcl $0, %edx
1907 ; X32-NEXT: movl %edx, -80(%ebp) # 4-byte Spill
1908 ; X32-NEXT: movl -408(%ebp), %eax # 4-byte Reload
1909 ; X32-NEXT: movl -48(%ebp), %esi # 4-byte Reload
1907 ; X32-NEXT: movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1908 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1909 ; X32-NEXT: movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
19101910 ; X32-NEXT: mull %esi
19111911 ; X32-NEXT: addl %edi, %eax
1912 ; X32-NEXT: movl %eax, -36(%ebp) # 4-byte Spill
1913 ; X32-NEXT: adcl -80(%ebp), %edx # 4-byte Folded Reload
1914 ; X32-NEXT: movl %edx, %edi
1915 ; X32-NEXT: setb -80(%ebp) # 1-byte Folded Spill
1916 ; X32-NEXT: movl -192(%ebp), %eax # 4-byte Reload
1912 ; X32-NEXT: movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1913 ; X32-NEXT: adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload