[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / X86 / mul-i1024.ll
blob96c0543433bda06a4b4d3ca649b8d1777fbbd2be
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc < %s -mtriple=i386-unknown | FileCheck %s --check-prefix=X32
3 ; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefix=X64
5 define void @test_1024(i1024* %a, i1024* %b, i1024* %out) nounwind {
6 ; X32-LABEL: test_1024:
7 ; X32:       # %bb.0:
8 ; X32-NEXT:    pushl %ebp
9 ; X32-NEXT:    pushl %ebx
10 ; X32-NEXT:    pushl %edi
11 ; X32-NEXT:    pushl %esi
12 ; X32-NEXT:    subl $400, %esp # imm = 0x190
13 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
14 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
15 ; X32-NEXT:    movl 60(%ecx), %esi
16 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
17 ; X32-NEXT:    movl 56(%ecx), %edi
18 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
19 ; X32-NEXT:    movl (%eax), %ebp
20 ; X32-NEXT:    movl %edi, %eax
21 ; X32-NEXT:    mull %ebp
22 ; X32-NEXT:    movl %edx, %ecx
23 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
24 ; X32-NEXT:    movl %esi, %eax
25 ; X32-NEXT:    mull %ebp
26 ; X32-NEXT:    movl %edx, %esi
27 ; X32-NEXT:    movl %eax, %ebx
28 ; X32-NEXT:    addl %ecx, %ebx
29 ; X32-NEXT:    adcl $0, %esi
30 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
31 ; X32-NEXT:    movl 4(%eax), %ecx
32 ; X32-NEXT:    movl %edi, %eax
33 ; X32-NEXT:    mull %ecx
34 ; X32-NEXT:    movl %ecx, %edi
35 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
36 ; X32-NEXT:    movl %edx, %ecx
37 ; X32-NEXT:    addl %ebx, %eax
38 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
39 ; X32-NEXT:    adcl %esi, %ecx
40 ; X32-NEXT:    setb %bl
41 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
42 ; X32-NEXT:    mull %edi
43 ; X32-NEXT:    addl %ecx, %eax
44 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
45 ; X32-NEXT:    movzbl %bl, %eax
46 ; X32-NEXT:    adcl %eax, %edx
47 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
48 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %edi
49 ; X32-NEXT:    movl 48(%edi), %esi
50 ; X32-NEXT:    movl %esi, %eax
51 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
52 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
53 ; X32-NEXT:    mull %ebp
54 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
55 ; X32-NEXT:    movl %edx, %ecx
56 ; X32-NEXT:    movl 52(%edi), %eax
57 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
58 ; X32-NEXT:    mull %ebp
59 ; X32-NEXT:    movl %edx, %ebx
60 ; X32-NEXT:    movl %eax, %edi
61 ; X32-NEXT:    addl %ecx, %edi
62 ; X32-NEXT:    adcl $0, %ebx
63 ; X32-NEXT:    movl %esi, %eax
64 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
65 ; X32-NEXT:    mull %ecx
66 ; X32-NEXT:    movl %edx, %ebp
67 ; X32-NEXT:    addl %edi, %eax
68 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
69 ; X32-NEXT:    adcl %ebx, %ebp
70 ; X32-NEXT:    setb %bl
71 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
72 ; X32-NEXT:    movl %esi, %eax
73 ; X32-NEXT:    mull %ecx
74 ; X32-NEXT:    movl %eax, %ecx
75 ; X32-NEXT:    addl %ebp, %ecx
76 ; X32-NEXT:    movzbl %bl, %eax
77 ; X32-NEXT:    adcl %eax, %edx
78 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
79 ; X32-NEXT:    adcl (%esp), %edx # 4-byte Folded Reload
80 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
81 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
82 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
83 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
84 ; X32-NEXT:    movl 8(%eax), %ebp
85 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
86 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
87 ; X32-NEXT:    movl %ebx, %eax
88 ; X32-NEXT:    mull %ebp
89 ; X32-NEXT:    movl %edx, %edi
90 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
91 ; X32-NEXT:    movl %esi, %eax
92 ; X32-NEXT:    mull %ebp
93 ; X32-NEXT:    movl %edx, %ebp
94 ; X32-NEXT:    movl %eax, %esi
95 ; X32-NEXT:    addl %edi, %esi
96 ; X32-NEXT:    adcl $0, %ebp
97 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
98 ; X32-NEXT:    movl 12(%eax), %edi
99 ; X32-NEXT:    movl %ebx, %eax
100 ; X32-NEXT:    mull %edi
101 ; X32-NEXT:    movl %edx, %ebx
102 ; X32-NEXT:    addl %esi, %eax
103 ; X32-NEXT:    movl %eax, %esi
104 ; X32-NEXT:    adcl %ebp, %ebx
105 ; X32-NEXT:    setb (%esp) # 1-byte Folded Spill
106 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
107 ; X32-NEXT:    mull %edi
108 ; X32-NEXT:    movl %edi, %ebp
109 ; X32-NEXT:    movl %eax, %edi
110 ; X32-NEXT:    addl %ebx, %edi
111 ; X32-NEXT:    movzbl (%esp), %eax # 1-byte Folded Reload
112 ; X32-NEXT:    adcl %eax, %edx
113 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
114 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
115 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
116 ; X32-NEXT:    adcl $0, %edi
117 ; X32-NEXT:    adcl $0, %edx
118 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
119 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
120 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
121 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
122 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
123 ; X32-NEXT:    movl %ecx, %eax
124 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
125 ; X32-NEXT:    mull %esi
126 ; X32-NEXT:    movl %edx, (%esp) # 4-byte Spill
127 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
128 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
129 ; X32-NEXT:    mull %esi
130 ; X32-NEXT:    movl %edx, %esi
131 ; X32-NEXT:    movl %eax, %ebx
132 ; X32-NEXT:    addl (%esp), %ebx # 4-byte Folded Reload
133 ; X32-NEXT:    adcl $0, %esi
134 ; X32-NEXT:    movl %ecx, %eax
135 ; X32-NEXT:    movl %ebp, %ecx
136 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
137 ; X32-NEXT:    mull %ebp
138 ; X32-NEXT:    movl %edx, %ebp
139 ; X32-NEXT:    addl %ebx, %eax
140 ; X32-NEXT:    movl %eax, %ebx
141 ; X32-NEXT:    adcl %esi, %ebp
142 ; X32-NEXT:    setb (%esp) # 1-byte Folded Spill
143 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
144 ; X32-NEXT:    mull %ecx
145 ; X32-NEXT:    addl %ebp, %eax
146 ; X32-NEXT:    movzbl (%esp), %ecx # 1-byte Folded Reload
147 ; X32-NEXT:    adcl %ecx, %edx
148 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
149 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
150 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
151 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
152 ; X32-NEXT:    adcl %ecx, %eax
153 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
154 ; X32-NEXT:    adcl $0, %edx
155 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
156 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
157 ; X32-NEXT:    movl 40(%esi), %edi
158 ; X32-NEXT:    movl %edi, %eax
159 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
160 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
161 ; X32-NEXT:    mull %ebx
162 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
163 ; X32-NEXT:    movl %edx, %ecx
164 ; X32-NEXT:    movl 44(%esi), %ebp
165 ; X32-NEXT:    movl %ebp, %eax
166 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
167 ; X32-NEXT:    mull %ebx
168 ; X32-NEXT:    movl %edx, %esi
169 ; X32-NEXT:    movl %eax, %ebx
170 ; X32-NEXT:    addl %ecx, %ebx
171 ; X32-NEXT:    adcl $0, %esi
172 ; X32-NEXT:    movl %edi, %eax
173 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
174 ; X32-NEXT:    mull %edi
175 ; X32-NEXT:    movl %edx, %ecx
176 ; X32-NEXT:    addl %ebx, %eax
177 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
178 ; X32-NEXT:    adcl %esi, %ecx
179 ; X32-NEXT:    setb %bl
180 ; X32-NEXT:    movl %ebp, %eax
181 ; X32-NEXT:    mull %edi
182 ; X32-NEXT:    addl %ecx, %eax
183 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
184 ; X32-NEXT:    movzbl %bl, %eax
185 ; X32-NEXT:    adcl %eax, %edx
186 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
187 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ebp
188 ; X32-NEXT:    movl 32(%ebp), %edi
189 ; X32-NEXT:    movl %edi, %eax
190 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
191 ; X32-NEXT:    mull %esi
192 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
193 ; X32-NEXT:    movl %edx, %ecx
194 ; X32-NEXT:    movl 36(%ebp), %eax
195 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
196 ; X32-NEXT:    mull %esi
197 ; X32-NEXT:    movl %edx, %ebx
198 ; X32-NEXT:    movl %eax, %ebp
199 ; X32-NEXT:    addl %ecx, %ebp
200 ; X32-NEXT:    adcl $0, %ebx
201 ; X32-NEXT:    movl %edi, %esi
202 ; X32-NEXT:    movl %edi, %eax
203 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
204 ; X32-NEXT:    mull %ecx
205 ; X32-NEXT:    movl %edx, %edi
206 ; X32-NEXT:    addl %ebp, %eax
207 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
208 ; X32-NEXT:    adcl %ebx, %edi
209 ; X32-NEXT:    setb %bl
210 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
211 ; X32-NEXT:    movl %ebp, %eax
212 ; X32-NEXT:    mull %ecx
213 ; X32-NEXT:    movl %eax, %ecx
214 ; X32-NEXT:    addl %edi, %ecx
215 ; X32-NEXT:    movzbl %bl, %eax
216 ; X32-NEXT:    adcl %eax, %edx
217 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
218 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
219 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
220 ; X32-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
221 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
222 ; X32-NEXT:    movl %esi, %ebx
223 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
224 ; X32-NEXT:    movl %esi, %eax
225 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
226 ; X32-NEXT:    mull %esi
227 ; X32-NEXT:    movl %edx, %edi
228 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
229 ; X32-NEXT:    movl %ebp, %eax
230 ; X32-NEXT:    mull %esi
231 ; X32-NEXT:    movl %edx, %ebp
232 ; X32-NEXT:    movl %eax, %esi
233 ; X32-NEXT:    addl %edi, %esi
234 ; X32-NEXT:    adcl $0, %ebp
235 ; X32-NEXT:    movl %ebx, %eax
236 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
237 ; X32-NEXT:    mull %edi
238 ; X32-NEXT:    movl %edx, %ebx
239 ; X32-NEXT:    addl %esi, %eax
240 ; X32-NEXT:    movl %eax, %esi
241 ; X32-NEXT:    adcl %ebp, %ebx
242 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
243 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
244 ; X32-NEXT:    mull %edi
245 ; X32-NEXT:    movl %eax, %edi
246 ; X32-NEXT:    addl %ebx, %edi
247 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
248 ; X32-NEXT:    adcl %eax, %edx
249 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
250 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
251 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
252 ; X32-NEXT:    adcl $0, %edi
253 ; X32-NEXT:    adcl $0, %edx
254 ; X32-NEXT:    addl (%esp), %edi # 4-byte Folded Reload
255 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
256 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
257 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
258 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
259 ; X32-NEXT:    movl %ebp, %eax
260 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
261 ; X32-NEXT:    mull %esi
262 ; X32-NEXT:    movl %edx, %ecx
263 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
264 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
265 ; X32-NEXT:    mull %esi
266 ; X32-NEXT:    movl %edx, %esi
267 ; X32-NEXT:    movl %eax, %ebx
268 ; X32-NEXT:    addl %ecx, %ebx
269 ; X32-NEXT:    adcl $0, %esi
270 ; X32-NEXT:    movl %ebp, %eax
271 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
272 ; X32-NEXT:    mull %ebp
273 ; X32-NEXT:    movl %edx, %ecx
274 ; X32-NEXT:    addl %ebx, %eax
275 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
276 ; X32-NEXT:    adcl %esi, %ecx
277 ; X32-NEXT:    setb %bl
278 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
279 ; X32-NEXT:    mull %ebp
280 ; X32-NEXT:    addl %ecx, %eax
281 ; X32-NEXT:    movzbl %bl, %ecx
282 ; X32-NEXT:    adcl %ecx, %edx
283 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
284 ; X32-NEXT:    addl %edi, %ecx
285 ; X32-NEXT:    movl (%esp), %esi # 4-byte Reload
286 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
287 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
288 ; X32-NEXT:    adcl %edi, %eax
289 ; X32-NEXT:    adcl $0, %edx
290 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
291 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
292 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
293 ; X32-NEXT:    movl %esi, (%esp) # 4-byte Spill
294 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
295 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
296 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
297 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
298 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
299 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
300 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
301 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
302 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
303 ; X32-NEXT:    movl 16(%eax), %edi
304 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
305 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
306 ; X32-NEXT:    movl %esi, %eax
307 ; X32-NEXT:    mull %edi
308 ; X32-NEXT:    movl %edx, %ebp
309 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
310 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
311 ; X32-NEXT:    movl %ecx, %eax
312 ; X32-NEXT:    mull %edi
313 ; X32-NEXT:    movl %edx, %edi
314 ; X32-NEXT:    movl %eax, %ebx
315 ; X32-NEXT:    addl %ebp, %ebx
316 ; X32-NEXT:    adcl $0, %edi
317 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
318 ; X32-NEXT:    movl 20(%eax), %edx
319 ; X32-NEXT:    movl %esi, %eax
320 ; X32-NEXT:    movl %edx, %esi
321 ; X32-NEXT:    mull %edx
322 ; X32-NEXT:    movl %edx, %ebp
323 ; X32-NEXT:    addl %ebx, %eax
324 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
325 ; X32-NEXT:    adcl %edi, %ebp
326 ; X32-NEXT:    setb %bl
327 ; X32-NEXT:    movl %ecx, %eax
328 ; X32-NEXT:    mull %esi
329 ; X32-NEXT:    movl %esi, %edi
330 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
331 ; X32-NEXT:    addl %ebp, %eax
332 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
333 ; X32-NEXT:    movzbl %bl, %eax
334 ; X32-NEXT:    adcl %eax, %edx
335 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
336 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
337 ; X32-NEXT:    movl %ecx, %eax
338 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
339 ; X32-NEXT:    mull %esi
340 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
341 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
342 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
343 ; X32-NEXT:    movl %ebx, %eax
344 ; X32-NEXT:    mull %esi
345 ; X32-NEXT:    movl %edx, %ebp
346 ; X32-NEXT:    movl %eax, %esi
347 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
348 ; X32-NEXT:    adcl $0, %ebp
349 ; X32-NEXT:    movl %ecx, %eax
350 ; X32-NEXT:    mull %edi
351 ; X32-NEXT:    movl %edx, %ecx
352 ; X32-NEXT:    addl %esi, %eax
353 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
354 ; X32-NEXT:    adcl %ebp, %ecx
355 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
356 ; X32-NEXT:    movl %ebx, %esi
357 ; X32-NEXT:    movl %ebx, %eax
358 ; X32-NEXT:    mull %edi
359 ; X32-NEXT:    movl %eax, %edi
360 ; X32-NEXT:    addl %ecx, %edi
361 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
362 ; X32-NEXT:    adcl %eax, %edx
363 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
364 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
365 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
366 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
367 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
368 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
369 ; X32-NEXT:    movl 24(%eax), %ebx
370 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
371 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
372 ; X32-NEXT:    movl %ebp, %eax
373 ; X32-NEXT:    mull %ebx
374 ; X32-NEXT:    movl %edx, %ecx
375 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
376 ; X32-NEXT:    movl %esi, %eax
377 ; X32-NEXT:    mull %ebx
378 ; X32-NEXT:    movl %edx, %esi
379 ; X32-NEXT:    movl %eax, %ebx
380 ; X32-NEXT:    addl %ecx, %ebx
381 ; X32-NEXT:    adcl $0, %esi
382 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
383 ; X32-NEXT:    movl 28(%eax), %ecx
384 ; X32-NEXT:    movl %ebp, %eax
385 ; X32-NEXT:    mull %ecx
386 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
387 ; X32-NEXT:    movl %edx, %ebp
388 ; X32-NEXT:    addl %ebx, %eax
389 ; X32-NEXT:    movl %eax, %ebx
390 ; X32-NEXT:    adcl %esi, %ebp
391 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
392 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
393 ; X32-NEXT:    mull %ecx
394 ; X32-NEXT:    movl %eax, %esi
395 ; X32-NEXT:    addl %ebp, %esi
396 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
397 ; X32-NEXT:    adcl %eax, %edx
398 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
399 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
400 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
401 ; X32-NEXT:    adcl $0, %esi
402 ; X32-NEXT:    adcl $0, %edx
403 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
404 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
405 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
406 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
407 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
408 ; X32-NEXT:    movl %edi, %eax
409 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
410 ; X32-NEXT:    mull %ecx
411 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
412 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
413 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
414 ; X32-NEXT:    mull %ecx
415 ; X32-NEXT:    movl %edx, %ebx
416 ; X32-NEXT:    movl %eax, %ebp
417 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
418 ; X32-NEXT:    adcl $0, %ebx
419 ; X32-NEXT:    movl %edi, %eax
420 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
421 ; X32-NEXT:    mull %ecx
422 ; X32-NEXT:    movl %edx, %edi
423 ; X32-NEXT:    addl %ebp, %eax
424 ; X32-NEXT:    movl %eax, %ebp
425 ; X32-NEXT:    adcl %ebx, %edi
426 ; X32-NEXT:    setb %bl
427 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
428 ; X32-NEXT:    mull %ecx
429 ; X32-NEXT:    addl %edi, %eax
430 ; X32-NEXT:    movzbl %bl, %edi
431 ; X32-NEXT:    adcl %edi, %edx
432 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
433 ; X32-NEXT:    addl %esi, %edi
434 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
435 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
436 ; X32-NEXT:    adcl %ecx, %eax
437 ; X32-NEXT:    adcl $0, %edx
438 ; X32-NEXT:    movl %edx, %esi
439 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
440 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
441 ; X32-NEXT:    movl (%esp), %ecx # 4-byte Reload
442 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
443 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
444 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
445 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
446 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
447 ; X32-NEXT:    movl %edi, %edx
448 ; X32-NEXT:    adcl $0, %edx
449 ; X32-NEXT:    movl %ebp, %ecx
450 ; X32-NEXT:    adcl $0, %ecx
451 ; X32-NEXT:    adcl $0, %eax
452 ; X32-NEXT:    adcl $0, %esi
453 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
454 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
455 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
456 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
457 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
458 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
459 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
460 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
461 ; X32-NEXT:    setb (%esp) # 1-byte Folded Spill
462 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
463 ; X32-NEXT:    movl %ebp, %eax
464 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
465 ; X32-NEXT:    mull %esi
466 ; X32-NEXT:    movl %edx, %ecx
467 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
468 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
469 ; X32-NEXT:    movl %edi, %eax
470 ; X32-NEXT:    mull %esi
471 ; X32-NEXT:    movl %edx, %esi
472 ; X32-NEXT:    movl %eax, %ebx
473 ; X32-NEXT:    addl %ecx, %ebx
474 ; X32-NEXT:    adcl $0, %esi
475 ; X32-NEXT:    movl %ebp, %eax
476 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
477 ; X32-NEXT:    mull %ebp
478 ; X32-NEXT:    movl %edx, %ecx
479 ; X32-NEXT:    addl %ebx, %eax
480 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
481 ; X32-NEXT:    adcl %esi, %ecx
482 ; X32-NEXT:    setb %bl
483 ; X32-NEXT:    movl %edi, %eax
484 ; X32-NEXT:    mull %ebp
485 ; X32-NEXT:    addl %ecx, %eax
486 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
487 ; X32-NEXT:    movzbl %bl, %eax
488 ; X32-NEXT:    adcl %eax, %edx
489 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
490 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
491 ; X32-NEXT:    movl %ecx, %eax
492 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
493 ; X32-NEXT:    mull %edi
494 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
495 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
496 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
497 ; X32-NEXT:    movl %esi, %eax
498 ; X32-NEXT:    mull %edi
499 ; X32-NEXT:    movl %edx, %ebx
500 ; X32-NEXT:    movl %eax, %ebp
501 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
502 ; X32-NEXT:    adcl $0, %ebx
503 ; X32-NEXT:    movl %ecx, %eax
504 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
505 ; X32-NEXT:    mull %ecx
506 ; X32-NEXT:    movl %edx, %edi
507 ; X32-NEXT:    addl %ebp, %eax
508 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
509 ; X32-NEXT:    adcl %ebx, %edi
510 ; X32-NEXT:    setb %bl
511 ; X32-NEXT:    movl %esi, %eax
512 ; X32-NEXT:    mull %ecx
513 ; X32-NEXT:    movl %eax, %ecx
514 ; X32-NEXT:    addl %edi, %ecx
515 ; X32-NEXT:    movzbl %bl, %eax
516 ; X32-NEXT:    adcl %eax, %edx
517 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
518 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
519 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
520 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
521 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
522 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
523 ; X32-NEXT:    movl %ebp, %eax
524 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
525 ; X32-NEXT:    mull %edi
526 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
527 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
528 ; X32-NEXT:    movl %esi, %eax
529 ; X32-NEXT:    mull %edi
530 ; X32-NEXT:    movl %edx, %ebx
531 ; X32-NEXT:    movl %eax, %esi
532 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
533 ; X32-NEXT:    adcl $0, %ebx
534 ; X32-NEXT:    movl %ebp, %eax
535 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
536 ; X32-NEXT:    mull %edi
537 ; X32-NEXT:    movl %edx, %ebp
538 ; X32-NEXT:    addl %esi, %eax
539 ; X32-NEXT:    movl %eax, %esi
540 ; X32-NEXT:    adcl %ebx, %ebp
541 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
542 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
543 ; X32-NEXT:    mull %edi
544 ; X32-NEXT:    movl %edi, %ebx
545 ; X32-NEXT:    movl %eax, %edi
546 ; X32-NEXT:    addl %ebp, %edi
547 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
548 ; X32-NEXT:    adcl %eax, %edx
549 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
550 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
551 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
552 ; X32-NEXT:    adcl $0, %edi
553 ; X32-NEXT:    adcl $0, %edx
554 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
555 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
556 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
557 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
558 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
559 ; X32-NEXT:    movl %ecx, %eax
560 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
561 ; X32-NEXT:    mull %esi
562 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
563 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
564 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
565 ; X32-NEXT:    mull %esi
566 ; X32-NEXT:    movl %edx, %esi
567 ; X32-NEXT:    movl %eax, %ebp
568 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
569 ; X32-NEXT:    adcl $0, %esi
570 ; X32-NEXT:    movl %ecx, %eax
571 ; X32-NEXT:    movl %ebx, %ecx
572 ; X32-NEXT:    mull %ebx
573 ; X32-NEXT:    movl %edx, %ebx
574 ; X32-NEXT:    addl %ebp, %eax
575 ; X32-NEXT:    movl %eax, %ebp
576 ; X32-NEXT:    adcl %esi, %ebx
577 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
578 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
579 ; X32-NEXT:    mull %ecx
580 ; X32-NEXT:    addl %ebx, %eax
581 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
582 ; X32-NEXT:    adcl %ecx, %edx
583 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
584 ; X32-NEXT:    addl %edi, %ecx
585 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
586 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
587 ; X32-NEXT:    adcl %esi, %eax
588 ; X32-NEXT:    movl %eax, %esi
589 ; X32-NEXT:    adcl $0, %edx
590 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
591 ; X32-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
592 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
593 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
594 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
595 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
596 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
597 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
598 ; X32-NEXT:    movzbl (%esp), %eax # 1-byte Folded Reload
599 ; X32-NEXT:    adcl %eax, %ecx
600 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
601 ; X32-NEXT:    adcl $0, %ebp
602 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
603 ; X32-NEXT:    adcl $0, %esi
604 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
605 ; X32-NEXT:    adcl $0, %edx
606 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
607 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
608 ; X32-NEXT:    movl 24(%esi), %ebp
609 ; X32-NEXT:    movl %ebp, %eax
610 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
611 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
612 ; X32-NEXT:    mull %ebx
613 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
614 ; X32-NEXT:    movl %edx, %ecx
615 ; X32-NEXT:    movl 28(%esi), %edi
616 ; X32-NEXT:    movl %edi, %eax
617 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
618 ; X32-NEXT:    mull %ebx
619 ; X32-NEXT:    movl %edx, %esi
620 ; X32-NEXT:    movl %eax, %ebx
621 ; X32-NEXT:    addl %ecx, %ebx
622 ; X32-NEXT:    adcl $0, %esi
623 ; X32-NEXT:    movl %ebp, %eax
624 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
625 ; X32-NEXT:    mull %ebp
626 ; X32-NEXT:    movl %edx, %ecx
627 ; X32-NEXT:    addl %ebx, %eax
628 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
629 ; X32-NEXT:    adcl %esi, %ecx
630 ; X32-NEXT:    setb %bl
631 ; X32-NEXT:    movl %edi, %eax
632 ; X32-NEXT:    mull %ebp
633 ; X32-NEXT:    addl %ecx, %eax
634 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
635 ; X32-NEXT:    movzbl %bl, %eax
636 ; X32-NEXT:    adcl %eax, %edx
637 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
638 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %edi
639 ; X32-NEXT:    movl 16(%edi), %esi
640 ; X32-NEXT:    movl %esi, %eax
641 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
642 ; X32-NEXT:    mull %ebx
643 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
644 ; X32-NEXT:    movl %edx, %ecx
645 ; X32-NEXT:    movl 20(%edi), %eax
646 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
647 ; X32-NEXT:    mull %ebx
648 ; X32-NEXT:    movl %edx, %ebx
649 ; X32-NEXT:    movl %eax, %edi
650 ; X32-NEXT:    addl %ecx, %edi
651 ; X32-NEXT:    adcl $0, %ebx
652 ; X32-NEXT:    movl %esi, %eax
653 ; X32-NEXT:    movl %ebp, %ecx
654 ; X32-NEXT:    mull %ebp
655 ; X32-NEXT:    movl %edx, %ebp
656 ; X32-NEXT:    addl %edi, %eax
657 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
658 ; X32-NEXT:    adcl %ebx, %ebp
659 ; X32-NEXT:    setb %bl
660 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
661 ; X32-NEXT:    movl %edi, %eax
662 ; X32-NEXT:    mull %ecx
663 ; X32-NEXT:    movl %eax, %ecx
664 ; X32-NEXT:    addl %ebp, %ecx
665 ; X32-NEXT:    movzbl %bl, %eax
666 ; X32-NEXT:    adcl %eax, %edx
667 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
668 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
669 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
670 ; X32-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
671 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
672 ; X32-NEXT:    movl %esi, %ebx
673 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
674 ; X32-NEXT:    movl %esi, %eax
675 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
676 ; X32-NEXT:    mull %esi
677 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
678 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
679 ; X32-NEXT:    movl %edi, %eax
680 ; X32-NEXT:    mull %esi
681 ; X32-NEXT:    movl %edx, %ebp
682 ; X32-NEXT:    movl %eax, %esi
683 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
684 ; X32-NEXT:    adcl $0, %ebp
685 ; X32-NEXT:    movl %ebx, %eax
686 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
687 ; X32-NEXT:    mull %edi
688 ; X32-NEXT:    movl %edx, %ebx
689 ; X32-NEXT:    addl %esi, %eax
690 ; X32-NEXT:    movl %eax, %esi
691 ; X32-NEXT:    adcl %ebp, %ebx
692 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
693 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
694 ; X32-NEXT:    mull %edi
695 ; X32-NEXT:    movl %edi, %ebp
696 ; X32-NEXT:    movl %eax, %edi
697 ; X32-NEXT:    addl %ebx, %edi
698 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
699 ; X32-NEXT:    adcl %eax, %edx
700 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
701 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
702 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
703 ; X32-NEXT:    adcl $0, %edi
704 ; X32-NEXT:    adcl $0, %edx
705 ; X32-NEXT:    addl (%esp), %edi # 4-byte Folded Reload
706 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
707 ; X32-NEXT:    movl %edx, (%esp) # 4-byte Spill
708 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
709 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
710 ; X32-NEXT:    movl %ecx, %eax
711 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
712 ; X32-NEXT:    mull %esi
713 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
714 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
715 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
716 ; X32-NEXT:    mull %esi
717 ; X32-NEXT:    movl %edx, %esi
718 ; X32-NEXT:    movl %eax, %ebx
719 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
720 ; X32-NEXT:    adcl $0, %esi
721 ; X32-NEXT:    movl %ecx, %eax
722 ; X32-NEXT:    movl %ebp, %ecx
723 ; X32-NEXT:    mull %ebp
724 ; X32-NEXT:    movl %edx, %ebp
725 ; X32-NEXT:    addl %ebx, %eax
726 ; X32-NEXT:    movl %eax, %ebx
727 ; X32-NEXT:    adcl %esi, %ebp
728 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
729 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
730 ; X32-NEXT:    mull %ecx
731 ; X32-NEXT:    addl %ebp, %eax
732 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
733 ; X32-NEXT:    adcl %ecx, %edx
734 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
735 ; X32-NEXT:    adcl (%esp), %ebx # 4-byte Folded Reload
736 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
737 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
738 ; X32-NEXT:    adcl %ecx, %eax
739 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
740 ; X32-NEXT:    adcl $0, %edx
741 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
742 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
743 ; X32-NEXT:    movl 8(%esi), %ecx
744 ; X32-NEXT:    movl %ecx, %eax
745 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
746 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
747 ; X32-NEXT:    mull %edi
748 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
749 ; X32-NEXT:    movl %edx, (%esp) # 4-byte Spill
750 ; X32-NEXT:    movl 12(%esi), %ebp
751 ; X32-NEXT:    movl %ebp, %eax
752 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
753 ; X32-NEXT:    mull %edi
754 ; X32-NEXT:    movl %edx, %esi
755 ; X32-NEXT:    movl %eax, %ebx
756 ; X32-NEXT:    addl (%esp), %ebx # 4-byte Folded Reload
757 ; X32-NEXT:    adcl $0, %esi
758 ; X32-NEXT:    movl %ecx, %eax
759 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
760 ; X32-NEXT:    mull %edi
761 ; X32-NEXT:    movl %edx, %ecx
762 ; X32-NEXT:    addl %ebx, %eax
763 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
764 ; X32-NEXT:    adcl %esi, %ecx
765 ; X32-NEXT:    setb %bl
766 ; X32-NEXT:    movl %ebp, %eax
767 ; X32-NEXT:    mull %edi
768 ; X32-NEXT:    addl %ecx, %eax
769 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
770 ; X32-NEXT:    movzbl %bl, %eax
771 ; X32-NEXT:    adcl %eax, %edx
772 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
773 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ebp
774 ; X32-NEXT:    movl (%ebp), %edi
775 ; X32-NEXT:    movl %edi, %eax
776 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
777 ; X32-NEXT:    mull %esi
778 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
779 ; X32-NEXT:    movl %edx, %ecx
780 ; X32-NEXT:    movl 4(%ebp), %eax
781 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
782 ; X32-NEXT:    mull %esi
783 ; X32-NEXT:    movl %edx, %ebx
784 ; X32-NEXT:    movl %eax, %ebp
785 ; X32-NEXT:    addl %ecx, %ebp
786 ; X32-NEXT:    adcl $0, %ebx
787 ; X32-NEXT:    movl %edi, %esi
788 ; X32-NEXT:    movl %edi, %eax
789 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
790 ; X32-NEXT:    mull %ecx
791 ; X32-NEXT:    movl %edx, %edi
792 ; X32-NEXT:    addl %ebp, %eax
793 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
794 ; X32-NEXT:    adcl %ebx, %edi
795 ; X32-NEXT:    setb %bl
796 ; X32-NEXT:    movl (%esp), %ebp # 4-byte Reload
797 ; X32-NEXT:    movl %ebp, %eax
798 ; X32-NEXT:    mull %ecx
799 ; X32-NEXT:    movl %eax, %ecx
800 ; X32-NEXT:    addl %edi, %ecx
801 ; X32-NEXT:    movzbl %bl, %eax
802 ; X32-NEXT:    adcl %eax, %edx
803 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
804 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
805 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
806 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
807 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
808 ; X32-NEXT:    movl %esi, %ebx
809 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
810 ; X32-NEXT:    movl %esi, %eax
811 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
812 ; X32-NEXT:    mull %esi
813 ; X32-NEXT:    movl %edx, %edi
814 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
815 ; X32-NEXT:    movl %ebp, %eax
816 ; X32-NEXT:    mull %esi
817 ; X32-NEXT:    movl %edx, %ebp
818 ; X32-NEXT:    movl %eax, %esi
819 ; X32-NEXT:    addl %edi, %esi
820 ; X32-NEXT:    adcl $0, %ebp
821 ; X32-NEXT:    movl %ebx, %eax
822 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
823 ; X32-NEXT:    mull %edi
824 ; X32-NEXT:    movl %edx, %ebx
825 ; X32-NEXT:    addl %esi, %eax
826 ; X32-NEXT:    movl %eax, %esi
827 ; X32-NEXT:    adcl %ebp, %ebx
828 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
829 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
830 ; X32-NEXT:    mull %edi
831 ; X32-NEXT:    movl %eax, %edi
832 ; X32-NEXT:    addl %ebx, %edi
833 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
834 ; X32-NEXT:    adcl %eax, %edx
835 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
836 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
837 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
838 ; X32-NEXT:    adcl $0, %edi
839 ; X32-NEXT:    adcl $0, %edx
840 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
841 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
842 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
843 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
844 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
845 ; X32-NEXT:    movl %ebp, %eax
846 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
847 ; X32-NEXT:    mull %esi
848 ; X32-NEXT:    movl %edx, %ecx
849 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
850 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
851 ; X32-NEXT:    mull %esi
852 ; X32-NEXT:    movl %edx, %esi
853 ; X32-NEXT:    movl %eax, %ebx
854 ; X32-NEXT:    addl %ecx, %ebx
855 ; X32-NEXT:    adcl $0, %esi
856 ; X32-NEXT:    movl %ebp, %eax
857 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
858 ; X32-NEXT:    mull %ebp
859 ; X32-NEXT:    movl %edx, %ecx
860 ; X32-NEXT:    addl %ebx, %eax
861 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
862 ; X32-NEXT:    adcl %esi, %ecx
863 ; X32-NEXT:    setb %bl
864 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
865 ; X32-NEXT:    mull %ebp
866 ; X32-NEXT:    addl %ecx, %eax
867 ; X32-NEXT:    movzbl %bl, %ecx
868 ; X32-NEXT:    adcl %ecx, %edx
869 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
870 ; X32-NEXT:    addl %edi, %ecx
871 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
872 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
873 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
874 ; X32-NEXT:    adcl %edi, %eax
875 ; X32-NEXT:    adcl $0, %edx
876 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
877 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
878 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
879 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
880 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
881 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
882 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
883 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
884 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
885 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
886 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
887 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
888 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
889 ; X32-NEXT:    movl %esi, %eax
890 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
891 ; X32-NEXT:    mull %edi
892 ; X32-NEXT:    movl %edx, %ebp
893 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
894 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
895 ; X32-NEXT:    movl %ecx, %eax
896 ; X32-NEXT:    mull %edi
897 ; X32-NEXT:    movl %edx, %edi
898 ; X32-NEXT:    movl %eax, %ebx
899 ; X32-NEXT:    addl %ebp, %ebx
900 ; X32-NEXT:    adcl $0, %edi
901 ; X32-NEXT:    movl %esi, %eax
902 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
903 ; X32-NEXT:    mull %esi
904 ; X32-NEXT:    movl %edx, %ebp
905 ; X32-NEXT:    addl %ebx, %eax
906 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
907 ; X32-NEXT:    adcl %edi, %ebp
908 ; X32-NEXT:    setb %bl
909 ; X32-NEXT:    movl %ecx, %eax
910 ; X32-NEXT:    mull %esi
911 ; X32-NEXT:    addl %ebp, %eax
912 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
913 ; X32-NEXT:    movzbl %bl, %eax
914 ; X32-NEXT:    adcl %eax, %edx
915 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
916 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
917 ; X32-NEXT:    movl %ebx, %eax
918 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
919 ; X32-NEXT:    mull %ecx
920 ; X32-NEXT:    movl %edx, %edi
921 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
922 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
923 ; X32-NEXT:    mull %ecx
924 ; X32-NEXT:    movl %edx, %ebp
925 ; X32-NEXT:    movl %eax, %esi
926 ; X32-NEXT:    addl %edi, %esi
927 ; X32-NEXT:    adcl $0, %ebp
928 ; X32-NEXT:    movl %ebx, %eax
929 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
930 ; X32-NEXT:    mull %edi
931 ; X32-NEXT:    movl %edx, %ecx
932 ; X32-NEXT:    addl %esi, %eax
933 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
934 ; X32-NEXT:    adcl %ebp, %ecx
935 ; X32-NEXT:    setb %bl
936 ; X32-NEXT:    movl (%esp), %esi # 4-byte Reload
937 ; X32-NEXT:    movl %esi, %eax
938 ; X32-NEXT:    mull %edi
939 ; X32-NEXT:    movl %eax, %edi
940 ; X32-NEXT:    addl %ecx, %edi
941 ; X32-NEXT:    movzbl %bl, %eax
942 ; X32-NEXT:    adcl %eax, %edx
943 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
944 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
945 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
946 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
947 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
948 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
949 ; X32-NEXT:    movl %ebp, %eax
950 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
951 ; X32-NEXT:    mull %ebx
952 ; X32-NEXT:    movl %edx, %ecx
953 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
954 ; X32-NEXT:    movl %esi, %eax
955 ; X32-NEXT:    mull %ebx
956 ; X32-NEXT:    movl %edx, %esi
957 ; X32-NEXT:    movl %eax, %ebx
958 ; X32-NEXT:    addl %ecx, %ebx
959 ; X32-NEXT:    adcl $0, %esi
960 ; X32-NEXT:    movl %ebp, %eax
961 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
962 ; X32-NEXT:    mull %ecx
963 ; X32-NEXT:    movl %edx, %ebp
964 ; X32-NEXT:    addl %ebx, %eax
965 ; X32-NEXT:    movl %eax, %ebx
966 ; X32-NEXT:    adcl %esi, %ebp
967 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
968 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
969 ; X32-NEXT:    mull %ecx
970 ; X32-NEXT:    movl %eax, %esi
971 ; X32-NEXT:    addl %ebp, %esi
972 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
973 ; X32-NEXT:    adcl %eax, %edx
974 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
975 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
976 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
977 ; X32-NEXT:    adcl $0, %esi
978 ; X32-NEXT:    adcl $0, %edx
979 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
980 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
981 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
982 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
983 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
984 ; X32-NEXT:    movl %edi, %eax
985 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
986 ; X32-NEXT:    mull %ecx
987 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
988 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
989 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
990 ; X32-NEXT:    mull %ecx
991 ; X32-NEXT:    movl %edx, %ebx
992 ; X32-NEXT:    movl %eax, %ebp
993 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
994 ; X32-NEXT:    adcl $0, %ebx
995 ; X32-NEXT:    movl %edi, %eax
996 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
997 ; X32-NEXT:    mull %ecx
998 ; X32-NEXT:    movl %edx, %edi
999 ; X32-NEXT:    addl %ebp, %eax
1000 ; X32-NEXT:    movl %eax, %ebp
1001 ; X32-NEXT:    adcl %ebx, %edi
1002 ; X32-NEXT:    setb %bl
1003 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1004 ; X32-NEXT:    mull %ecx
1005 ; X32-NEXT:    addl %edi, %eax
1006 ; X32-NEXT:    movzbl %bl, %edi
1007 ; X32-NEXT:    adcl %edi, %edx
1008 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1009 ; X32-NEXT:    addl %esi, %edi
1010 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1011 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1012 ; X32-NEXT:    adcl %ecx, %eax
1013 ; X32-NEXT:    adcl $0, %edx
1014 ; X32-NEXT:    movl %edx, %esi
1015 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1016 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1017 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1018 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1019 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1020 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1021 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1022 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1023 ; X32-NEXT:    movl %edi, %edx
1024 ; X32-NEXT:    adcl $0, %edx
1025 ; X32-NEXT:    movl %ebp, %ecx
1026 ; X32-NEXT:    adcl $0, %ecx
1027 ; X32-NEXT:    adcl $0, %eax
1028 ; X32-NEXT:    adcl $0, %esi
1029 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1030 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1031 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1032 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1033 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1034 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1035 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1036 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1037 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1038 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1039 ; X32-NEXT:    movl %edi, %eax
1040 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1041 ; X32-NEXT:    mull %esi
1042 ; X32-NEXT:    movl %edx, %ecx
1043 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1044 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1045 ; X32-NEXT:    movl %ebp, %eax
1046 ; X32-NEXT:    mull %esi
1047 ; X32-NEXT:    movl %edx, %esi
1048 ; X32-NEXT:    movl %eax, %ebx
1049 ; X32-NEXT:    addl %ecx, %ebx
1050 ; X32-NEXT:    adcl $0, %esi
1051 ; X32-NEXT:    movl %edi, %eax
1052 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1053 ; X32-NEXT:    mull %edi
1054 ; X32-NEXT:    movl %edx, %ecx
1055 ; X32-NEXT:    addl %ebx, %eax
1056 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1057 ; X32-NEXT:    adcl %esi, %ecx
1058 ; X32-NEXT:    setb %bl
1059 ; X32-NEXT:    movl %ebp, %eax
1060 ; X32-NEXT:    mull %edi
1061 ; X32-NEXT:    addl %ecx, %eax
1062 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1063 ; X32-NEXT:    movzbl %bl, %eax
1064 ; X32-NEXT:    adcl %eax, %edx
1065 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1066 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1067 ; X32-NEXT:    movl %ecx, %eax
1068 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1069 ; X32-NEXT:    mull %ebp
1070 ; X32-NEXT:    movl %edx, %edi
1071 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1072 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1073 ; X32-NEXT:    movl %esi, %eax
1074 ; X32-NEXT:    mull %ebp
1075 ; X32-NEXT:    movl %edx, %ebx
1076 ; X32-NEXT:    movl %eax, %ebp
1077 ; X32-NEXT:    addl %edi, %ebp
1078 ; X32-NEXT:    adcl $0, %ebx
1079 ; X32-NEXT:    movl %ecx, %eax
1080 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1081 ; X32-NEXT:    mull %ecx
1082 ; X32-NEXT:    movl %edx, %edi
1083 ; X32-NEXT:    addl %ebp, %eax
1084 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1085 ; X32-NEXT:    adcl %ebx, %edi
1086 ; X32-NEXT:    setb %bl
1087 ; X32-NEXT:    movl %esi, %eax
1088 ; X32-NEXT:    mull %ecx
1089 ; X32-NEXT:    movl %eax, %ecx
1090 ; X32-NEXT:    addl %edi, %ecx
1091 ; X32-NEXT:    movzbl %bl, %eax
1092 ; X32-NEXT:    adcl %eax, %edx
1093 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1094 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1095 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1096 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1097 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1098 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1099 ; X32-NEXT:    movl %ebp, %eax
1100 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1101 ; X32-NEXT:    mull %ebx
1102 ; X32-NEXT:    movl %edx, %edi
1103 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1104 ; X32-NEXT:    movl %esi, %eax
1105 ; X32-NEXT:    mull %ebx
1106 ; X32-NEXT:    movl %edx, %ebx
1107 ; X32-NEXT:    movl %eax, %esi
1108 ; X32-NEXT:    addl %edi, %esi
1109 ; X32-NEXT:    adcl $0, %ebx
1110 ; X32-NEXT:    movl %ebp, %eax
1111 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1112 ; X32-NEXT:    mull %edi
1113 ; X32-NEXT:    movl %edx, %ebp
1114 ; X32-NEXT:    addl %esi, %eax
1115 ; X32-NEXT:    movl %eax, %esi
1116 ; X32-NEXT:    adcl %ebx, %ebp
1117 ; X32-NEXT:    setb %bl
1118 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1119 ; X32-NEXT:    mull %edi
1120 ; X32-NEXT:    movl %eax, %edi
1121 ; X32-NEXT:    addl %ebp, %edi
1122 ; X32-NEXT:    movzbl %bl, %eax
1123 ; X32-NEXT:    adcl %eax, %edx
1124 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1125 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1126 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1127 ; X32-NEXT:    adcl $0, %edi
1128 ; X32-NEXT:    adcl $0, %edx
1129 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1130 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1131 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1132 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1133 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1134 ; X32-NEXT:    movl %ebx, %eax
1135 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1136 ; X32-NEXT:    mull %esi
1137 ; X32-NEXT:    movl %edx, %ecx
1138 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1139 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1140 ; X32-NEXT:    mull %esi
1141 ; X32-NEXT:    movl %edx, %esi
1142 ; X32-NEXT:    movl %eax, %ebp
1143 ; X32-NEXT:    addl %ecx, %ebp
1144 ; X32-NEXT:    adcl $0, %esi
1145 ; X32-NEXT:    movl %ebx, %eax
1146 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1147 ; X32-NEXT:    mull %ebx
1148 ; X32-NEXT:    movl %edx, %ecx
1149 ; X32-NEXT:    addl %ebp, %eax
1150 ; X32-NEXT:    movl %eax, %ebp
1151 ; X32-NEXT:    adcl %esi, %ecx
1152 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1153 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1154 ; X32-NEXT:    mull %ebx
1155 ; X32-NEXT:    addl %ecx, %eax
1156 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1157 ; X32-NEXT:    adcl %ecx, %edx
1158 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1159 ; X32-NEXT:    addl %edi, %ebx
1160 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1161 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1162 ; X32-NEXT:    adcl %ecx, %eax
1163 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1164 ; X32-NEXT:    adcl $0, %edx
1165 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1166 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1167 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1168 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1169 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1170 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1171 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1172 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1173 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1174 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1175 ; X32-NEXT:    adcl %eax, %ebx
1176 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1177 ; X32-NEXT:    adcl $0, %ebp
1178 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1179 ; X32-NEXT:    adcl $0, %ebx
1180 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1181 ; X32-NEXT:    adcl $0, %eax
1182 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1183 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1184 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1185 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1186 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1187 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1188 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1189 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1190 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1191 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1192 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1193 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1194 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1195 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1196 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
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:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1200 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1201 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1202 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1203 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1204 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1205 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1206 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1207 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ebx
1208 ; X32-NEXT:    movl 32(%ebx), %esi
1209 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1210 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1211 ; X32-NEXT:    movl %ebx, %eax
1212 ; X32-NEXT:    mull %esi
1213 ; X32-NEXT:    movl %edx, %ecx
1214 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1215 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1216 ; X32-NEXT:    movl %ebp, %eax
1217 ; X32-NEXT:    mull %esi
1218 ; X32-NEXT:    movl %edx, %esi
1219 ; X32-NEXT:    movl %eax, %edi
1220 ; X32-NEXT:    addl %ecx, %edi
1221 ; X32-NEXT:    adcl $0, %esi
1222 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1223 ; X32-NEXT:    movl 36(%eax), %ecx
1224 ; X32-NEXT:    movl %ebx, %eax
1225 ; X32-NEXT:    mull %ecx
1226 ; X32-NEXT:    movl %ecx, %ebx
1227 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1228 ; X32-NEXT:    movl %edx, %ecx
1229 ; X32-NEXT:    addl %edi, %eax
1230 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1231 ; X32-NEXT:    adcl %esi, %ecx
1232 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1233 ; X32-NEXT:    movl %ebp, %eax
1234 ; X32-NEXT:    mull %ebx
1235 ; X32-NEXT:    addl %ecx, %eax
1236 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1237 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1238 ; X32-NEXT:    adcl %eax, %edx
1239 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1240 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1241 ; X32-NEXT:    movl %ebx, %eax
1242 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1243 ; X32-NEXT:    mull %esi
1244 ; X32-NEXT:    movl %edx, %ecx
1245 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1246 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1247 ; X32-NEXT:    movl %edi, %eax
1248 ; X32-NEXT:    mull %esi
1249 ; X32-NEXT:    movl %edx, %esi
1250 ; X32-NEXT:    movl %eax, %ebp
1251 ; X32-NEXT:    addl %ecx, %ebp
1252 ; X32-NEXT:    adcl $0, %esi
1253 ; X32-NEXT:    movl %ebx, %eax
1254 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1255 ; X32-NEXT:    mull %ecx
1256 ; X32-NEXT:    movl %edx, %ebx
1257 ; X32-NEXT:    addl %ebp, %eax
1258 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1259 ; X32-NEXT:    adcl %esi, %ebx
1260 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1261 ; X32-NEXT:    movl %edi, %eax
1262 ; X32-NEXT:    mull %ecx
1263 ; X32-NEXT:    movl %eax, %ecx
1264 ; X32-NEXT:    addl %ebx, %ecx
1265 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1266 ; X32-NEXT:    adcl %eax, %edx
1267 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1268 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1269 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1270 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1271 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1272 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1273 ; X32-NEXT:    movl 40(%eax), %ebx
1274 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1275 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1276 ; X32-NEXT:    movl %esi, %eax
1277 ; X32-NEXT:    mull %ebx
1278 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1279 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1280 ; X32-NEXT:    movl %edi, %eax
1281 ; X32-NEXT:    mull %ebx
1282 ; X32-NEXT:    movl %edx, %ebp
1283 ; X32-NEXT:    movl %eax, %edi
1284 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1285 ; X32-NEXT:    adcl $0, %ebp
1286 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1287 ; X32-NEXT:    movl 44(%eax), %ebx
1288 ; X32-NEXT:    movl %esi, %eax
1289 ; X32-NEXT:    mull %ebx
1290 ; X32-NEXT:    movl %edx, %esi
1291 ; X32-NEXT:    addl %edi, %eax
1292 ; X32-NEXT:    movl %eax, %edi
1293 ; X32-NEXT:    adcl %ebp, %esi
1294 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1295 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1296 ; X32-NEXT:    mull %ebx
1297 ; X32-NEXT:    movl %eax, %ebp
1298 ; X32-NEXT:    addl %esi, %ebp
1299 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1300 ; X32-NEXT:    adcl %eax, %edx
1301 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1302 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1303 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1304 ; X32-NEXT:    adcl $0, %ebp
1305 ; X32-NEXT:    adcl $0, %edx
1306 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1307 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1308 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1309 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1310 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1311 ; X32-NEXT:    movl %ecx, %eax
1312 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1313 ; X32-NEXT:    mull %esi
1314 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1315 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1316 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1317 ; X32-NEXT:    mull %esi
1318 ; X32-NEXT:    movl %edx, %esi
1319 ; X32-NEXT:    movl %eax, %edi
1320 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1321 ; X32-NEXT:    adcl $0, %esi
1322 ; X32-NEXT:    movl %ecx, %eax
1323 ; X32-NEXT:    movl %ebx, %ecx
1324 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1325 ; X32-NEXT:    mull %ebx
1326 ; X32-NEXT:    movl %edx, %ebx
1327 ; X32-NEXT:    addl %edi, %eax
1328 ; X32-NEXT:    movl %eax, %edi
1329 ; X32-NEXT:    adcl %esi, %ebx
1330 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1331 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1332 ; X32-NEXT:    mull %ecx
1333 ; X32-NEXT:    addl %ebx, %eax
1334 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1335 ; X32-NEXT:    adcl %ecx, %edx
1336 ; X32-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1337 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1338 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1339 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1340 ; X32-NEXT:    adcl %ecx, %eax
1341 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1342 ; X32-NEXT:    adcl $0, %edx
1343 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1344 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1345 ; X32-NEXT:    movl %ebp, %eax
1346 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1347 ; X32-NEXT:    mull %edi
1348 ; X32-NEXT:    movl %edx, %ecx
1349 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1350 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1351 ; X32-NEXT:    movl %esi, %eax
1352 ; X32-NEXT:    mull %edi
1353 ; X32-NEXT:    movl %edx, %edi
1354 ; X32-NEXT:    movl %eax, %ebx
1355 ; X32-NEXT:    addl %ecx, %ebx
1356 ; X32-NEXT:    adcl $0, %edi
1357 ; X32-NEXT:    movl %ebp, %eax
1358 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1359 ; X32-NEXT:    mull %ebp
1360 ; X32-NEXT:    movl %edx, %ecx
1361 ; X32-NEXT:    addl %ebx, %eax
1362 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1363 ; X32-NEXT:    adcl %edi, %ecx
1364 ; X32-NEXT:    setb %bl
1365 ; X32-NEXT:    movl %esi, %eax
1366 ; X32-NEXT:    mull %ebp
1367 ; X32-NEXT:    addl %ecx, %eax
1368 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1369 ; X32-NEXT:    movzbl %bl, %eax
1370 ; X32-NEXT:    adcl %eax, %edx
1371 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1372 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1373 ; X32-NEXT:    movl %ecx, %eax
1374 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1375 ; X32-NEXT:    mull %esi
1376 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1377 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1378 ; X32-NEXT:    movl (%esp), %edi # 4-byte Reload
1379 ; X32-NEXT:    movl %edi, %eax
1380 ; X32-NEXT:    mull %esi
1381 ; X32-NEXT:    movl %edx, %ebx
1382 ; X32-NEXT:    movl %eax, %ebp
1383 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1384 ; X32-NEXT:    adcl $0, %ebx
1385 ; X32-NEXT:    movl %ecx, %eax
1386 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1387 ; X32-NEXT:    mull %ecx
1388 ; X32-NEXT:    movl %edx, %esi
1389 ; X32-NEXT:    addl %ebp, %eax
1390 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1391 ; X32-NEXT:    adcl %ebx, %esi
1392 ; X32-NEXT:    setb %bl
1393 ; X32-NEXT:    movl %edi, %eax
1394 ; X32-NEXT:    movl %edi, %ebp
1395 ; X32-NEXT:    mull %ecx
1396 ; X32-NEXT:    movl %eax, %ecx
1397 ; X32-NEXT:    addl %esi, %ecx
1398 ; X32-NEXT:    movzbl %bl, %eax
1399 ; X32-NEXT:    adcl %eax, %edx
1400 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1401 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1402 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1403 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1404 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1405 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1406 ; X32-NEXT:    movl %ebx, %eax
1407 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1408 ; X32-NEXT:    mull %edi
1409 ; X32-NEXT:    movl %edx, %esi
1410 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1411 ; X32-NEXT:    movl %ebp, %eax
1412 ; X32-NEXT:    mull %edi
1413 ; X32-NEXT:    movl %edx, %ebp
1414 ; X32-NEXT:    movl %eax, %edi
1415 ; X32-NEXT:    addl %esi, %edi
1416 ; X32-NEXT:    adcl $0, %ebp
1417 ; X32-NEXT:    movl %ebx, %eax
1418 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1419 ; X32-NEXT:    mull %esi
1420 ; X32-NEXT:    movl %edx, %ebx
1421 ; X32-NEXT:    addl %edi, %eax
1422 ; X32-NEXT:    movl %eax, %edi
1423 ; X32-NEXT:    adcl %ebp, %ebx
1424 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1425 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
1426 ; X32-NEXT:    mull %esi
1427 ; X32-NEXT:    movl %eax, %esi
1428 ; X32-NEXT:    addl %ebx, %esi
1429 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1430 ; X32-NEXT:    adcl %eax, %edx
1431 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1432 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1433 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1434 ; X32-NEXT:    adcl $0, %esi
1435 ; X32-NEXT:    adcl $0, %edx
1436 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1437 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1438 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1439 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1440 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1441 ; X32-NEXT:    movl %ebp, %eax
1442 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1443 ; X32-NEXT:    mull %edi
1444 ; X32-NEXT:    movl %edx, %ecx
1445 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1446 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1447 ; X32-NEXT:    mull %edi
1448 ; X32-NEXT:    movl %edx, %edi
1449 ; X32-NEXT:    movl %eax, %ebx
1450 ; X32-NEXT:    addl %ecx, %ebx
1451 ; X32-NEXT:    adcl $0, %edi
1452 ; X32-NEXT:    movl %ebp, %eax
1453 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1454 ; X32-NEXT:    mull %ebp
1455 ; X32-NEXT:    movl %edx, %ecx
1456 ; X32-NEXT:    addl %ebx, %eax
1457 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1458 ; X32-NEXT:    adcl %edi, %ecx
1459 ; X32-NEXT:    setb %bl
1460 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1461 ; X32-NEXT:    movl %edi, %eax
1462 ; X32-NEXT:    mull %ebp
1463 ; X32-NEXT:    addl %ecx, %eax
1464 ; X32-NEXT:    movzbl %bl, %ecx
1465 ; X32-NEXT:    adcl %ecx, %edx
1466 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1467 ; X32-NEXT:    addl %esi, %ecx
1468 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1469 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1470 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 1-byte Folded Reload
1471 ; X32-NEXT:    adcl %ebx, %eax
1472 ; X32-NEXT:    adcl $0, %edx
1473 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1474 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1475 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1476 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1477 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1478 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1479 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1480 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1481 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1482 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1483 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1484 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1485 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1486 ; X32-NEXT:    movl 48(%eax), %esi
1487 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1488 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1489 ; X32-NEXT:    movl %ebx, %eax
1490 ; X32-NEXT:    mull %esi
1491 ; X32-NEXT:    movl %edx, %ebp
1492 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1493 ; X32-NEXT:    movl %edi, %eax
1494 ; X32-NEXT:    movl %edi, %ecx
1495 ; X32-NEXT:    mull %esi
1496 ; X32-NEXT:    movl %edx, %esi
1497 ; X32-NEXT:    movl %eax, %edi
1498 ; X32-NEXT:    addl %ebp, %edi
1499 ; X32-NEXT:    adcl $0, %esi
1500 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1501 ; X32-NEXT:    movl 52(%eax), %edx
1502 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1503 ; X32-NEXT:    movl %ebx, %eax
1504 ; X32-NEXT:    mull %edx
1505 ; X32-NEXT:    movl %edx, %ebp
1506 ; X32-NEXT:    addl %edi, %eax
1507 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1508 ; X32-NEXT:    adcl %esi, %ebp
1509 ; X32-NEXT:    setb %bl
1510 ; X32-NEXT:    movl %ecx, %eax
1511 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1512 ; X32-NEXT:    mull %esi
1513 ; X32-NEXT:    addl %ebp, %eax
1514 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1515 ; X32-NEXT:    movzbl %bl, %eax
1516 ; X32-NEXT:    adcl %eax, %edx
1517 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1518 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1519 ; X32-NEXT:    movl %ecx, %eax
1520 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1521 ; X32-NEXT:    mull %ebx
1522 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1523 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1524 ; X32-NEXT:    movl (%esp), %edi # 4-byte Reload
1525 ; X32-NEXT:    movl %edi, %eax
1526 ; X32-NEXT:    mull %ebx
1527 ; X32-NEXT:    movl %edx, %ebp
1528 ; X32-NEXT:    movl %eax, %ebx
1529 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1530 ; X32-NEXT:    adcl $0, %ebp
1531 ; X32-NEXT:    movl %ecx, %eax
1532 ; X32-NEXT:    mull %esi
1533 ; X32-NEXT:    movl %edx, %ecx
1534 ; X32-NEXT:    addl %ebx, %eax
1535 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1536 ; X32-NEXT:    adcl %ebp, %ecx
1537 ; X32-NEXT:    setb %bl
1538 ; X32-NEXT:    movl %edi, %eax
1539 ; X32-NEXT:    mull %esi
1540 ; X32-NEXT:    movl %eax, %esi
1541 ; X32-NEXT:    addl %ecx, %esi
1542 ; X32-NEXT:    movzbl %bl, %eax
1543 ; X32-NEXT:    adcl %eax, %edx
1544 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1545 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1546 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1547 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1548 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1549 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1550 ; X32-NEXT:    movl 56(%eax), %ecx
1551 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1552 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1553 ; X32-NEXT:    movl %ebp, %eax
1554 ; X32-NEXT:    mull %ecx
1555 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1556 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1557 ; X32-NEXT:    movl %edi, %eax
1558 ; X32-NEXT:    mull %ecx
1559 ; X32-NEXT:    movl %edx, %ebx
1560 ; X32-NEXT:    movl %eax, %edi
1561 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1562 ; X32-NEXT:    adcl $0, %ebx
1563 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
1564 ; X32-NEXT:    movl 60(%eax), %ecx
1565 ; X32-NEXT:    movl %ebp, %eax
1566 ; X32-NEXT:    mull %ecx
1567 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1568 ; X32-NEXT:    movl %edx, %ebp
1569 ; X32-NEXT:    addl %edi, %eax
1570 ; X32-NEXT:    movl %eax, %edi
1571 ; X32-NEXT:    adcl %ebx, %ebp
1572 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1573 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
1574 ; X32-NEXT:    mull %ecx
1575 ; X32-NEXT:    movl %eax, %ebx
1576 ; X32-NEXT:    addl %ebp, %ebx
1577 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1578 ; X32-NEXT:    adcl %eax, %edx
1579 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1580 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1581 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1582 ; X32-NEXT:    adcl $0, %ebx
1583 ; X32-NEXT:    adcl $0, %edx
1584 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1585 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1586 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1587 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1588 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1589 ; X32-NEXT:    movl %esi, %eax
1590 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1591 ; X32-NEXT:    mull %ecx
1592 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1593 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1594 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1595 ; X32-NEXT:    mull %ecx
1596 ; X32-NEXT:    movl %edx, %edi
1597 ; X32-NEXT:    movl %eax, %ebp
1598 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1599 ; X32-NEXT:    adcl $0, %edi
1600 ; X32-NEXT:    movl %esi, %eax
1601 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1602 ; X32-NEXT:    mull %ecx
1603 ; X32-NEXT:    movl %edx, %esi
1604 ; X32-NEXT:    addl %ebp, %eax
1605 ; X32-NEXT:    movl %eax, %ebp
1606 ; X32-NEXT:    adcl %edi, %esi
1607 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1608 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1609 ; X32-NEXT:    mull %ecx
1610 ; X32-NEXT:    addl %esi, %eax
1611 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
1612 ; X32-NEXT:    adcl %esi, %edx
1613 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1614 ; X32-NEXT:    addl %ebx, %edi
1615 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1616 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1617 ; X32-NEXT:    adcl %ecx, %eax
1618 ; X32-NEXT:    adcl $0, %edx
1619 ; X32-NEXT:    movl %edx, %esi
1620 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1621 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1622 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1623 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1624 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1625 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1626 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1627 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1628 ; X32-NEXT:    movl %edi, %edx
1629 ; X32-NEXT:    adcl $0, %edx
1630 ; X32-NEXT:    movl %ebp, %ecx
1631 ; X32-NEXT:    adcl $0, %ecx
1632 ; X32-NEXT:    adcl $0, %eax
1633 ; X32-NEXT:    adcl $0, %esi
1634 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1635 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1636 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1637 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1638 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1639 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1640 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1641 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1642 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1643 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1644 ; X32-NEXT:    movl %ebp, %eax
1645 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1646 ; X32-NEXT:    mull %edi
1647 ; X32-NEXT:    movl %edx, %ecx
1648 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1649 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1650 ; X32-NEXT:    movl %esi, %eax
1651 ; X32-NEXT:    mull %edi
1652 ; X32-NEXT:    movl %edx, %edi
1653 ; X32-NEXT:    movl %eax, %ebx
1654 ; X32-NEXT:    addl %ecx, %ebx
1655 ; X32-NEXT:    adcl $0, %edi
1656 ; X32-NEXT:    movl %ebp, %eax
1657 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1658 ; X32-NEXT:    mull %ebp
1659 ; X32-NEXT:    movl %edx, %ecx
1660 ; X32-NEXT:    addl %ebx, %eax
1661 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1662 ; X32-NEXT:    adcl %edi, %ecx
1663 ; X32-NEXT:    setb %bl
1664 ; X32-NEXT:    movl %esi, %eax
1665 ; X32-NEXT:    mull %ebp
1666 ; X32-NEXT:    addl %ecx, %eax
1667 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1668 ; X32-NEXT:    movzbl %bl, %eax
1669 ; X32-NEXT:    adcl %eax, %edx
1670 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1671 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1672 ; X32-NEXT:    movl %ebx, %eax
1673 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1674 ; X32-NEXT:    mull %esi
1675 ; X32-NEXT:    movl %edx, %ecx
1676 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1677 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1678 ; X32-NEXT:    mull %esi
1679 ; X32-NEXT:    movl %edx, %edi
1680 ; X32-NEXT:    movl %eax, %ebp
1681 ; X32-NEXT:    addl %ecx, %ebp
1682 ; X32-NEXT:    adcl $0, %edi
1683 ; X32-NEXT:    movl %ebx, %eax
1684 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1685 ; X32-NEXT:    mull %ecx
1686 ; X32-NEXT:    movl %edx, %esi
1687 ; X32-NEXT:    addl %ebp, %eax
1688 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1689 ; X32-NEXT:    adcl %edi, %esi
1690 ; X32-NEXT:    setb %bl
1691 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1692 ; X32-NEXT:    movl %edi, %eax
1693 ; X32-NEXT:    mull %ecx
1694 ; X32-NEXT:    movl %eax, %ecx
1695 ; X32-NEXT:    addl %esi, %ecx
1696 ; X32-NEXT:    movzbl %bl, %eax
1697 ; X32-NEXT:    adcl %eax, %edx
1698 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1699 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1700 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1701 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1702 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1703 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1704 ; X32-NEXT:    movl %ebp, %eax
1705 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1706 ; X32-NEXT:    mull %esi
1707 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1708 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1709 ; X32-NEXT:    movl %edi, %eax
1710 ; X32-NEXT:    mull %esi
1711 ; X32-NEXT:    movl %edx, %edi
1712 ; X32-NEXT:    movl %eax, %ebx
1713 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1714 ; X32-NEXT:    adcl $0, %edi
1715 ; X32-NEXT:    movl %ebp, %eax
1716 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1717 ; X32-NEXT:    mull %esi
1718 ; X32-NEXT:    movl %edx, %ebp
1719 ; X32-NEXT:    addl %ebx, %eax
1720 ; X32-NEXT:    movl %eax, %ebx
1721 ; X32-NEXT:    adcl %edi, %ebp
1722 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1723 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1724 ; X32-NEXT:    mull %esi
1725 ; X32-NEXT:    movl %eax, %edi
1726 ; X32-NEXT:    addl %ebp, %edi
1727 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1728 ; X32-NEXT:    adcl %eax, %edx
1729 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1730 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1731 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1732 ; X32-NEXT:    adcl $0, %edi
1733 ; X32-NEXT:    adcl $0, %edx
1734 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1735 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1736 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1737 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1738 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1739 ; X32-NEXT:    movl %ecx, %eax
1740 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1741 ; X32-NEXT:    mull %esi
1742 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1743 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1744 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1745 ; X32-NEXT:    mull %esi
1746 ; X32-NEXT:    movl %edx, %ebx
1747 ; X32-NEXT:    movl %eax, %ebp
1748 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1749 ; X32-NEXT:    adcl $0, %ebx
1750 ; X32-NEXT:    movl %ecx, %eax
1751 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1752 ; X32-NEXT:    mull %ecx
1753 ; X32-NEXT:    movl %edx, %esi
1754 ; X32-NEXT:    addl %ebp, %eax
1755 ; X32-NEXT:    movl %eax, %ebp
1756 ; X32-NEXT:    adcl %ebx, %esi
1757 ; X32-NEXT:    setb %bl
1758 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1759 ; X32-NEXT:    mull %ecx
1760 ; X32-NEXT:    addl %esi, %eax
1761 ; X32-NEXT:    movl %eax, %ecx
1762 ; X32-NEXT:    movzbl %bl, %eax
1763 ; X32-NEXT:    adcl %eax, %edx
1764 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1765 ; X32-NEXT:    addl %edi, %ebx
1766 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1767 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1768 ; X32-NEXT:    movl %ecx, %edi
1769 ; X32-NEXT:    adcl %eax, %edi
1770 ; X32-NEXT:    adcl $0, %edx
1771 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1772 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1773 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1774 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1775 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1776 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1777 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1778 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1779 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1780 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1781 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1782 ; X32-NEXT:    adcl %eax, %ebx
1783 ; X32-NEXT:    adcl $0, %ebp
1784 ; X32-NEXT:    adcl $0, %edi
1785 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1786 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1787 ; X32-NEXT:    adcl $0, %edi
1788 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1789 ; X32-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1790 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1791 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1792 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1793 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1794 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1795 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1796 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1797 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1798 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1799 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1800 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1801 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1802 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1803 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1804 ; X32-NEXT:    movl %ecx, %eax
1805 ; X32-NEXT:    adcl $0, %eax
1806 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1807 ; X32-NEXT:    adcl $0, %edx
1808 ; X32-NEXT:    adcl $0, %esi
1809 ; X32-NEXT:    adcl $0, %ebx
1810 ; X32-NEXT:    adcl $0, %ebp
1811 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1812 ; X32-NEXT:    adcl $0, %ecx
1813 ; X32-NEXT:    adcl $0, %edi
1814 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1815 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1816 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1817 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1818 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1819 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1820 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1821 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1822 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1823 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1824 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1825 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1826 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1827 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1828 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1829 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1830 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1831 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1832 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1833 ; X32-NEXT:    movl %ebx, %eax
1834 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1835 ; X32-NEXT:    mull %esi
1836 ; X32-NEXT:    movl %edx, %ecx
1837 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1838 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1839 ; X32-NEXT:    movl %ebp, %eax
1840 ; X32-NEXT:    mull %esi
1841 ; X32-NEXT:    movl %edx, %esi
1842 ; X32-NEXT:    movl %eax, %edi
1843 ; X32-NEXT:    addl %ecx, %edi
1844 ; X32-NEXT:    adcl $0, %esi
1845 ; X32-NEXT:    movl %ebx, %eax
1846 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1847 ; X32-NEXT:    mull %ebx
1848 ; X32-NEXT:    movl %edx, %ecx
1849 ; X32-NEXT:    addl %edi, %eax
1850 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1851 ; X32-NEXT:    adcl %esi, %ecx
1852 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1853 ; X32-NEXT:    movl %ebp, %eax
1854 ; X32-NEXT:    mull %ebx
1855 ; X32-NEXT:    addl %ecx, %eax
1856 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1857 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1858 ; X32-NEXT:    adcl %eax, %edx
1859 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1860 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1861 ; X32-NEXT:    movl %edi, %eax
1862 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1863 ; X32-NEXT:    mull %esi
1864 ; X32-NEXT:    movl %edx, %ebx
1865 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1866 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1867 ; X32-NEXT:    movl %ecx, %eax
1868 ; X32-NEXT:    mull %esi
1869 ; X32-NEXT:    movl %edx, %esi
1870 ; X32-NEXT:    movl %eax, %ebp
1871 ; X32-NEXT:    addl %ebx, %ebp
1872 ; X32-NEXT:    adcl $0, %esi
1873 ; X32-NEXT:    movl %edi, %eax
1874 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1875 ; X32-NEXT:    mull %edi
1876 ; X32-NEXT:    movl %edx, %ebx
1877 ; X32-NEXT:    addl %ebp, %eax
1878 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1879 ; X32-NEXT:    adcl %esi, %ebx
1880 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1881 ; X32-NEXT:    movl %ecx, %esi
1882 ; X32-NEXT:    movl %ecx, %eax
1883 ; X32-NEXT:    mull %edi
1884 ; X32-NEXT:    movl %eax, %ecx
1885 ; X32-NEXT:    addl %ebx, %ecx
1886 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1887 ; X32-NEXT:    adcl %eax, %edx
1888 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1889 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1890 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1891 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1892 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1893 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1894 ; X32-NEXT:    movl %ebx, %eax
1895 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1896 ; X32-NEXT:    mull %edi
1897 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1898 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1899 ; X32-NEXT:    movl %esi, %eax
1900 ; X32-NEXT:    mull %edi
1901 ; X32-NEXT:    movl %edx, %ebp
1902 ; X32-NEXT:    movl %eax, %edi
1903 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1904 ; X32-NEXT:    adcl $0, %ebp
1905 ; X32-NEXT:    movl %ebx, %eax
1906 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1907 ; X32-NEXT:    mull %ebx
1908 ; X32-NEXT:    movl %edx, %esi
1909 ; X32-NEXT:    addl %edi, %eax
1910 ; X32-NEXT:    movl %eax, %edi
1911 ; X32-NEXT:    adcl %ebp, %esi
1912 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1913 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1914 ; X32-NEXT:    mull %ebx
1915 ; X32-NEXT:    movl %eax, %ebp
1916 ; X32-NEXT:    addl %esi, %ebp
1917 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1918 ; X32-NEXT:    adcl %eax, %edx
1919 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1920 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1921 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1922 ; X32-NEXT:    adcl $0, %ebp
1923 ; X32-NEXT:    adcl $0, %edx
1924 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1925 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1926 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1927 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1928 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1929 ; X32-NEXT:    movl %ecx, %eax
1930 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1931 ; X32-NEXT:    mull %esi
1932 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1933 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1934 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1935 ; X32-NEXT:    mull %esi
1936 ; X32-NEXT:    movl %edx, %esi
1937 ; X32-NEXT:    movl %eax, %edi
1938 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1939 ; X32-NEXT:    adcl $0, %esi
1940 ; X32-NEXT:    movl %ecx, %eax
1941 ; X32-NEXT:    movl %ebx, %ecx
1942 ; X32-NEXT:    mull %ebx
1943 ; X32-NEXT:    movl %edx, %ebx
1944 ; X32-NEXT:    addl %edi, %eax
1945 ; X32-NEXT:    movl %eax, %edi
1946 ; X32-NEXT:    adcl %esi, %ebx
1947 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1948 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1949 ; X32-NEXT:    mull %ecx
1950 ; X32-NEXT:    addl %ebx, %eax
1951 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1952 ; X32-NEXT:    adcl %ecx, %edx
1953 ; X32-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1954 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1955 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1956 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1957 ; X32-NEXT:    adcl %ecx, %eax
1958 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1959 ; X32-NEXT:    adcl $0, %edx
1960 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1961 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1962 ; X32-NEXT:    movl %ebx, %eax
1963 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1964 ; X32-NEXT:    mull %edi
1965 ; X32-NEXT:    movl %edx, %ecx
1966 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1967 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1968 ; X32-NEXT:    movl %esi, %eax
1969 ; X32-NEXT:    mull %edi
1970 ; X32-NEXT:    movl %edx, %edi
1971 ; X32-NEXT:    movl %eax, %ebp
1972 ; X32-NEXT:    addl %ecx, %ebp
1973 ; X32-NEXT:    adcl $0, %edi
1974 ; X32-NEXT:    movl %ebx, %eax
1975 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1976 ; X32-NEXT:    mull %ebx
1977 ; X32-NEXT:    movl %edx, %ecx
1978 ; X32-NEXT:    addl %ebp, %eax
1979 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1980 ; X32-NEXT:    adcl %edi, %ecx
1981 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1982 ; X32-NEXT:    movl %esi, %eax
1983 ; X32-NEXT:    mull %ebx
1984 ; X32-NEXT:    addl %ecx, %eax
1985 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1986 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1987 ; X32-NEXT:    adcl %eax, %edx
1988 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1989 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1990 ; X32-NEXT:    movl %ecx, %eax
1991 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1992 ; X32-NEXT:    mull %esi
1993 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1994 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1995 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1996 ; X32-NEXT:    movl %edi, %eax
1997 ; X32-NEXT:    mull %esi
1998 ; X32-NEXT:    movl %edx, %ebp
1999 ; X32-NEXT:    movl %eax, %ebx
2000 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2001 ; X32-NEXT:    adcl $0, %ebp
2002 ; X32-NEXT:    movl %ecx, %eax
2003 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2004 ; X32-NEXT:    mull %ecx
2005 ; X32-NEXT:    movl %edx, %esi
2006 ; X32-NEXT:    addl %ebx, %eax
2007 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2008 ; X32-NEXT:    adcl %ebp, %esi
2009 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2010 ; X32-NEXT:    movl %edi, %eax
2011 ; X32-NEXT:    movl %edi, %ebx
2012 ; X32-NEXT:    mull %ecx
2013 ; X32-NEXT:    movl %eax, %ecx
2014 ; X32-NEXT:    addl %esi, %ecx
2015 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2016 ; X32-NEXT:    adcl %eax, %edx
2017 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2018 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2019 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2020 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2021 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2022 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2023 ; X32-NEXT:    movl %ebp, %eax
2024 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2025 ; X32-NEXT:    mull %edi
2026 ; X32-NEXT:    movl %edx, %esi
2027 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2028 ; X32-NEXT:    movl %ebx, %eax
2029 ; X32-NEXT:    mull %edi
2030 ; X32-NEXT:    movl %edx, %ebx
2031 ; X32-NEXT:    movl %eax, %edi
2032 ; X32-NEXT:    addl %esi, %edi
2033 ; X32-NEXT:    adcl $0, %ebx
2034 ; X32-NEXT:    movl %ebp, %eax
2035 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2036 ; X32-NEXT:    mull %esi
2037 ; X32-NEXT:    movl %edx, %ebp
2038 ; X32-NEXT:    addl %edi, %eax
2039 ; X32-NEXT:    movl %eax, %edi
2040 ; X32-NEXT:    adcl %ebx, %ebp
2041 ; X32-NEXT:    setb %bl
2042 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2043 ; X32-NEXT:    mull %esi
2044 ; X32-NEXT:    movl %eax, %esi
2045 ; X32-NEXT:    addl %ebp, %esi
2046 ; X32-NEXT:    movzbl %bl, %eax
2047 ; X32-NEXT:    adcl %eax, %edx
2048 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2049 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2050 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2051 ; X32-NEXT:    adcl $0, %esi
2052 ; X32-NEXT:    adcl $0, %edx
2053 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2054 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2055 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2056 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2057 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2058 ; X32-NEXT:    movl %ebx, %eax
2059 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2060 ; X32-NEXT:    mull %edi
2061 ; X32-NEXT:    movl %edx, %ecx
2062 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2063 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2064 ; X32-NEXT:    mull %edi
2065 ; X32-NEXT:    movl %edx, %edi
2066 ; X32-NEXT:    movl %eax, %ebp
2067 ; X32-NEXT:    addl %ecx, %ebp
2068 ; X32-NEXT:    adcl $0, %edi
2069 ; X32-NEXT:    movl %ebx, %eax
2070 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2071 ; X32-NEXT:    mull %ebx
2072 ; X32-NEXT:    movl %edx, %ecx
2073 ; X32-NEXT:    addl %ebp, %eax
2074 ; X32-NEXT:    movl %eax, %ebp
2075 ; X32-NEXT:    adcl %edi, %ecx
2076 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2077 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2078 ; X32-NEXT:    movl %edi, %eax
2079 ; X32-NEXT:    mull %ebx
2080 ; X32-NEXT:    addl %ecx, %eax
2081 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2082 ; X32-NEXT:    adcl %ecx, %edx
2083 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2084 ; X32-NEXT:    addl %esi, %ecx
2085 ; X32-NEXT:    movl %ebp, %esi
2086 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2087 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 1-byte Folded Reload
2088 ; X32-NEXT:    adcl %ebx, %eax
2089 ; X32-NEXT:    adcl $0, %edx
2090 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2091 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2092 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2093 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2094 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2095 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2096 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2097 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2098 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2099 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2100 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2101 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2102 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2103 ; X32-NEXT:    movl %ebx, %eax
2104 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2105 ; X32-NEXT:    mull %esi
2106 ; X32-NEXT:    movl %edx, %ecx
2107 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2108 ; X32-NEXT:    movl %edi, %eax
2109 ; X32-NEXT:    movl %edi, %ebp
2110 ; X32-NEXT:    mull %esi
2111 ; X32-NEXT:    movl %edx, %esi
2112 ; X32-NEXT:    movl %eax, %edi
2113 ; X32-NEXT:    addl %ecx, %edi
2114 ; X32-NEXT:    adcl $0, %esi
2115 ; X32-NEXT:    movl %ebx, %eax
2116 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2117 ; X32-NEXT:    mull %ecx
2118 ; X32-NEXT:    movl %edx, %ebx
2119 ; X32-NEXT:    addl %edi, %eax
2120 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2121 ; X32-NEXT:    adcl %esi, %ebx
2122 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2123 ; X32-NEXT:    movl %ebp, %eax
2124 ; X32-NEXT:    mull %ecx
2125 ; X32-NEXT:    addl %ebx, %eax
2126 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2127 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2128 ; X32-NEXT:    adcl %eax, %edx
2129 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2130 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2131 ; X32-NEXT:    movl %esi, %eax
2132 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2133 ; X32-NEXT:    mull %ecx
2134 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2135 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2136 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2137 ; X32-NEXT:    movl %edi, %eax
2138 ; X32-NEXT:    mull %ecx
2139 ; X32-NEXT:    movl %edx, %ebx
2140 ; X32-NEXT:    movl %eax, %ebp
2141 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2142 ; X32-NEXT:    adcl $0, %ebx
2143 ; X32-NEXT:    movl %esi, %eax
2144 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2145 ; X32-NEXT:    mull %esi
2146 ; X32-NEXT:    movl %edx, %ecx
2147 ; X32-NEXT:    addl %ebp, %eax
2148 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2149 ; X32-NEXT:    adcl %ebx, %ecx
2150 ; X32-NEXT:    setb %bl
2151 ; X32-NEXT:    movl %edi, %eax
2152 ; X32-NEXT:    mull %esi
2153 ; X32-NEXT:    movl %eax, %esi
2154 ; X32-NEXT:    addl %ecx, %esi
2155 ; X32-NEXT:    movzbl %bl, %eax
2156 ; X32-NEXT:    adcl %eax, %edx
2157 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2158 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2159 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2160 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2161 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2162 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2163 ; X32-NEXT:    movl %ebx, %eax
2164 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2165 ; X32-NEXT:    mull %ecx
2166 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2167 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2168 ; X32-NEXT:    movl %edi, %eax
2169 ; X32-NEXT:    mull %ecx
2170 ; X32-NEXT:    movl %edx, %ebp
2171 ; X32-NEXT:    movl %eax, %edi
2172 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2173 ; X32-NEXT:    adcl $0, %ebp
2174 ; X32-NEXT:    movl %ebx, %eax
2175 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2176 ; X32-NEXT:    mull %ecx
2177 ; X32-NEXT:    movl %edx, %ebx
2178 ; X32-NEXT:    addl %edi, %eax
2179 ; X32-NEXT:    movl %eax, %edi
2180 ; X32-NEXT:    adcl %ebp, %ebx
2181 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2182 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2183 ; X32-NEXT:    mull %ecx
2184 ; X32-NEXT:    movl %eax, %ebp
2185 ; X32-NEXT:    addl %ebx, %ebp
2186 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2187 ; X32-NEXT:    adcl %eax, %edx
2188 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2189 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2190 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2191 ; X32-NEXT:    adcl $0, %ebp
2192 ; X32-NEXT:    adcl $0, %edx
2193 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2194 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2195 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2196 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2197 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2198 ; X32-NEXT:    movl %esi, %eax
2199 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2200 ; X32-NEXT:    mull %ecx
2201 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2202 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2203 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2204 ; X32-NEXT:    mull %ecx
2205 ; X32-NEXT:    movl %edx, %edi
2206 ; X32-NEXT:    movl %eax, %ebx
2207 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2208 ; X32-NEXT:    adcl $0, %edi
2209 ; X32-NEXT:    movl %esi, %eax
2210 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2211 ; X32-NEXT:    mull %ecx
2212 ; X32-NEXT:    movl %edx, %esi
2213 ; X32-NEXT:    addl %ebx, %eax
2214 ; X32-NEXT:    movl %eax, %ebx
2215 ; X32-NEXT:    adcl %edi, %esi
2216 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2217 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2218 ; X32-NEXT:    mull %ecx
2219 ; X32-NEXT:    addl %esi, %eax
2220 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
2221 ; X32-NEXT:    adcl %esi, %edx
2222 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2223 ; X32-NEXT:    addl %ebp, %edi
2224 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2225 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2226 ; X32-NEXT:    adcl %ecx, %eax
2227 ; X32-NEXT:    adcl $0, %edx
2228 ; X32-NEXT:    movl %edx, %esi
2229 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2230 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2231 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2232 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2233 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2234 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2235 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2236 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2237 ; X32-NEXT:    movl %edi, %edx
2238 ; X32-NEXT:    adcl $0, %edx
2239 ; X32-NEXT:    adcl $0, %ebx
2240 ; X32-NEXT:    adcl $0, %eax
2241 ; X32-NEXT:    adcl $0, %esi
2242 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2243 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2244 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2245 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2246 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2247 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2248 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2249 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2250 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2251 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2252 ; X32-NEXT:    movl %ebp, %eax
2253 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2254 ; X32-NEXT:    mull %edi
2255 ; X32-NEXT:    movl %edx, %ecx
2256 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2257 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2258 ; X32-NEXT:    movl %esi, %eax
2259 ; X32-NEXT:    mull %edi
2260 ; X32-NEXT:    movl %edx, %edi
2261 ; X32-NEXT:    movl %eax, %ebx
2262 ; X32-NEXT:    addl %ecx, %ebx
2263 ; X32-NEXT:    adcl $0, %edi
2264 ; X32-NEXT:    movl %ebp, %eax
2265 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2266 ; X32-NEXT:    mull %ebp
2267 ; X32-NEXT:    movl %edx, %ecx
2268 ; X32-NEXT:    addl %ebx, %eax
2269 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2270 ; X32-NEXT:    adcl %edi, %ecx
2271 ; X32-NEXT:    setb %bl
2272 ; X32-NEXT:    movl %esi, %eax
2273 ; X32-NEXT:    mull %ebp
2274 ; X32-NEXT:    addl %ecx, %eax
2275 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2276 ; X32-NEXT:    movzbl %bl, %eax
2277 ; X32-NEXT:    adcl %eax, %edx
2278 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2279 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2280 ; X32-NEXT:    movl %esi, %eax
2281 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2282 ; X32-NEXT:    mull %edi
2283 ; X32-NEXT:    movl %edx, %ecx
2284 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2285 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2286 ; X32-NEXT:    movl %ebp, %eax
2287 ; X32-NEXT:    mull %edi
2288 ; X32-NEXT:    movl %edx, %edi
2289 ; X32-NEXT:    movl %eax, %ebx
2290 ; X32-NEXT:    addl %ecx, %ebx
2291 ; X32-NEXT:    adcl $0, %edi
2292 ; X32-NEXT:    movl %esi, %eax
2293 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2294 ; X32-NEXT:    mull %ecx
2295 ; X32-NEXT:    movl %edx, %esi
2296 ; X32-NEXT:    addl %ebx, %eax
2297 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2298 ; X32-NEXT:    adcl %edi, %esi
2299 ; X32-NEXT:    setb %bl
2300 ; X32-NEXT:    movl %ebp, %eax
2301 ; X32-NEXT:    mull %ecx
2302 ; X32-NEXT:    movl %eax, %ecx
2303 ; X32-NEXT:    addl %esi, %ecx
2304 ; X32-NEXT:    movzbl %bl, %eax
2305 ; X32-NEXT:    adcl %eax, %edx
2306 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2307 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2308 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2309 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2310 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2311 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2312 ; X32-NEXT:    movl %edi, %eax
2313 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2314 ; X32-NEXT:    mull %esi
2315 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2316 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2317 ; X32-NEXT:    movl %ebp, %eax
2318 ; X32-NEXT:    mull %esi
2319 ; X32-NEXT:    movl %edx, %ebx
2320 ; X32-NEXT:    movl %eax, %ebp
2321 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2322 ; X32-NEXT:    adcl $0, %ebx
2323 ; X32-NEXT:    movl %edi, %eax
2324 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2325 ; X32-NEXT:    mull %esi
2326 ; X32-NEXT:    movl %edx, %edi
2327 ; X32-NEXT:    addl %ebp, %eax
2328 ; X32-NEXT:    movl %eax, %ebp
2329 ; X32-NEXT:    adcl %ebx, %edi
2330 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2331 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2332 ; X32-NEXT:    mull %esi
2333 ; X32-NEXT:    movl %eax, %ebx
2334 ; X32-NEXT:    addl %edi, %ebx
2335 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2336 ; X32-NEXT:    adcl %eax, %edx
2337 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2338 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2339 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2340 ; X32-NEXT:    adcl $0, %ebx
2341 ; X32-NEXT:    adcl $0, %edx
2342 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2343 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2344 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2345 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2346 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2347 ; X32-NEXT:    movl %ecx, %eax
2348 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2349 ; X32-NEXT:    mull %esi
2350 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2351 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2352 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2353 ; X32-NEXT:    mull %esi
2354 ; X32-NEXT:    movl %edx, %edi
2355 ; X32-NEXT:    movl %eax, %ebp
2356 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2357 ; X32-NEXT:    adcl $0, %edi
2358 ; X32-NEXT:    movl %ecx, %eax
2359 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2360 ; X32-NEXT:    mull %ecx
2361 ; X32-NEXT:    movl %edx, %esi
2362 ; X32-NEXT:    addl %ebp, %eax
2363 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2364 ; X32-NEXT:    adcl %edi, %esi
2365 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2366 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2367 ; X32-NEXT:    mull %ecx
2368 ; X32-NEXT:    addl %esi, %eax
2369 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2370 ; X32-NEXT:    adcl %ecx, %edx
2371 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2372 ; X32-NEXT:    addl %ebx, %ebp
2373 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2374 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2375 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2376 ; X32-NEXT:    adcl %ecx, %eax
2377 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2378 ; X32-NEXT:    adcl $0, %edx
2379 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2380 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2381 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2382 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
2383 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2384 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2385 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2386 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2387 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2388 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2389 ; X32-NEXT:    adcl %eax, %ebp
2390 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2391 ; X32-NEXT:    adcl $0, %ebx
2392 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2393 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2394 ; X32-NEXT:    adcl $0, %ebp
2395 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2396 ; X32-NEXT:    adcl $0, %ebx
2397 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2398 ; X32-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2399 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2400 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2401 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2402 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2403 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2404 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2405 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2406 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2407 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2408 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2409 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2410 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2411 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2412 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2413 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2414 ; X32-NEXT:    adcl %eax, %ecx
2415 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2416 ; X32-NEXT:    adcl $0, %edx
2417 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2418 ; X32-NEXT:    adcl $0, %esi
2419 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2420 ; X32-NEXT:    adcl $0, %edi
2421 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2422 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2423 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2424 ; X32-NEXT:    adcl $0, %ebp
2425 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2426 ; X32-NEXT:    adcl $0, %ebx
2427 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2428 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2429 ; X32-NEXT:    movl 64(%eax), %edi
2430 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2431 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2432 ; X32-NEXT:    movl %esi, %eax
2433 ; X32-NEXT:    mull %edi
2434 ; X32-NEXT:    movl %edx, %ecx
2435 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2436 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2437 ; X32-NEXT:    movl %ebp, %eax
2438 ; X32-NEXT:    mull %edi
2439 ; X32-NEXT:    movl %edx, %edi
2440 ; X32-NEXT:    movl %eax, %ebx
2441 ; X32-NEXT:    addl %ecx, %ebx
2442 ; X32-NEXT:    adcl $0, %edi
2443 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2444 ; X32-NEXT:    movl 68(%eax), %ecx
2445 ; X32-NEXT:    movl %esi, %eax
2446 ; X32-NEXT:    movl %ecx, %esi
2447 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2448 ; X32-NEXT:    mull %ecx
2449 ; X32-NEXT:    movl %edx, %ecx
2450 ; X32-NEXT:    addl %ebx, %eax
2451 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2452 ; X32-NEXT:    adcl %edi, %ecx
2453 ; X32-NEXT:    setb %bl
2454 ; X32-NEXT:    movl %ebp, %eax
2455 ; X32-NEXT:    mull %esi
2456 ; X32-NEXT:    addl %ecx, %eax
2457 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2458 ; X32-NEXT:    movzbl %bl, %eax
2459 ; X32-NEXT:    adcl %eax, %edx
2460 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2461 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2462 ; X32-NEXT:    movl %edi, %eax
2463 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2464 ; X32-NEXT:    mull %esi
2465 ; X32-NEXT:    movl %edx, %ebp
2466 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2467 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2468 ; X32-NEXT:    movl %ecx, %eax
2469 ; X32-NEXT:    mull %esi
2470 ; X32-NEXT:    movl %edx, %ebx
2471 ; X32-NEXT:    movl %eax, %esi
2472 ; X32-NEXT:    addl %ebp, %esi
2473 ; X32-NEXT:    adcl $0, %ebx
2474 ; X32-NEXT:    movl %edi, %eax
2475 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2476 ; X32-NEXT:    mull %edi
2477 ; X32-NEXT:    movl %edx, %ebp
2478 ; X32-NEXT:    addl %esi, %eax
2479 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2480 ; X32-NEXT:    adcl %ebx, %ebp
2481 ; X32-NEXT:    setb %bl
2482 ; X32-NEXT:    movl %ecx, %esi
2483 ; X32-NEXT:    movl %ecx, %eax
2484 ; X32-NEXT:    mull %edi
2485 ; X32-NEXT:    movl %eax, %ecx
2486 ; X32-NEXT:    addl %ebp, %ecx
2487 ; X32-NEXT:    movzbl %bl, %eax
2488 ; X32-NEXT:    adcl %eax, %edx
2489 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2490 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2491 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2492 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2493 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2494 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2495 ; X32-NEXT:    movl 72(%eax), %edi
2496 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2497 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2498 ; X32-NEXT:    movl %ebx, %eax
2499 ; X32-NEXT:    mull %edi
2500 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2501 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2502 ; X32-NEXT:    movl %esi, %eax
2503 ; X32-NEXT:    mull %edi
2504 ; X32-NEXT:    movl %edx, %ebp
2505 ; X32-NEXT:    movl %eax, %edi
2506 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2507 ; X32-NEXT:    adcl $0, %ebp
2508 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2509 ; X32-NEXT:    movl 76(%eax), %esi
2510 ; X32-NEXT:    movl %ebx, %eax
2511 ; X32-NEXT:    mull %esi
2512 ; X32-NEXT:    movl %edx, %ebx
2513 ; X32-NEXT:    addl %edi, %eax
2514 ; X32-NEXT:    movl %eax, %edi
2515 ; X32-NEXT:    adcl %ebp, %ebx
2516 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2517 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2518 ; X32-NEXT:    mull %esi
2519 ; X32-NEXT:    movl %esi, %ebp
2520 ; X32-NEXT:    movl %eax, %esi
2521 ; X32-NEXT:    addl %ebx, %esi
2522 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2523 ; X32-NEXT:    adcl %eax, %edx
2524 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2525 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2526 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2527 ; X32-NEXT:    adcl $0, %esi
2528 ; X32-NEXT:    adcl $0, %edx
2529 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2530 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2531 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2532 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2533 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2534 ; X32-NEXT:    movl %ecx, %eax
2535 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2536 ; X32-NEXT:    mull %edi
2537 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2538 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2539 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2540 ; X32-NEXT:    mull %edi
2541 ; X32-NEXT:    movl %edx, %edi
2542 ; X32-NEXT:    movl %eax, %ebx
2543 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2544 ; X32-NEXT:    adcl $0, %edi
2545 ; X32-NEXT:    movl %ecx, %eax
2546 ; X32-NEXT:    movl %ebp, %ecx
2547 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2548 ; X32-NEXT:    mull %ebp
2549 ; X32-NEXT:    movl %edx, %ebp
2550 ; X32-NEXT:    addl %ebx, %eax
2551 ; X32-NEXT:    movl %eax, %ebx
2552 ; X32-NEXT:    adcl %edi, %ebp
2553 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2554 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2555 ; X32-NEXT:    mull %ecx
2556 ; X32-NEXT:    addl %ebp, %eax
2557 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2558 ; X32-NEXT:    adcl %ecx, %edx
2559 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2560 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2561 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2562 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2563 ; X32-NEXT:    adcl %ecx, %eax
2564 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2565 ; X32-NEXT:    adcl $0, %edx
2566 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2567 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2568 ; X32-NEXT:    movl %ebp, %eax
2569 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2570 ; X32-NEXT:    mull %edi
2571 ; X32-NEXT:    movl %edx, %ecx
2572 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2573 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2574 ; X32-NEXT:    movl %esi, %eax
2575 ; X32-NEXT:    mull %edi
2576 ; X32-NEXT:    movl %edx, %edi
2577 ; X32-NEXT:    movl %eax, %ebx
2578 ; X32-NEXT:    addl %ecx, %ebx
2579 ; X32-NEXT:    adcl $0, %edi
2580 ; X32-NEXT:    movl %ebp, %eax
2581 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2582 ; X32-NEXT:    mull %ebp
2583 ; X32-NEXT:    movl %edx, %ecx
2584 ; X32-NEXT:    addl %ebx, %eax
2585 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2586 ; X32-NEXT:    adcl %edi, %ecx
2587 ; X32-NEXT:    setb %bl
2588 ; X32-NEXT:    movl %esi, %eax
2589 ; X32-NEXT:    mull %ebp
2590 ; X32-NEXT:    addl %ecx, %eax
2591 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2592 ; X32-NEXT:    movzbl %bl, %eax
2593 ; X32-NEXT:    adcl %eax, %edx
2594 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2595 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2596 ; X32-NEXT:    movl %esi, %eax
2597 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2598 ; X32-NEXT:    mull %ebx
2599 ; X32-NEXT:    movl %edx, %ecx
2600 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2601 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2602 ; X32-NEXT:    movl %edi, %eax
2603 ; X32-NEXT:    mull %ebx
2604 ; X32-NEXT:    movl %edx, %ebx
2605 ; X32-NEXT:    movl %eax, %ebp
2606 ; X32-NEXT:    addl %ecx, %ebp
2607 ; X32-NEXT:    adcl $0, %ebx
2608 ; X32-NEXT:    movl %esi, %eax
2609 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2610 ; X32-NEXT:    mull %ecx
2611 ; X32-NEXT:    movl %edx, %esi
2612 ; X32-NEXT:    addl %ebp, %eax
2613 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2614 ; X32-NEXT:    adcl %ebx, %esi
2615 ; X32-NEXT:    setb %bl
2616 ; X32-NEXT:    movl %edi, %eax
2617 ; X32-NEXT:    movl %edi, %ebp
2618 ; X32-NEXT:    mull %ecx
2619 ; X32-NEXT:    movl %eax, %ecx
2620 ; X32-NEXT:    addl %esi, %ecx
2621 ; X32-NEXT:    movzbl %bl, %eax
2622 ; X32-NEXT:    adcl %eax, %edx
2623 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2624 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2625 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2626 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2627 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2628 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2629 ; X32-NEXT:    movl %ebx, %eax
2630 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2631 ; X32-NEXT:    mull %edi
2632 ; X32-NEXT:    movl %edx, %esi
2633 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2634 ; X32-NEXT:    movl %ebp, %eax
2635 ; X32-NEXT:    mull %edi
2636 ; X32-NEXT:    movl %edx, %ebp
2637 ; X32-NEXT:    movl %eax, %edi
2638 ; X32-NEXT:    addl %esi, %edi
2639 ; X32-NEXT:    adcl $0, %ebp
2640 ; X32-NEXT:    movl %ebx, %eax
2641 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2642 ; X32-NEXT:    mull %esi
2643 ; X32-NEXT:    movl %edx, %ebx
2644 ; X32-NEXT:    addl %edi, %eax
2645 ; X32-NEXT:    movl %eax, %edi
2646 ; X32-NEXT:    adcl %ebp, %ebx
2647 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2648 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2649 ; X32-NEXT:    mull %esi
2650 ; X32-NEXT:    movl %eax, %esi
2651 ; X32-NEXT:    addl %ebx, %esi
2652 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2653 ; X32-NEXT:    adcl %eax, %edx
2654 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2655 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2656 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2657 ; X32-NEXT:    adcl $0, %esi
2658 ; X32-NEXT:    adcl $0, %edx
2659 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2660 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2661 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2662 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2663 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2664 ; X32-NEXT:    movl %ebp, %eax
2665 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2666 ; X32-NEXT:    mull %edi
2667 ; X32-NEXT:    movl %edx, %ecx
2668 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2669 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2670 ; X32-NEXT:    mull %edi
2671 ; X32-NEXT:    movl %edx, %edi
2672 ; X32-NEXT:    movl %eax, %ebx
2673 ; X32-NEXT:    addl %ecx, %ebx
2674 ; X32-NEXT:    adcl $0, %edi
2675 ; X32-NEXT:    movl %ebp, %eax
2676 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2677 ; X32-NEXT:    mull %ebp
2678 ; X32-NEXT:    movl %edx, %ecx
2679 ; X32-NEXT:    addl %ebx, %eax
2680 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2681 ; X32-NEXT:    adcl %edi, %ecx
2682 ; X32-NEXT:    setb %bl
2683 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2684 ; X32-NEXT:    mull %ebp
2685 ; X32-NEXT:    addl %ecx, %eax
2686 ; X32-NEXT:    movzbl %bl, %ecx
2687 ; X32-NEXT:    adcl %ecx, %edx
2688 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2689 ; X32-NEXT:    addl %esi, %ecx
2690 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2691 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2692 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
2693 ; X32-NEXT:    adcl %edi, %eax
2694 ; X32-NEXT:    adcl $0, %edx
2695 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2696 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2697 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2698 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2699 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2700 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2701 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2702 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2703 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2704 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2705 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2706 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2707 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2708 ; X32-NEXT:    movl 80(%eax), %esi
2709 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2710 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2711 ; X32-NEXT:    movl %ebp, %eax
2712 ; X32-NEXT:    mull %esi
2713 ; X32-NEXT:    movl %edx, %ecx
2714 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2715 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2716 ; X32-NEXT:    movl %edi, %eax
2717 ; X32-NEXT:    mull %esi
2718 ; X32-NEXT:    movl %edx, %esi
2719 ; X32-NEXT:    movl %eax, %ebx
2720 ; X32-NEXT:    addl %ecx, %ebx
2721 ; X32-NEXT:    adcl $0, %esi
2722 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2723 ; X32-NEXT:    movl 84(%eax), %ecx
2724 ; X32-NEXT:    movl %ebp, %eax
2725 ; X32-NEXT:    movl %ecx, %ebp
2726 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2727 ; X32-NEXT:    mull %ecx
2728 ; X32-NEXT:    movl %edx, %ecx
2729 ; X32-NEXT:    addl %ebx, %eax
2730 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2731 ; X32-NEXT:    adcl %esi, %ecx
2732 ; X32-NEXT:    setb %bl
2733 ; X32-NEXT:    movl %edi, %eax
2734 ; X32-NEXT:    mull %ebp
2735 ; X32-NEXT:    addl %ecx, %eax
2736 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2737 ; X32-NEXT:    movzbl %bl, %eax
2738 ; X32-NEXT:    adcl %eax, %edx
2739 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2740 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2741 ; X32-NEXT:    movl %edi, %eax
2742 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2743 ; X32-NEXT:    mull %esi
2744 ; X32-NEXT:    movl %edx, %ecx
2745 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2746 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2747 ; X32-NEXT:    movl %ebx, %eax
2748 ; X32-NEXT:    mull %esi
2749 ; X32-NEXT:    movl %edx, %esi
2750 ; X32-NEXT:    movl %eax, %ebp
2751 ; X32-NEXT:    addl %ecx, %ebp
2752 ; X32-NEXT:    adcl $0, %esi
2753 ; X32-NEXT:    movl %edi, %eax
2754 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2755 ; X32-NEXT:    mull %ecx
2756 ; X32-NEXT:    movl %edx, %edi
2757 ; X32-NEXT:    addl %ebp, %eax
2758 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2759 ; X32-NEXT:    adcl %esi, %edi
2760 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2761 ; X32-NEXT:    movl %ebx, %eax
2762 ; X32-NEXT:    mull %ecx
2763 ; X32-NEXT:    movl %eax, %esi
2764 ; X32-NEXT:    addl %edi, %esi
2765 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2766 ; X32-NEXT:    adcl %eax, %edx
2767 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2768 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2769 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2770 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2771 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2772 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2773 ; X32-NEXT:    movl 88(%eax), %edi
2774 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2775 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2776 ; X32-NEXT:    movl %ecx, %eax
2777 ; X32-NEXT:    mull %edi
2778 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2779 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2780 ; X32-NEXT:    movl %ebx, %eax
2781 ; X32-NEXT:    mull %edi
2782 ; X32-NEXT:    movl %edx, %ebp
2783 ; X32-NEXT:    movl %eax, %ebx
2784 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2785 ; X32-NEXT:    adcl $0, %ebp
2786 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
2787 ; X32-NEXT:    movl 92(%eax), %edi
2788 ; X32-NEXT:    movl %ecx, %eax
2789 ; X32-NEXT:    mull %edi
2790 ; X32-NEXT:    movl %edx, %ecx
2791 ; X32-NEXT:    addl %ebx, %eax
2792 ; X32-NEXT:    movl %eax, %ebx
2793 ; X32-NEXT:    adcl %ebp, %ecx
2794 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2795 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2796 ; X32-NEXT:    mull %edi
2797 ; X32-NEXT:    movl %eax, %ebp
2798 ; X32-NEXT:    addl %ecx, %ebp
2799 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2800 ; X32-NEXT:    adcl %eax, %edx
2801 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2802 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2803 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2804 ; X32-NEXT:    adcl $0, %ebp
2805 ; X32-NEXT:    adcl $0, %edx
2806 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2807 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2808 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2809 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2810 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2811 ; X32-NEXT:    movl %ecx, %eax
2812 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2813 ; X32-NEXT:    mull %esi
2814 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2815 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2816 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2817 ; X32-NEXT:    mull %esi
2818 ; X32-NEXT:    movl %edx, %esi
2819 ; X32-NEXT:    movl %eax, %ebx
2820 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2821 ; X32-NEXT:    adcl $0, %esi
2822 ; X32-NEXT:    movl %ecx, %eax
2823 ; X32-NEXT:    movl %edi, %ecx
2824 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2825 ; X32-NEXT:    mull %edi
2826 ; X32-NEXT:    movl %edx, %edi
2827 ; X32-NEXT:    addl %ebx, %eax
2828 ; X32-NEXT:    movl %eax, %ebx
2829 ; X32-NEXT:    adcl %esi, %edi
2830 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2831 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2832 ; X32-NEXT:    mull %ecx
2833 ; X32-NEXT:    addl %edi, %eax
2834 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2835 ; X32-NEXT:    adcl %ecx, %edx
2836 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2837 ; X32-NEXT:    addl %ebp, %edi
2838 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2839 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2840 ; X32-NEXT:    adcl %ecx, %eax
2841 ; X32-NEXT:    adcl $0, %edx
2842 ; X32-NEXT:    movl %edx, %esi
2843 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2844 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2845 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2846 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2847 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2848 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2849 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2850 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2851 ; X32-NEXT:    movl %edi, %edx
2852 ; X32-NEXT:    adcl $0, %edx
2853 ; X32-NEXT:    adcl $0, %ebx
2854 ; X32-NEXT:    adcl $0, %eax
2855 ; X32-NEXT:    adcl $0, %esi
2856 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2857 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2858 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2859 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2860 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2861 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2862 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2863 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2864 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2865 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2866 ; X32-NEXT:    movl %ebx, %eax
2867 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2868 ; X32-NEXT:    mull %esi
2869 ; X32-NEXT:    movl %edx, %ecx
2870 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2871 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2872 ; X32-NEXT:    movl %ebp, %eax
2873 ; X32-NEXT:    mull %esi
2874 ; X32-NEXT:    movl %edx, %esi
2875 ; X32-NEXT:    movl %eax, %edi
2876 ; X32-NEXT:    addl %ecx, %edi
2877 ; X32-NEXT:    adcl $0, %esi
2878 ; X32-NEXT:    movl %ebx, %eax
2879 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2880 ; X32-NEXT:    mull %ebx
2881 ; X32-NEXT:    movl %edx, %ecx
2882 ; X32-NEXT:    addl %edi, %eax
2883 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2884 ; X32-NEXT:    adcl %esi, %ecx
2885 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2886 ; X32-NEXT:    movl %ebp, %eax
2887 ; X32-NEXT:    mull %ebx
2888 ; X32-NEXT:    addl %ecx, %eax
2889 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2890 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2891 ; X32-NEXT:    adcl %eax, %edx
2892 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2893 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2894 ; X32-NEXT:    movl %ebx, %eax
2895 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2896 ; X32-NEXT:    mull %esi
2897 ; X32-NEXT:    movl %edx, %ecx
2898 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2899 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2900 ; X32-NEXT:    movl %edi, %eax
2901 ; X32-NEXT:    mull %esi
2902 ; X32-NEXT:    movl %edx, %esi
2903 ; X32-NEXT:    movl %eax, %ebp
2904 ; X32-NEXT:    addl %ecx, %ebp
2905 ; X32-NEXT:    adcl $0, %esi
2906 ; X32-NEXT:    movl %ebx, %eax
2907 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2908 ; X32-NEXT:    mull %ecx
2909 ; X32-NEXT:    movl %edx, %ebx
2910 ; X32-NEXT:    addl %ebp, %eax
2911 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2912 ; X32-NEXT:    adcl %esi, %ebx
2913 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2914 ; X32-NEXT:    movl %edi, %eax
2915 ; X32-NEXT:    mull %ecx
2916 ; X32-NEXT:    movl %eax, %ecx
2917 ; X32-NEXT:    addl %ebx, %ecx
2918 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2919 ; X32-NEXT:    adcl %eax, %edx
2920 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2921 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2922 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2923 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2924 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2925 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2926 ; X32-NEXT:    movl %esi, %eax
2927 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2928 ; X32-NEXT:    mull %ebx
2929 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2930 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2931 ; X32-NEXT:    movl %edi, %eax
2932 ; X32-NEXT:    mull %ebx
2933 ; X32-NEXT:    movl %edx, %ebp
2934 ; X32-NEXT:    movl %eax, %edi
2935 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2936 ; X32-NEXT:    adcl $0, %ebp
2937 ; X32-NEXT:    movl %esi, %eax
2938 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2939 ; X32-NEXT:    mull %ebx
2940 ; X32-NEXT:    movl %edx, %esi
2941 ; X32-NEXT:    addl %edi, %eax
2942 ; X32-NEXT:    movl %eax, %edi
2943 ; X32-NEXT:    adcl %ebp, %esi
2944 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2945 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2946 ; X32-NEXT:    mull %ebx
2947 ; X32-NEXT:    movl %ebx, %ebp
2948 ; X32-NEXT:    movl %eax, %ebx
2949 ; X32-NEXT:    addl %esi, %ebx
2950 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2951 ; X32-NEXT:    adcl %eax, %edx
2952 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2953 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2954 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2955 ; X32-NEXT:    adcl $0, %ebx
2956 ; X32-NEXT:    adcl $0, %edx
2957 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2958 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2959 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2960 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2961 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2962 ; X32-NEXT:    movl %ecx, %eax
2963 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2964 ; X32-NEXT:    mull %esi
2965 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2966 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2967 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2968 ; X32-NEXT:    mull %esi
2969 ; X32-NEXT:    movl %edx, %esi
2970 ; X32-NEXT:    movl %eax, %edi
2971 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2972 ; X32-NEXT:    adcl $0, %esi
2973 ; X32-NEXT:    movl %ecx, %eax
2974 ; X32-NEXT:    movl %ebp, %ecx
2975 ; X32-NEXT:    mull %ebp
2976 ; X32-NEXT:    movl %edx, %ebp
2977 ; X32-NEXT:    addl %edi, %eax
2978 ; X32-NEXT:    movl %eax, %edi
2979 ; X32-NEXT:    adcl %esi, %ebp
2980 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2981 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2982 ; X32-NEXT:    mull %ecx
2983 ; X32-NEXT:    addl %ebp, %eax
2984 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2985 ; X32-NEXT:    adcl %ecx, %edx
2986 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2987 ; X32-NEXT:    addl %ebx, %ecx
2988 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2989 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
2990 ; X32-NEXT:    adcl %esi, %eax
2991 ; X32-NEXT:    movl %eax, %esi
2992 ; X32-NEXT:    adcl $0, %edx
2993 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2994 ; X32-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2995 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2996 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2997 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2998 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2999 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3000 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3001 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3002 ; X32-NEXT:    adcl %eax, %ecx
3003 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3004 ; X32-NEXT:    adcl $0, %edi
3005 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3006 ; X32-NEXT:    adcl $0, %esi
3007 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3008 ; X32-NEXT:    adcl $0, %edx
3009 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3010 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3011 ; X32-NEXT:    movl %edi, %eax
3012 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3013 ; X32-NEXT:    mull %esi
3014 ; X32-NEXT:    movl %edx, %ecx
3015 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3016 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3017 ; X32-NEXT:    movl %ebp, %eax
3018 ; X32-NEXT:    mull %esi
3019 ; X32-NEXT:    movl %edx, %esi
3020 ; X32-NEXT:    movl %eax, %ebx
3021 ; X32-NEXT:    addl %ecx, %ebx
3022 ; X32-NEXT:    adcl $0, %esi
3023 ; X32-NEXT:    movl %edi, %eax
3024 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3025 ; X32-NEXT:    mull %edi
3026 ; X32-NEXT:    movl %edx, %ecx
3027 ; X32-NEXT:    addl %ebx, %eax
3028 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3029 ; X32-NEXT:    adcl %esi, %ecx
3030 ; X32-NEXT:    setb %bl
3031 ; X32-NEXT:    movl %ebp, %eax
3032 ; X32-NEXT:    mull %edi
3033 ; X32-NEXT:    addl %ecx, %eax
3034 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3035 ; X32-NEXT:    movzbl %bl, %eax
3036 ; X32-NEXT:    adcl %eax, %edx
3037 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3038 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3039 ; X32-NEXT:    movl %ebp, %eax
3040 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3041 ; X32-NEXT:    mull %edi
3042 ; X32-NEXT:    movl %edx, %ecx
3043 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3044 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3045 ; X32-NEXT:    movl %esi, %eax
3046 ; X32-NEXT:    mull %edi
3047 ; X32-NEXT:    movl %edx, %ebx
3048 ; X32-NEXT:    movl %eax, %edi
3049 ; X32-NEXT:    addl %ecx, %edi
3050 ; X32-NEXT:    adcl $0, %ebx
3051 ; X32-NEXT:    movl %ebp, %eax
3052 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3053 ; X32-NEXT:    mull %ecx
3054 ; X32-NEXT:    movl %edx, %ebp
3055 ; X32-NEXT:    addl %edi, %eax
3056 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3057 ; X32-NEXT:    adcl %ebx, %ebp
3058 ; X32-NEXT:    setb %bl
3059 ; X32-NEXT:    movl %esi, %eax
3060 ; X32-NEXT:    movl %esi, %edi
3061 ; X32-NEXT:    mull %ecx
3062 ; X32-NEXT:    movl %eax, %ecx
3063 ; X32-NEXT:    addl %ebp, %ecx
3064 ; X32-NEXT:    movzbl %bl, %eax
3065 ; X32-NEXT:    adcl %eax, %edx
3066 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3067 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3068 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3069 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3070 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3071 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3072 ; X32-NEXT:    movl %ebx, %eax
3073 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3074 ; X32-NEXT:    mull %esi
3075 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3076 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3077 ; X32-NEXT:    movl %edi, %eax
3078 ; X32-NEXT:    mull %esi
3079 ; X32-NEXT:    movl %edx, %ebp
3080 ; X32-NEXT:    movl %eax, %esi
3081 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3082 ; X32-NEXT:    adcl $0, %ebp
3083 ; X32-NEXT:    movl %ebx, %eax
3084 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3085 ; X32-NEXT:    mull %edi
3086 ; X32-NEXT:    movl %edx, %ebx
3087 ; X32-NEXT:    addl %esi, %eax
3088 ; X32-NEXT:    movl %eax, %esi
3089 ; X32-NEXT:    adcl %ebp, %ebx
3090 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3091 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3092 ; X32-NEXT:    mull %edi
3093 ; X32-NEXT:    movl %edx, %ebp
3094 ; X32-NEXT:    movl %eax, %edi
3095 ; X32-NEXT:    addl %ebx, %edi
3096 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3097 ; X32-NEXT:    adcl %eax, %ebp
3098 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3099 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3100 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3101 ; X32-NEXT:    adcl $0, %edi
3102 ; X32-NEXT:    adcl $0, %ebp
3103 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3104 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3105 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3106 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3107 ; X32-NEXT:    movl %ecx, %eax
3108 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3109 ; X32-NEXT:    mull %esi
3110 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3111 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3112 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3113 ; X32-NEXT:    mull %esi
3114 ; X32-NEXT:    movl %edx, %esi
3115 ; X32-NEXT:    movl %eax, %ebx
3116 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3117 ; X32-NEXT:    adcl $0, %esi
3118 ; X32-NEXT:    movl %ecx, %eax
3119 ; X32-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
3120 ; X32-NEXT:    movl %edx, %ecx
3121 ; X32-NEXT:    addl %ebx, %eax
3122 ; X32-NEXT:    movl %eax, %ebx
3123 ; X32-NEXT:    adcl %esi, %ecx
3124 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3125 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3126 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3127 ; X32-NEXT:    mull %esi
3128 ; X32-NEXT:    addl %ecx, %eax
3129 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3130 ; X32-NEXT:    adcl %ecx, %edx
3131 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3132 ; X32-NEXT:    adcl %ebp, %ebx
3133 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3134 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3135 ; X32-NEXT:    adcl %ecx, %eax
3136 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3137 ; X32-NEXT:    adcl $0, %edx
3138 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3139 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3140 ; X32-NEXT:    movl %esi, %ecx
3141 ; X32-NEXT:    imull %eax, %ecx
3142 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3143 ; X32-NEXT:    mull %esi
3144 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3145 ; X32-NEXT:    addl %ecx, %edx
3146 ; X32-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3147 ; X32-NEXT:    addl %edx, %esi
3148 ; X32-NEXT:    movl %esi, %ebp
3149 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3150 ; X32-NEXT:    movl %eax, %esi
3151 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3152 ; X32-NEXT:    imull %ebx, %esi
3153 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3154 ; X32-NEXT:    mull %edi
3155 ; X32-NEXT:    movl %eax, %ecx
3156 ; X32-NEXT:    addl %esi, %edx
3157 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3158 ; X32-NEXT:    movl %edi, %eax
3159 ; X32-NEXT:    imull %edi, %esi
3160 ; X32-NEXT:    addl %edx, %esi
3161 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3162 ; X32-NEXT:    movl %ecx, %edi
3163 ; X32-NEXT:    adcl %ebp, %esi
3164 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3165 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3166 ; X32-NEXT:    mull %ecx
3167 ; X32-NEXT:    movl %edx, %ebp
3168 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3169 ; X32-NEXT:    movl %ebx, %eax
3170 ; X32-NEXT:    mull %ecx
3171 ; X32-NEXT:    movl %edx, %esi
3172 ; X32-NEXT:    movl %eax, %ebx
3173 ; X32-NEXT:    addl %ebp, %ebx
3174 ; X32-NEXT:    adcl $0, %esi
3175 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3176 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3177 ; X32-NEXT:    mull %ecx
3178 ; X32-NEXT:    movl %edx, %ebp
3179 ; X32-NEXT:    addl %ebx, %eax
3180 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3181 ; X32-NEXT:    adcl %esi, %ebp
3182 ; X32-NEXT:    setb %bl
3183 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3184 ; X32-NEXT:    mull %ecx
3185 ; X32-NEXT:    addl %ebp, %eax
3186 ; X32-NEXT:    movzbl %bl, %ecx
3187 ; X32-NEXT:    adcl %ecx, %edx
3188 ; X32-NEXT:    addl %edi, %eax
3189 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3190 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3191 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3192 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3193 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3194 ; X32-NEXT:    imull %ebp, %edi
3195 ; X32-NEXT:    movl %ebp, %eax
3196 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3197 ; X32-NEXT:    mull %ecx
3198 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3199 ; X32-NEXT:    addl %edi, %edx
3200 ; X32-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3201 ; X32-NEXT:    addl %edx, %ecx
3202 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3203 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3204 ; X32-NEXT:    movl %eax, %ecx
3205 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3206 ; X32-NEXT:    imull %ebx, %ecx
3207 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3208 ; X32-NEXT:    mull %edi
3209 ; X32-NEXT:    movl %eax, %esi
3210 ; X32-NEXT:    addl %ecx, %edx
3211 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3212 ; X32-NEXT:    imull %edi, %ecx
3213 ; X32-NEXT:    addl %edx, %ecx
3214 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3215 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3216 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3217 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3218 ; X32-NEXT:    movl %edi, %eax
3219 ; X32-NEXT:    mull %ebp
3220 ; X32-NEXT:    movl %edx, %esi
3221 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3222 ; X32-NEXT:    movl %ebx, %eax
3223 ; X32-NEXT:    mull %ebp
3224 ; X32-NEXT:    movl %edx, %ebp
3225 ; X32-NEXT:    movl %eax, %ecx
3226 ; X32-NEXT:    addl %esi, %ecx
3227 ; X32-NEXT:    adcl $0, %ebp
3228 ; X32-NEXT:    movl %edi, %eax
3229 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3230 ; X32-NEXT:    mull %esi
3231 ; X32-NEXT:    movl %edx, %ebx
3232 ; X32-NEXT:    movl %eax, %edi
3233 ; X32-NEXT:    addl %ecx, %edi
3234 ; X32-NEXT:    adcl %ebp, %ebx
3235 ; X32-NEXT:    setb %cl
3236 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3237 ; X32-NEXT:    mull %esi
3238 ; X32-NEXT:    addl %ebx, %eax
3239 ; X32-NEXT:    movzbl %cl, %ecx
3240 ; X32-NEXT:    adcl %ecx, %edx
3241 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3242 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3243 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3244 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3245 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3246 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3247 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3248 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3249 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3250 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3251 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3252 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3253 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3254 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3255 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3256 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3257 ; X32-NEXT:    movl 104(%esi), %ebx
3258 ; X32-NEXT:    movl %ebx, %eax
3259 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3260 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3261 ; X32-NEXT:    mull %edi
3262 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3263 ; X32-NEXT:    movl %edx, %ecx
3264 ; X32-NEXT:    movl 108(%esi), %esi
3265 ; X32-NEXT:    movl %esi, %eax
3266 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3267 ; X32-NEXT:    mull %edi
3268 ; X32-NEXT:    movl %edx, %edi
3269 ; X32-NEXT:    movl %eax, %ebp
3270 ; X32-NEXT:    addl %ecx, %ebp
3271 ; X32-NEXT:    adcl $0, %edi
3272 ; X32-NEXT:    movl %ebx, %eax
3273 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3274 ; X32-NEXT:    mull %ebx
3275 ; X32-NEXT:    movl %edx, %ecx
3276 ; X32-NEXT:    addl %ebp, %eax
3277 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3278 ; X32-NEXT:    adcl %edi, %ecx
3279 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3280 ; X32-NEXT:    movl %esi, %eax
3281 ; X32-NEXT:    mull %ebx
3282 ; X32-NEXT:    addl %ecx, %eax
3283 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3284 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3285 ; X32-NEXT:    adcl %eax, %edx
3286 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3287 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3288 ; X32-NEXT:    movl 96(%esi), %eax
3289 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3290 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3291 ; X32-NEXT:    mull %edi
3292 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3293 ; X32-NEXT:    movl %edx, %ecx
3294 ; X32-NEXT:    movl 100(%esi), %eax
3295 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3296 ; X32-NEXT:    mull %edi
3297 ; X32-NEXT:    movl %edx, %ebp
3298 ; X32-NEXT:    movl %eax, %ebx
3299 ; X32-NEXT:    addl %ecx, %ebx
3300 ; X32-NEXT:    adcl $0, %ebp
3301 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3302 ; X32-NEXT:    movl %edi, %eax
3303 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3304 ; X32-NEXT:    mull %ecx
3305 ; X32-NEXT:    movl %edx, %esi
3306 ; X32-NEXT:    addl %ebx, %eax
3307 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3308 ; X32-NEXT:    adcl %ebp, %esi
3309 ; X32-NEXT:    setb %bl
3310 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3311 ; X32-NEXT:    movl %ebp, %eax
3312 ; X32-NEXT:    mull %ecx
3313 ; X32-NEXT:    movl %eax, %ecx
3314 ; X32-NEXT:    addl %esi, %ecx
3315 ; X32-NEXT:    movzbl %bl, %eax
3316 ; X32-NEXT:    adcl %eax, %edx
3317 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3318 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3319 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3320 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3321 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3322 ; X32-NEXT:    movl %edi, %eax
3323 ; X32-NEXT:    movl %edi, %esi
3324 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3325 ; X32-NEXT:    mull %edi
3326 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3327 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3328 ; X32-NEXT:    movl %ebp, %eax
3329 ; X32-NEXT:    mull %edi
3330 ; X32-NEXT:    movl %edx, %ebx
3331 ; X32-NEXT:    movl %eax, %edi
3332 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3333 ; X32-NEXT:    adcl $0, %ebx
3334 ; X32-NEXT:    movl %esi, %eax
3335 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3336 ; X32-NEXT:    mull %esi
3337 ; X32-NEXT:    movl %edx, %ebp
3338 ; X32-NEXT:    addl %edi, %eax
3339 ; X32-NEXT:    movl %eax, %edi
3340 ; X32-NEXT:    adcl %ebx, %ebp
3341 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3342 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3343 ; X32-NEXT:    mull %esi
3344 ; X32-NEXT:    movl %esi, %ebx
3345 ; X32-NEXT:    movl %eax, %esi
3346 ; X32-NEXT:    addl %ebp, %esi
3347 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3348 ; X32-NEXT:    adcl %eax, %edx
3349 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3350 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3351 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3352 ; X32-NEXT:    adcl $0, %esi
3353 ; X32-NEXT:    adcl $0, %edx
3354 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3355 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3356 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3357 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3358 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3359 ; X32-NEXT:    movl %ecx, %eax
3360 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3361 ; X32-NEXT:    mull %edi
3362 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3363 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3364 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3365 ; X32-NEXT:    mull %edi
3366 ; X32-NEXT:    movl %edx, %edi
3367 ; X32-NEXT:    movl %eax, %ebp
3368 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3369 ; X32-NEXT:    adcl $0, %edi
3370 ; X32-NEXT:    movl %ecx, %eax
3371 ; X32-NEXT:    movl %ebx, %ecx
3372 ; X32-NEXT:    mull %ebx
3373 ; X32-NEXT:    movl %edx, %ebx
3374 ; X32-NEXT:    addl %ebp, %eax
3375 ; X32-NEXT:    movl %eax, %ebp
3376 ; X32-NEXT:    adcl %edi, %ebx
3377 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3378 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3379 ; X32-NEXT:    mull %ecx
3380 ; X32-NEXT:    addl %ebx, %eax
3381 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3382 ; X32-NEXT:    adcl %ecx, %edx
3383 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3384 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3385 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3386 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3387 ; X32-NEXT:    adcl %ecx, %eax
3388 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3389 ; X32-NEXT:    adcl $0, %edx
3390 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3391 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3392 ; X32-NEXT:    movl 112(%ecx), %edi
3393 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3394 ; X32-NEXT:    imull %edi, %ebx
3395 ; X32-NEXT:    movl %edi, %eax
3396 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3397 ; X32-NEXT:    mull %esi
3398 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3399 ; X32-NEXT:    addl %ebx, %edx
3400 ; X32-NEXT:    movl 116(%ecx), %eax
3401 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3402 ; X32-NEXT:    imull %eax, %esi
3403 ; X32-NEXT:    addl %edx, %esi
3404 ; X32-NEXT:    movl %esi, %ebx
3405 ; X32-NEXT:    movl 120(%ecx), %eax
3406 ; X32-NEXT:    movl %eax, %esi
3407 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3408 ; X32-NEXT:    imull %ecx, %esi
3409 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3410 ; X32-NEXT:    mull %ebp
3411 ; X32-NEXT:    addl %esi, %edx
3412 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3413 ; X32-NEXT:    movl 124(%esi), %esi
3414 ; X32-NEXT:    imull %ebp, %esi
3415 ; X32-NEXT:    addl %edx, %esi
3416 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3417 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3418 ; X32-NEXT:    adcl %ebx, %esi
3419 ; X32-NEXT:    movl %ebp, %eax
3420 ; X32-NEXT:    mull %edi
3421 ; X32-NEXT:    movl %edx, %ebp
3422 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3423 ; X32-NEXT:    movl %ecx, %eax
3424 ; X32-NEXT:    mull %edi
3425 ; X32-NEXT:    movl %edx, %ecx
3426 ; X32-NEXT:    movl %eax, %ebx
3427 ; X32-NEXT:    addl %ebp, %ebx
3428 ; X32-NEXT:    adcl $0, %ecx
3429 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3430 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3431 ; X32-NEXT:    mull %edi
3432 ; X32-NEXT:    movl %edx, %ebp
3433 ; X32-NEXT:    addl %ebx, %eax
3434 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3435 ; X32-NEXT:    adcl %ecx, %ebp
3436 ; X32-NEXT:    setb %bl
3437 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3438 ; X32-NEXT:    mull %edi
3439 ; X32-NEXT:    addl %ebp, %eax
3440 ; X32-NEXT:    movzbl %bl, %ecx
3441 ; X32-NEXT:    adcl %ecx, %edx
3442 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3443 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3444 ; X32-NEXT:    adcl %esi, %edx
3445 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3446 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3447 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3448 ; X32-NEXT:    imull %eax, %edi
3449 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3450 ; X32-NEXT:    mull %ebp
3451 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3452 ; X32-NEXT:    addl %edi, %edx
3453 ; X32-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3454 ; X32-NEXT:    addl %edx, %ebp
3455 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3456 ; X32-NEXT:    movl %eax, %edi
3457 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3458 ; X32-NEXT:    imull %ebx, %edi
3459 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3460 ; X32-NEXT:    mull %ecx
3461 ; X32-NEXT:    movl %eax, %esi
3462 ; X32-NEXT:    addl %edi, %edx
3463 ; X32-NEXT:    movl %ecx, %eax
3464 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3465 ; X32-NEXT:    imull %eax, %ecx
3466 ; X32-NEXT:    addl %edx, %ecx
3467 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3468 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3469 ; X32-NEXT:    adcl %ebp, %ecx
3470 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3471 ; X32-NEXT:    movl %eax, %esi
3472 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3473 ; X32-NEXT:    mull %ecx
3474 ; X32-NEXT:    movl %edx, %ebp
3475 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3476 ; X32-NEXT:    movl %ebx, %eax
3477 ; X32-NEXT:    mull %ecx
3478 ; X32-NEXT:    movl %edx, %edi
3479 ; X32-NEXT:    movl %eax, %ebx
3480 ; X32-NEXT:    addl %ebp, %ebx
3481 ; X32-NEXT:    adcl $0, %edi
3482 ; X32-NEXT:    movl %esi, %eax
3483 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3484 ; X32-NEXT:    mull %esi
3485 ; X32-NEXT:    movl %edx, %ebp
3486 ; X32-NEXT:    movl %eax, %ecx
3487 ; X32-NEXT:    addl %ebx, %ecx
3488 ; X32-NEXT:    adcl %edi, %ebp
3489 ; X32-NEXT:    setb %bl
3490 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3491 ; X32-NEXT:    mull %esi
3492 ; X32-NEXT:    addl %ebp, %eax
3493 ; X32-NEXT:    movzbl %bl, %edi
3494 ; X32-NEXT:    adcl %edi, %edx
3495 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3496 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3497 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3498 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3499 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3500 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3501 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3502 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3503 ; X32-NEXT:    movl %esi, %edi
3504 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3505 ; X32-NEXT:    movl %ecx, %ebx
3506 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3507 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3508 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3509 ; X32-NEXT:    movl %edx, %ebp
3510 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3511 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3512 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3513 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3514 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
3515 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3516 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3517 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3518 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3519 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3520 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3521 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3522 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3523 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3524 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3525 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3526 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3527 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3528 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3529 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3530 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3531 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3532 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3533 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3534 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3535 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3536 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3537 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3538 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3539 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3540 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3541 ; X32-NEXT:    movl 88(%esi), %ebp
3542 ; X32-NEXT:    movl %ebp, %eax
3543 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3544 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3545 ; X32-NEXT:    mull %edi
3546 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3547 ; X32-NEXT:    movl %edx, %ecx
3548 ; X32-NEXT:    movl 92(%esi), %ebx
3549 ; X32-NEXT:    movl %ebx, %eax
3550 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3551 ; X32-NEXT:    mull %edi
3552 ; X32-NEXT:    movl %edx, %esi
3553 ; X32-NEXT:    movl %eax, %edi
3554 ; X32-NEXT:    addl %ecx, %edi
3555 ; X32-NEXT:    adcl $0, %esi
3556 ; X32-NEXT:    movl %ebp, %eax
3557 ; X32-NEXT:    movl (%esp), %ebp # 4-byte Reload
3558 ; X32-NEXT:    mull %ebp
3559 ; X32-NEXT:    movl %edx, %ecx
3560 ; X32-NEXT:    addl %edi, %eax
3561 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3562 ; X32-NEXT:    adcl %esi, %ecx
3563 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3564 ; X32-NEXT:    movl %ebx, %eax
3565 ; X32-NEXT:    mull %ebp
3566 ; X32-NEXT:    movl %ebp, %ebx
3567 ; X32-NEXT:    addl %ecx, %eax
3568 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3569 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3570 ; X32-NEXT:    adcl %eax, %edx
3571 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3572 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3573 ; X32-NEXT:    movl 80(%esi), %edi
3574 ; X32-NEXT:    movl %edi, %eax
3575 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3576 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3577 ; X32-NEXT:    mull %ebp
3578 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3579 ; X32-NEXT:    movl %edx, %ecx
3580 ; X32-NEXT:    movl 84(%esi), %eax
3581 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3582 ; X32-NEXT:    mull %ebp
3583 ; X32-NEXT:    movl %edx, %esi
3584 ; X32-NEXT:    movl %eax, %ebp
3585 ; X32-NEXT:    addl %ecx, %ebp
3586 ; X32-NEXT:    adcl $0, %esi
3587 ; X32-NEXT:    movl %edi, %eax
3588 ; X32-NEXT:    movl %ebx, %ecx
3589 ; X32-NEXT:    mull %ebx
3590 ; X32-NEXT:    movl %edx, %ebx
3591 ; X32-NEXT:    addl %ebp, %eax
3592 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3593 ; X32-NEXT:    adcl %esi, %ebx
3594 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3595 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3596 ; X32-NEXT:    movl %edi, %eax
3597 ; X32-NEXT:    mull %ecx
3598 ; X32-NEXT:    movl %eax, %ecx
3599 ; X32-NEXT:    addl %ebx, %ecx
3600 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3601 ; X32-NEXT:    adcl %eax, %edx
3602 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3603 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3604 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3605 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3606 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3607 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3608 ; X32-NEXT:    movl %ebx, %eax
3609 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3610 ; X32-NEXT:    mull %esi
3611 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3612 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3613 ; X32-NEXT:    movl %edi, %eax
3614 ; X32-NEXT:    mull %esi
3615 ; X32-NEXT:    movl %edx, %ebp
3616 ; X32-NEXT:    movl %eax, %edi
3617 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3618 ; X32-NEXT:    adcl $0, %ebp
3619 ; X32-NEXT:    movl %ebx, %eax
3620 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3621 ; X32-NEXT:    mull %ebx
3622 ; X32-NEXT:    movl %edx, %esi
3623 ; X32-NEXT:    addl %edi, %eax
3624 ; X32-NEXT:    movl %eax, %edi
3625 ; X32-NEXT:    adcl %ebp, %esi
3626 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3627 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3628 ; X32-NEXT:    mull %ebx
3629 ; X32-NEXT:    movl %ebx, %ebp
3630 ; X32-NEXT:    movl %eax, %ebx
3631 ; X32-NEXT:    addl %esi, %ebx
3632 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3633 ; X32-NEXT:    adcl %eax, %edx
3634 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3635 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3636 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3637 ; X32-NEXT:    adcl $0, %ebx
3638 ; X32-NEXT:    adcl $0, %edx
3639 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3640 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3641 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3642 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3643 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3644 ; X32-NEXT:    movl %ecx, %eax
3645 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3646 ; X32-NEXT:    mull %esi
3647 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3648 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3649 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3650 ; X32-NEXT:    mull %esi
3651 ; X32-NEXT:    movl %edx, %esi
3652 ; X32-NEXT:    movl %eax, %edi
3653 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3654 ; X32-NEXT:    adcl $0, %esi
3655 ; X32-NEXT:    movl %ecx, %eax
3656 ; X32-NEXT:    movl %ebp, %ecx
3657 ; X32-NEXT:    mull %ebp
3658 ; X32-NEXT:    movl %edx, %ebp
3659 ; X32-NEXT:    addl %edi, %eax
3660 ; X32-NEXT:    movl %eax, %edi
3661 ; X32-NEXT:    adcl %esi, %ebp
3662 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3663 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3664 ; X32-NEXT:    mull %ecx
3665 ; X32-NEXT:    addl %ebp, %eax
3666 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3667 ; X32-NEXT:    adcl %ecx, %edx
3668 ; X32-NEXT:    addl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3669 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3670 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3671 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3672 ; X32-NEXT:    adcl %ecx, %eax
3673 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3674 ; X32-NEXT:    adcl $0, %edx
3675 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3676 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %esi
3677 ; X32-NEXT:    movl 72(%esi), %ebp
3678 ; X32-NEXT:    movl %ebp, %eax
3679 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3680 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3681 ; X32-NEXT:    mull %edi
3682 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3683 ; X32-NEXT:    movl %edx, %ecx
3684 ; X32-NEXT:    movl 76(%esi), %ebx
3685 ; X32-NEXT:    movl %ebx, %eax
3686 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3687 ; X32-NEXT:    mull %edi
3688 ; X32-NEXT:    movl %edx, %esi
3689 ; X32-NEXT:    movl %eax, %edi
3690 ; X32-NEXT:    addl %ecx, %edi
3691 ; X32-NEXT:    adcl $0, %esi
3692 ; X32-NEXT:    movl %ebp, %eax
3693 ; X32-NEXT:    movl (%esp), %ebp # 4-byte Reload
3694 ; X32-NEXT:    mull %ebp
3695 ; X32-NEXT:    movl %edx, %ecx
3696 ; X32-NEXT:    addl %edi, %eax
3697 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3698 ; X32-NEXT:    adcl %esi, %ecx
3699 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3700 ; X32-NEXT:    movl %ebx, %eax
3701 ; X32-NEXT:    mull %ebp
3702 ; X32-NEXT:    addl %ecx, %eax
3703 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3704 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3705 ; X32-NEXT:    adcl %eax, %edx
3706 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3707 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ebx
3708 ; X32-NEXT:    movl 64(%ebx), %ecx
3709 ; X32-NEXT:    movl %ecx, %eax
3710 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3711 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3712 ; X32-NEXT:    mull %esi
3713 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3714 ; X32-NEXT:    movl %edx, %edi
3715 ; X32-NEXT:    movl 68(%ebx), %eax
3716 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3717 ; X32-NEXT:    mull %esi
3718 ; X32-NEXT:    movl %edx, %esi
3719 ; X32-NEXT:    movl %eax, %ebp
3720 ; X32-NEXT:    addl %edi, %ebp
3721 ; X32-NEXT:    adcl $0, %esi
3722 ; X32-NEXT:    movl %ecx, %eax
3723 ; X32-NEXT:    movl (%esp), %edi # 4-byte Reload
3724 ; X32-NEXT:    mull %edi
3725 ; X32-NEXT:    movl %edx, %ebx
3726 ; X32-NEXT:    addl %ebp, %eax
3727 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3728 ; X32-NEXT:    adcl %esi, %ebx
3729 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3730 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3731 ; X32-NEXT:    movl %ebp, %eax
3732 ; X32-NEXT:    mull %edi
3733 ; X32-NEXT:    movl %eax, %ecx
3734 ; X32-NEXT:    addl %ebx, %ecx
3735 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3736 ; X32-NEXT:    adcl %eax, %edx
3737 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3738 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3739 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3740 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3741 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3742 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3743 ; X32-NEXT:    movl %ebx, %eax
3744 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3745 ; X32-NEXT:    mull %esi
3746 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3747 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3748 ; X32-NEXT:    movl %ebp, %eax
3749 ; X32-NEXT:    mull %esi
3750 ; X32-NEXT:    movl %edx, %ebp
3751 ; X32-NEXT:    movl %eax, %edi
3752 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3753 ; X32-NEXT:    adcl $0, %ebp
3754 ; X32-NEXT:    movl %ebx, %eax
3755 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3756 ; X32-NEXT:    mull %ebx
3757 ; X32-NEXT:    movl %edx, %esi
3758 ; X32-NEXT:    addl %edi, %eax
3759 ; X32-NEXT:    movl %eax, %edi
3760 ; X32-NEXT:    adcl %ebp, %esi
3761 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3762 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3763 ; X32-NEXT:    mull %ebx
3764 ; X32-NEXT:    movl %eax, %ebx
3765 ; X32-NEXT:    addl %esi, %ebx
3766 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3767 ; X32-NEXT:    adcl %eax, %edx
3768 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3769 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3770 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3771 ; X32-NEXT:    adcl $0, %ebx
3772 ; X32-NEXT:    adcl $0, %edx
3773 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3774 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3775 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3776 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3777 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3778 ; X32-NEXT:    movl %ebp, %eax
3779 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3780 ; X32-NEXT:    mull %esi
3781 ; X32-NEXT:    movl %edx, %ecx
3782 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3783 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3784 ; X32-NEXT:    mull %esi
3785 ; X32-NEXT:    movl %edx, %esi
3786 ; X32-NEXT:    movl %eax, %edi
3787 ; X32-NEXT:    addl %ecx, %edi
3788 ; X32-NEXT:    adcl $0, %esi
3789 ; X32-NEXT:    movl %ebp, %eax
3790 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3791 ; X32-NEXT:    mull %ebp
3792 ; X32-NEXT:    movl %edx, %ecx
3793 ; X32-NEXT:    addl %edi, %eax
3794 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3795 ; X32-NEXT:    adcl %esi, %ecx
3796 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3797 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3798 ; X32-NEXT:    movl %edi, %eax
3799 ; X32-NEXT:    mull %ebp
3800 ; X32-NEXT:    addl %ecx, %eax
3801 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3802 ; X32-NEXT:    adcl %ecx, %edx
3803 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3804 ; X32-NEXT:    addl %ebx, %ecx
3805 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3806 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3807 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 1-byte Folded Reload
3808 ; X32-NEXT:    adcl %ebx, %eax
3809 ; X32-NEXT:    adcl $0, %edx
3810 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3811 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3812 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3813 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3814 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3815 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3816 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3817 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3818 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3819 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3820 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3821 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3822 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3823 ; X32-NEXT:    movl %ebp, %eax
3824 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3825 ; X32-NEXT:    mull %esi
3826 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3827 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3828 ; X32-NEXT:    movl %edi, %eax
3829 ; X32-NEXT:    movl %edi, %ecx
3830 ; X32-NEXT:    mull %esi
3831 ; X32-NEXT:    movl %edx, %esi
3832 ; X32-NEXT:    movl %eax, %ebx
3833 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3834 ; X32-NEXT:    adcl $0, %esi
3835 ; X32-NEXT:    movl %ebp, %eax
3836 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3837 ; X32-NEXT:    mull %edi
3838 ; X32-NEXT:    movl %edx, %ebp
3839 ; X32-NEXT:    addl %ebx, %eax
3840 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3841 ; X32-NEXT:    adcl %esi, %ebp
3842 ; X32-NEXT:    setb %bl
3843 ; X32-NEXT:    movl %ecx, %eax
3844 ; X32-NEXT:    mull %edi
3845 ; X32-NEXT:    addl %ebp, %eax
3846 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3847 ; X32-NEXT:    movzbl %bl, %eax
3848 ; X32-NEXT:    adcl %eax, %edx
3849 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3850 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3851 ; X32-NEXT:    movl %ebx, %eax
3852 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3853 ; X32-NEXT:    mull %ecx
3854 ; X32-NEXT:    movl %edx, %esi
3855 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3856 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3857 ; X32-NEXT:    mull %ecx
3858 ; X32-NEXT:    movl %edx, %ebp
3859 ; X32-NEXT:    movl %eax, %edi
3860 ; X32-NEXT:    addl %esi, %edi
3861 ; X32-NEXT:    adcl $0, %ebp
3862 ; X32-NEXT:    movl %ebx, %eax
3863 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3864 ; X32-NEXT:    mull %esi
3865 ; X32-NEXT:    movl %edx, %ecx
3866 ; X32-NEXT:    addl %edi, %eax
3867 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3868 ; X32-NEXT:    adcl %ebp, %ecx
3869 ; X32-NEXT:    setb %bl
3870 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3871 ; X32-NEXT:    movl %ebp, %eax
3872 ; X32-NEXT:    mull %esi
3873 ; X32-NEXT:    movl %eax, %esi
3874 ; X32-NEXT:    addl %ecx, %esi
3875 ; X32-NEXT:    movzbl %bl, %eax
3876 ; X32-NEXT:    adcl %eax, %edx
3877 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3878 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3879 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3880 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3881 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3882 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3883 ; X32-NEXT:    movl %ecx, %eax
3884 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3885 ; X32-NEXT:    mull %edi
3886 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3887 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3888 ; X32-NEXT:    movl %ebp, %eax
3889 ; X32-NEXT:    mull %edi
3890 ; X32-NEXT:    movl %edx, %edi
3891 ; X32-NEXT:    movl %eax, %ebx
3892 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3893 ; X32-NEXT:    adcl $0, %edi
3894 ; X32-NEXT:    movl %ecx, %eax
3895 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3896 ; X32-NEXT:    mull %ecx
3897 ; X32-NEXT:    movl %edx, %ebp
3898 ; X32-NEXT:    addl %ebx, %eax
3899 ; X32-NEXT:    movl %eax, %ebx
3900 ; X32-NEXT:    adcl %edi, %ebp
3901 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3902 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3903 ; X32-NEXT:    mull %ecx
3904 ; X32-NEXT:    movl %eax, %edi
3905 ; X32-NEXT:    addl %ebp, %edi
3906 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3907 ; X32-NEXT:    adcl %eax, %edx
3908 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3909 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3910 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3911 ; X32-NEXT:    adcl $0, %edi
3912 ; X32-NEXT:    adcl $0, %edx
3913 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3914 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3915 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3916 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3917 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3918 ; X32-NEXT:    movl %esi, %eax
3919 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3920 ; X32-NEXT:    mull %ecx
3921 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3922 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3923 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3924 ; X32-NEXT:    mull %ecx
3925 ; X32-NEXT:    movl %edx, %ebx
3926 ; X32-NEXT:    movl %eax, %ebp
3927 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3928 ; X32-NEXT:    adcl $0, %ebx
3929 ; X32-NEXT:    movl %esi, %eax
3930 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3931 ; X32-NEXT:    mull %ecx
3932 ; X32-NEXT:    movl %edx, %esi
3933 ; X32-NEXT:    addl %ebp, %eax
3934 ; X32-NEXT:    movl %eax, %ebp
3935 ; X32-NEXT:    adcl %ebx, %esi
3936 ; X32-NEXT:    setb %bl
3937 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3938 ; X32-NEXT:    mull %ecx
3939 ; X32-NEXT:    addl %esi, %eax
3940 ; X32-NEXT:    movzbl %bl, %esi
3941 ; X32-NEXT:    adcl %esi, %edx
3942 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3943 ; X32-NEXT:    addl %edi, %ebx
3944 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3945 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3946 ; X32-NEXT:    adcl %ecx, %eax
3947 ; X32-NEXT:    adcl $0, %edx
3948 ; X32-NEXT:    movl %edx, %esi
3949 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3950 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3951 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3952 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3953 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3954 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3955 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3956 ; X32-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3957 ; X32-NEXT:    movl %ebx, %edx
3958 ; X32-NEXT:    adcl $0, %edx
3959 ; X32-NEXT:    movl %ebp, %ecx
3960 ; X32-NEXT:    adcl $0, %ecx
3961 ; X32-NEXT:    adcl $0, %eax
3962 ; X32-NEXT:    adcl $0, %esi
3963 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3964 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3965 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3966 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3967 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3968 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3969 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3970 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3971 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3972 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3973 ; X32-NEXT:    movl %ebp, %eax
3974 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3975 ; X32-NEXT:    mull %esi
3976 ; X32-NEXT:    movl %edx, %ecx
3977 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3978 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3979 ; X32-NEXT:    mull %esi
3980 ; X32-NEXT:    movl %edx, %edi
3981 ; X32-NEXT:    movl %eax, %ebx
3982 ; X32-NEXT:    addl %ecx, %ebx
3983 ; X32-NEXT:    adcl $0, %edi
3984 ; X32-NEXT:    movl %ebp, %eax
3985 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3986 ; X32-NEXT:    mull %esi
3987 ; X32-NEXT:    movl %edx, %ecx
3988 ; X32-NEXT:    addl %ebx, %eax
3989 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3990 ; X32-NEXT:    adcl %edi, %ecx
3991 ; X32-NEXT:    setb %bl
3992 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3993 ; X32-NEXT:    mull %esi
3994 ; X32-NEXT:    addl %ecx, %eax
3995 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3996 ; X32-NEXT:    movzbl %bl, %eax
3997 ; X32-NEXT:    adcl %eax, %edx
3998 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3999 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4000 ; X32-NEXT:    movl %esi, %eax
4001 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4002 ; X32-NEXT:    mull %ebx
4003 ; X32-NEXT:    movl %edx, %ecx
4004 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4005 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4006 ; X32-NEXT:    movl %edi, %eax
4007 ; X32-NEXT:    mull %ebx
4008 ; X32-NEXT:    movl %edx, %ebx
4009 ; X32-NEXT:    movl %eax, %ebp
4010 ; X32-NEXT:    addl %ecx, %ebp
4011 ; X32-NEXT:    adcl $0, %ebx
4012 ; X32-NEXT:    movl %esi, %eax
4013 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4014 ; X32-NEXT:    mull %ecx
4015 ; X32-NEXT:    movl %edx, %esi
4016 ; X32-NEXT:    addl %ebp, %eax
4017 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4018 ; X32-NEXT:    adcl %ebx, %esi
4019 ; X32-NEXT:    setb %bl
4020 ; X32-NEXT:    movl %edi, %eax
4021 ; X32-NEXT:    movl %edi, %ebp
4022 ; X32-NEXT:    mull %ecx
4023 ; X32-NEXT:    movl %eax, %ecx
4024 ; X32-NEXT:    addl %esi, %ecx
4025 ; X32-NEXT:    movzbl %bl, %eax
4026 ; X32-NEXT:    adcl %eax, %edx
4027 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4028 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4029 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4030 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4031 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4032 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4033 ; X32-NEXT:    movl %ebx, %eax
4034 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4035 ; X32-NEXT:    mull %edi
4036 ; X32-NEXT:    movl %edx, %esi
4037 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4038 ; X32-NEXT:    movl %ebp, %eax
4039 ; X32-NEXT:    mull %edi
4040 ; X32-NEXT:    movl %edx, %ebp
4041 ; X32-NEXT:    movl %eax, %edi
4042 ; X32-NEXT:    addl %esi, %edi
4043 ; X32-NEXT:    adcl $0, %ebp
4044 ; X32-NEXT:    movl %ebx, %eax
4045 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4046 ; X32-NEXT:    mull %esi
4047 ; X32-NEXT:    movl %edx, %ebx
4048 ; X32-NEXT:    addl %edi, %eax
4049 ; X32-NEXT:    movl %eax, %edi
4050 ; X32-NEXT:    adcl %ebp, %ebx
4051 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4052 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4053 ; X32-NEXT:    mull %esi
4054 ; X32-NEXT:    movl %eax, %ebp
4055 ; X32-NEXT:    addl %ebx, %ebp
4056 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4057 ; X32-NEXT:    adcl %eax, %edx
4058 ; X32-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4059 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4060 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4061 ; X32-NEXT:    adcl $0, %ebp
4062 ; X32-NEXT:    adcl $0, %edx
4063 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4064 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4065 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4066 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4067 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4068 ; X32-NEXT:    movl %ecx, %eax
4069 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4070 ; X32-NEXT:    mull %esi
4071 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4072 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4073 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4074 ; X32-NEXT:    mull %esi
4075 ; X32-NEXT:    movl %edx, %edi
4076 ; X32-NEXT:    movl %eax, %ebx
4077 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4078 ; X32-NEXT:    adcl $0, %edi
4079 ; X32-NEXT:    movl %ecx, %eax
4080 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4081 ; X32-NEXT:    mull %ecx
4082 ; X32-NEXT:    movl %edx, %esi
4083 ; X32-NEXT:    addl %ebx, %eax
4084 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4085 ; X32-NEXT:    adcl %edi, %esi
4086 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4087 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4088 ; X32-NEXT:    mull %ecx
4089 ; X32-NEXT:    movl %eax, %ebx
4090 ; X32-NEXT:    addl %esi, %ebx
4091 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4092 ; X32-NEXT:    adcl %eax, %edx
4093 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4094 ; X32-NEXT:    addl %ebp, %ecx
4095 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4096 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4097 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4098 ; X32-NEXT:    adcl %eax, %ebx
4099 ; X32-NEXT:    adcl $0, %edx
4100 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4101 ; X32-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4102 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4103 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4104 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4105 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4106 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4107 ; X32-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4108 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4109 ; X32-NEXT:    adcl %eax, %ecx
4110 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4111 ; X32-NEXT:    adcl $0, %edi
4112 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4113 ; X32-NEXT:    adcl $0, %ebx
4114 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4115 ; X32-NEXT:    adcl $0, %edx
4116 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4117 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
4118 ; X32-NEXT:    movl 96(%eax), %edi
4119 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4120 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4121 ; X32-NEXT:    movl %esi, %eax
4122 ; X32-NEXT:    mull %edi
4123 ; X32-NEXT:    movl %edx, %ecx
4124 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4125 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4126 ; X32-NEXT:    movl %ebp, %eax
4127 ; X32-NEXT:    mull %edi
4128 ; X32-NEXT:    movl %edx, %edi
4129 ; X32-NEXT:    movl %eax, %ebx
4130 ; X32-NEXT:    addl %ecx, %ebx
4131 ; X32-NEXT:    adcl $0, %edi
4132 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
4133 ; X32-NEXT:    movl 100(%eax), %ecx
4134 ; X32-NEXT:    movl %esi, %eax
4135 ; X32-NEXT:    movl %ecx, %esi
4136 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4137 ; X32-NEXT:    mull %ecx
4138 ; X32-NEXT:    movl %edx, %ecx
4139 ; X32-NEXT:    addl %ebx, %eax
4140 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4141 ; X32-NEXT:    adcl %edi, %ecx
4142 ; X32-NEXT:    setb %bl
4143 ; X32-NEXT:    movl %ebp, %eax
4144 ; X32-NEXT:    mull %esi
4145 ; X32-NEXT:    addl %ecx, %eax
4146 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4147 ; X32-NEXT:    movzbl %bl, %eax
4148 ; X32-NEXT:    adcl %eax, %edx
4149 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4150 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4151 ; X32-NEXT:    movl %esi, %eax
4152 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4153 ; X32-NEXT:    mull %edi
4154 ; X32-NEXT:    movl %edx, %ecx
4155 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4156 ; X32-NEXT:    movl (%esp), %ebx # 4-byte Reload
4157 ; X32-NEXT:    movl %ebx, %eax
4158 ; X32-NEXT:    mull %edi
4159 ; X32-NEXT:    movl %edx, %edi
4160 ; X32-NEXT:    movl %eax, %ebp
4161 ; X32-NEXT:    addl %ecx, %ebp
4162 ; X32-NEXT:    adcl $0, %edi
4163 ; X32-NEXT:    movl %esi, %eax
4164 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4165 ; X32-NEXT:    mull %ecx
4166 ; X32-NEXT:    movl %edx, %esi
4167 ; X32-NEXT:    addl %ebp, %eax
4168 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4169 ; X32-NEXT:    adcl %edi, %esi
4170 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4171 ; X32-NEXT:    movl %ebx, %eax
4172 ; X32-NEXT:    mull %ecx
4173 ; X32-NEXT:    movl %eax, %edi
4174 ; X32-NEXT:    addl %esi, %edi
4175 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4176 ; X32-NEXT:    adcl %eax, %edx
4177 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4178 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4179 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4180 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4181 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4182 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
4183 ; X32-NEXT:    movl 104(%eax), %esi
4184 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4185 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4186 ; X32-NEXT:    movl %ecx, %eax
4187 ; X32-NEXT:    mull %esi
4188 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4189 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4190 ; X32-NEXT:    movl %ebx, %eax
4191 ; X32-NEXT:    mull %esi
4192 ; X32-NEXT:    movl %edx, %ebp
4193 ; X32-NEXT:    movl %eax, %ebx
4194 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4195 ; X32-NEXT:    adcl $0, %ebp
4196 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %eax
4197 ; X32-NEXT:    movl 108(%eax), %esi
4198 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4199 ; X32-NEXT:    movl %ecx, %eax
4200 ; X32-NEXT:    mull %esi
4201 ; X32-NEXT:    movl %edx, %ecx
4202 ; X32-NEXT:    addl %ebx, %eax
4203 ; X32-NEXT:    movl %eax, %ebx
4204 ; X32-NEXT:    adcl %ebp, %ecx
4205 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4206 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
4207 ; X32-NEXT:    mull %esi
4208 ; X32-NEXT:    movl %edx, %ebp
4209 ; X32-NEXT:    movl %eax, %esi
4210 ; X32-NEXT:    addl %ecx, %esi
4211 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4212 ; X32-NEXT:    adcl %eax, %ebp
4213 ; X32-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4214 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4215 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4216 ; X32-NEXT:    adcl $0, %esi
4217 ; X32-NEXT:    adcl $0, %ebp
4218 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4219 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4220 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4221 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4222 ; X32-NEXT:    movl %ecx, %eax
4223 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4224 ; X32-NEXT:    mull %edi
4225 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4226 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4227 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4228 ; X32-NEXT:    mull %edi
4229 ; X32-NEXT:    movl %edx, %edi
4230 ; X32-NEXT:    movl %eax, %ebx
4231 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4232 ; X32-NEXT:    adcl $0, %edi
4233 ; X32-NEXT:    movl %ecx, %eax
4234 ; X32-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
4235 ; X32-NEXT:    movl %edx, %ecx
4236 ; X32-NEXT:    addl %ebx, %eax
4237 ; X32-NEXT:    movl %eax, %ebx
4238 ; X32-NEXT:    adcl %edi, %ecx
4239 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4240 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4241 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4242 ; X32-NEXT:    mull %edi
4243 ; X32-NEXT:    addl %ecx, %eax
4244 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
4245 ; X32-NEXT:    adcl %ecx, %edx
4246 ; X32-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4247 ; X32-NEXT:    adcl %ebp, %ebx
4248 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4249 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
4250 ; X32-NEXT:    adcl %ecx, %eax
4251 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4252 ; X32-NEXT:    adcl $0, %edx
4253 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4254 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4255 ; X32-NEXT:    movl %edi, %esi
4256 ; X32-NEXT:    imull %eax, %esi
4257 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4258 ; X32-NEXT:    mull %ecx
4259 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4260 ; X32-NEXT:    addl %esi, %edx
4261 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4262 ; X32-NEXT:    imull %ebx, %ecx
4263 ; X32-NEXT:    addl %edx, %ecx
4264 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4265 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4266 ; X32-NEXT:    movl %eax, %esi
4267 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4268 ; X32-NEXT:    imull %edi, %esi
4269 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4270 ; X32-NEXT:    mull %ebp
4271 ; X32-NEXT:    movl %eax, %ecx
4272 ; X32-NEXT:    addl %esi, %edx
4273 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4274 ; X32-NEXT:    movl %ebp, %eax
4275 ; X32-NEXT:    imull %ebp, %esi
4276 ; X32-NEXT:    addl %edx, %esi
4277 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4278 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4279 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4280 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4281 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4282 ; X32-NEXT:    mull %ecx
4283 ; X32-NEXT:    movl %edx, %ebp
4284 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4285 ; X32-NEXT:    movl %edi, %eax
4286 ; X32-NEXT:    mull %ecx
4287 ; X32-NEXT:    movl %edx, %esi
4288 ; X32-NEXT:    movl %eax, %edi
4289 ; X32-NEXT:    addl %ebp, %edi
4290 ; X32-NEXT:    adcl $0, %esi
4291 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4292 ; X32-NEXT:    mull %ebx
4293 ; X32-NEXT:    movl %ebx, %ebp
4294 ; X32-NEXT:    movl %edx, %ecx
4295 ; X32-NEXT:    addl %edi, %eax
4296 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4297 ; X32-NEXT:    adcl %esi, %ecx
4298 ; X32-NEXT:    setb %bl
4299 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4300 ; X32-NEXT:    mull %ebp
4301 ; X32-NEXT:    addl %ecx, %eax
4302 ; X32-NEXT:    movzbl %bl, %ecx
4303 ; X32-NEXT:    adcl %ecx, %edx
4304 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4305 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4306 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4307 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4308 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %edi
4309 ; X32-NEXT:    movl 124(%edi), %ecx
4310 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4311 ; X32-NEXT:    imull %eax, %ecx
4312 ; X32-NEXT:    movl 120(%edi), %esi
4313 ; X32-NEXT:    movl %edi, %ebx
4314 ; X32-NEXT:    mull %esi
4315 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4316 ; X32-NEXT:    addl %ecx, %edx
4317 ; X32-NEXT:    imull (%esp), %esi # 4-byte Folded Reload
4318 ; X32-NEXT:    addl %edx, %esi
4319 ; X32-NEXT:    movl 112(%edi), %edi
4320 ; X32-NEXT:    movl 116(%ebx), %ebp
4321 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4322 ; X32-NEXT:    movl %eax, %ebx
4323 ; X32-NEXT:    imull %ebp, %ebx
4324 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4325 ; X32-NEXT:    mull %edi
4326 ; X32-NEXT:    addl %ebx, %edx
4327 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4328 ; X32-NEXT:    imull %edi, %ecx
4329 ; X32-NEXT:    addl %edx, %ecx
4330 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4331 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4332 ; X32-NEXT:    adcl %esi, %ecx
4333 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4334 ; X32-NEXT:    movl %edi, %eax
4335 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4336 ; X32-NEXT:    mull %ecx
4337 ; X32-NEXT:    movl %edx, %esi
4338 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4339 ; X32-NEXT:    movl %ebp, %eax
4340 ; X32-NEXT:    mull %ecx
4341 ; X32-NEXT:    movl %edx, %ebx
4342 ; X32-NEXT:    movl %eax, %ebp
4343 ; X32-NEXT:    addl %esi, %ebp
4344 ; X32-NEXT:    adcl $0, %ebx
4345 ; X32-NEXT:    movl %edi, %eax
4346 ; X32-NEXT:    movl (%esp), %esi # 4-byte Reload
4347 ; X32-NEXT:    mull %esi
4348 ; X32-NEXT:    movl %edx, %ecx
4349 ; X32-NEXT:    movl %eax, %edi
4350 ; X32-NEXT:    addl %ebp, %edi
4351 ; X32-NEXT:    adcl %ebx, %ecx
4352 ; X32-NEXT:    setb %bl
4353 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4354 ; X32-NEXT:    mull %esi
4355 ; X32-NEXT:    addl %ecx, %eax
4356 ; X32-NEXT:    movzbl %bl, %ecx
4357 ; X32-NEXT:    adcl %ecx, %edx
4358 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4359 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4360 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4361 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4362 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4363 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4364 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4365 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4366 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4367 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4368 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4369 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4370 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4371 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4372 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4373 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4374 ; X32-NEXT:    movl %ecx, %eax
4375 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4376 ; X32-NEXT:    mull %edi
4377 ; X32-NEXT:    movl %edx, %esi
4378 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4379 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4380 ; X32-NEXT:    movl %ebp, %eax
4381 ; X32-NEXT:    mull %edi
4382 ; X32-NEXT:    movl %edx, %edi
4383 ; X32-NEXT:    movl %eax, %ebx
4384 ; X32-NEXT:    addl %esi, %ebx
4385 ; X32-NEXT:    adcl $0, %edi
4386 ; X32-NEXT:    movl %ecx, %eax
4387 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4388 ; X32-NEXT:    mull %ecx
4389 ; X32-NEXT:    movl %edx, %esi
4390 ; X32-NEXT:    addl %ebx, %eax
4391 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4392 ; X32-NEXT:    adcl %edi, %esi
4393 ; X32-NEXT:    setb %bl
4394 ; X32-NEXT:    movl %ebp, %eax
4395 ; X32-NEXT:    mull %ecx
4396 ; X32-NEXT:    addl %esi, %eax
4397 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
4398 ; X32-NEXT:    movzbl %bl, %eax
4399 ; X32-NEXT:    adcl %eax, %edx
4400 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4401 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4402 ; X32-NEXT:    movl %ebp, %eax
4403 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4404 ; X32-NEXT:    mull %ecx
4405 ; X32-NEXT:    movl %edx, %esi
4406 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4407 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4408 ; X32-NEXT:    movl %edi, %eax
4409 ; X32-NEXT:    mull %ecx
4410 ; X32-NEXT:    movl %edx, %ebx
4411 ; X32-NEXT:    movl %eax, %ecx
4412 ; X32-NEXT:    addl %esi, %ecx
4413 ; X32-NEXT:    adcl $0, %ebx
4414 ; X32-NEXT:    movl %ebp, %eax
4415 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4416 ; X32-NEXT:    mull %esi
4417 ; X32-NEXT:    movl %edx, %ebp
4418 ; X32-NEXT:    addl %ecx, %eax
4419 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4420 ; X32-NEXT:    adcl %ebx, %ebp
4421 ; X32-NEXT:    setb %cl
4422 ; X32-NEXT:    movl %edi, %eax
4423 ; X32-NEXT:    mull %esi
4424 ; X32-NEXT:    movl %eax, %ebx
4425 ; X32-NEXT:    addl %ebp, %ebx
4426 ; X32-NEXT:    movzbl %cl, %eax
4427 ; X32-NEXT:    adcl %eax, %edx
4428 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4429 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4430 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4431 ; X32-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
4432 ; X32-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4433 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4434 ; X32-NEXT:    movl %ecx, %eax
4435 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4436 ; X32-NEXT:    mull %esi
4437 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4438 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4439 ; X32-NEXT:    movl %edi, %eax
4440 ; X32-NEXT:    mull %esi
4441 ; X32-NEXT:    movl %edx, %ebp
4442 ; X32-NEXT:    movl %eax, %edi
4443 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4444 ; X32-NEXT:    adcl $0, %ebp
4445 ; X32-NEXT:    movl %ecx, %eax
4446 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4447 ; X32-NEXT:    mull %ecx
4448 ; X32-NEXT:    movl %edx, %esi
4449 ; X32-NEXT:    addl %edi, %eax
4450 ; X32-NEXT:    movl %eax, %edi
4451 ; X32-NEXT:    adcl %ebp, %esi
4452 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4453 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4454 ; X32-NEXT:    mull %ecx
4455 ; X32-NEXT:    movl %edx, %ecx
4456 ; X32-NEXT:    movl %eax, %ebp
4457 ; X32-NEXT:    addl %esi, %ebp
4458 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4459 ; X32-NEXT:    adcl %eax, %ecx
4460 ; X32-NEXT:    addl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4461 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4462 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4463 ; X32-NEXT:    adcl $0, %ebp
4464 ; X32-NEXT:    adcl $0, %ecx
4465 ; X32-NEXT:    addl (%esp), %ebp # 4-byte Folded Reload
4466 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4467 ; X32-NEXT:    setb (%esp) # 1-byte Folded Spill
4468 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4469 ; X32-NEXT:    movl %esi, %eax
4470 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4471 ; X32-NEXT:    mull %edi
4472 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4473 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4474 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4475 ; X32-NEXT:    mull %edi
4476 ; X32-NEXT:    movl %edx, %edi
4477 ; X32-NEXT:    movl %eax, %ebx
4478 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4479 ; X32-NEXT:    adcl $0, %edi
4480 ; X32-NEXT:    movl %esi, %eax
4481 ; X32-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
4482 ; X32-NEXT:    movl %edx, %esi
4483 ; X32-NEXT:    addl %ebx, %eax
4484 ; X32-NEXT:    movl %eax, %ebx
4485 ; X32-NEXT:    adcl %edi, %esi
4486 ; X32-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4487 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4488 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4489 ; X32-NEXT:    mull %edi
4490 ; X32-NEXT:    addl %esi, %eax
4491 ; X32-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
4492 ; X32-NEXT:    adcl %esi, %edx
4493 ; X32-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4494 ; X32-NEXT:    adcl %ecx, %ebx
4495 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4496 ; X32-NEXT:    movzbl (%esp), %ecx # 1-byte Folded Reload
4497 ; X32-NEXT:    adcl %ecx, %eax
4498 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4499 ; X32-NEXT:    adcl $0, %edx
4500 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4501 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4502 ; X32-NEXT:    movl %edi, %ecx
4503 ; X32-NEXT:    imull %eax, %ecx
4504 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4505 ; X32-NEXT:    mull %esi
4506 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
4507 ; X32-NEXT:    addl %ecx, %edx
4508 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4509 ; X32-NEXT:    imull %ebp, %esi
4510 ; X32-NEXT:    addl %edx, %esi
4511 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4512 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4513 ; X32-NEXT:    movl %eax, %edi
4514 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4515 ; X32-NEXT:    imull %ebx, %edi
4516 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4517 ; X32-NEXT:    mull %esi
4518 ; X32-NEXT:    movl %eax, %ecx
4519 ; X32-NEXT:    addl %edi, %edx
4520 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4521 ; X32-NEXT:    movl %esi, %eax
4522 ; X32-NEXT:    imull %esi, %edi
4523 ; X32-NEXT:    addl %edx, %edi
4524 ; X32-NEXT:    addl (%esp), %ecx # 4-byte Folded Reload
4525 ; X32-NEXT:    movl %ecx, (%esp) # 4-byte Spill
4526 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4527 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4528 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4529 ; X32-NEXT:    mull %ecx
4530 ; X32-NEXT:    movl %edx, %esi
4531 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4532 ; X32-NEXT:    movl %ebx, %eax
4533 ; X32-NEXT:    mull %ecx
4534 ; X32-NEXT:    movl %edx, %edi
4535 ; X32-NEXT:    movl %eax, %ebx
4536 ; X32-NEXT:    addl %esi, %ebx
4537 ; X32-NEXT:    adcl $0, %edi
4538 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4539 ; X32-NEXT:    mull %ebp
4540 ; X32-NEXT:    movl %ebp, %esi
4541 ; X32-NEXT:    movl %edx, %ebp
4542 ; X32-NEXT:    addl %ebx, %eax
4543 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4544 ; X32-NEXT:    adcl %edi, %ebp
4545 ; X32-NEXT:    setb %cl
4546 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4547 ; X32-NEXT:    mull %esi
4548 ; X32-NEXT:    addl %ebp, %eax
4549 ; X32-NEXT:    movzbl %cl, %ecx
4550 ; X32-NEXT:    adcl %ecx, %edx
4551 ; X32-NEXT:    addl (%esp), %eax # 4-byte Folded Reload
4552 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4553 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4554 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4555 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4556 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4557 ; X32-NEXT:    imull %esi, %ebx
4558 ; X32-NEXT:    movl %esi, %eax
4559 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4560 ; X32-NEXT:    mull %ecx
4561 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
4562 ; X32-NEXT:    addl %ebx, %edx
4563 ; X32-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4564 ; X32-NEXT:    addl %edx, %ecx
4565 ; X32-NEXT:    movl %ecx, %ebx
4566 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4567 ; X32-NEXT:    movl %eax, %ecx
4568 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4569 ; X32-NEXT:    imull %edi, %ecx
4570 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4571 ; X32-NEXT:    mull %ebp
4572 ; X32-NEXT:    addl %ecx, %edx
4573 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4574 ; X32-NEXT:    imull %ebp, %ecx
4575 ; X32-NEXT:    addl %edx, %ecx
4576 ; X32-NEXT:    addl (%esp), %eax # 4-byte Folded Reload
4577 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4578 ; X32-NEXT:    adcl %ebx, %ecx
4579 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4580 ; X32-NEXT:    movl %ebp, %eax
4581 ; X32-NEXT:    movl %ebp, %ebx
4582 ; X32-NEXT:    mull %esi
4583 ; X32-NEXT:    movl %edx, %ebp
4584 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
4585 ; X32-NEXT:    movl %edi, %eax
4586 ; X32-NEXT:    mull %esi
4587 ; X32-NEXT:    movl %edx, %esi
4588 ; X32-NEXT:    movl %eax, %ecx
4589 ; X32-NEXT:    addl %ebp, %ecx
4590 ; X32-NEXT:    adcl $0, %esi
4591 ; X32-NEXT:    movl %ebx, %eax
4592 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4593 ; X32-NEXT:    mull %ebp
4594 ; X32-NEXT:    movl %edx, %edi
4595 ; X32-NEXT:    movl %eax, %ebx
4596 ; X32-NEXT:    addl %ecx, %ebx
4597 ; X32-NEXT:    adcl %esi, %edi
4598 ; X32-NEXT:    setb %cl
4599 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4600 ; X32-NEXT:    mull %ebp
4601 ; X32-NEXT:    movl %edx, %esi
4602 ; X32-NEXT:    addl %edi, %eax
4603 ; X32-NEXT:    movzbl %cl, %ecx
4604 ; X32-NEXT:    adcl %ecx, %esi
4605 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4606 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4607 ; X32-NEXT:    movl (%esp), %ecx # 4-byte Reload
4608 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4609 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4610 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4611 ; X32-NEXT:    movl %eax, %ebp
4612 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4613 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4614 ; X32-NEXT:    movl %ecx, %edx
4615 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4616 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4617 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4618 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4619 ; X32-NEXT:    movl %esi, %edi
4620 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4621 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4622 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4623 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4624 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4625 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4626 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4627 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4628 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4629 ; X32-NEXT:    movl %edx, (%esp) # 4-byte Spill
4630 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
4631 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4632 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4633 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4634 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4635 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4636 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4637 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4638 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4639 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4640 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4641 ; X32-NEXT:    movl (%esp), %eax # 4-byte Reload
4642 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4643 ; X32-NEXT:    movl %eax, (%esp) # 4-byte Spill
4644 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4645 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4646 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4647 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4648 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4649 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4650 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4651 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4652 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4653 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4654 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4655 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4656 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4657 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4658 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4659 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4660 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4661 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4662 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4663 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4664 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4665 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4666 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4667 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4668 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4669 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4670 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4671 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4672 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4673 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4674 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4675 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4676 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4677 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4678 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4679 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4680 ; X32-NEXT:    movl (%esp), %edx # 4-byte Reload
4681 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4682 ; X32-NEXT:    movl %edx, (%esp) # 4-byte Spill
4683 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
4684 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4685 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4686 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
4687 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4688 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4689 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4690 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4691 ; X32-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4692 ; X32-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4693 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4694 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4695 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4696 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4697 ; X32-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4698 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4699 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4700 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4701 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4702 ; X32-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4703 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4704 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4705 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4706 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4707 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4708 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4709 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4710 ; X32-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4711 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4712 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4713 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4714 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4715 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4716 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4717 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4718 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4719 ; X32-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4720 ; X32-NEXT:    movl (%esp), %edi # 4-byte Reload
4721 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4722 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4723 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4724 ; X32-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4725 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4726 ; X32-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4727 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
4728 ; X32-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4729 ; X32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
4730 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4731 ; X32-NEXT:    movl %esi, (%ecx)
4732 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4733 ; X32-NEXT:    movl %esi, 4(%ecx)
4734 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4735 ; X32-NEXT:    movl %esi, 8(%ecx)
4736 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4737 ; X32-NEXT:    movl %esi, 12(%ecx)
4738 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4739 ; X32-NEXT:    movl %esi, 16(%ecx)
4740 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4741 ; X32-NEXT:    movl %esi, 20(%ecx)
4742 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4743 ; X32-NEXT:    movl %esi, 24(%ecx)
4744 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4745 ; X32-NEXT:    movl %esi, 28(%ecx)
4746 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4747 ; X32-NEXT:    movl %esi, 32(%ecx)
4748 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4749 ; X32-NEXT:    movl %esi, 36(%ecx)
4750 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4751 ; X32-NEXT:    movl %esi, 40(%ecx)
4752 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4753 ; X32-NEXT:    movl %esi, 44(%ecx)
4754 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4755 ; X32-NEXT:    movl %esi, 48(%ecx)
4756 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4757 ; X32-NEXT:    movl %esi, 52(%ecx)
4758 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4759 ; X32-NEXT:    movl %esi, 56(%ecx)
4760 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4761 ; X32-NEXT:    movl %esi, 60(%ecx)
4762 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4763 ; X32-NEXT:    movl %eax, 64(%ecx)
4764 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4765 ; X32-NEXT:    movl %eax, 68(%ecx)
4766 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4767 ; X32-NEXT:    movl %eax, 72(%ecx)
4768 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4769 ; X32-NEXT:    movl %eax, 76(%ecx)
4770 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4771 ; X32-NEXT:    movl %eax, 80(%ecx)
4772 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4773 ; X32-NEXT:    movl %eax, 84(%ecx)
4774 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4775 ; X32-NEXT:    movl %eax, 88(%ecx)
4776 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4777 ; X32-NEXT:    movl %eax, 92(%ecx)
4778 ; X32-NEXT:    movl %ebp, 96(%ecx)
4779 ; X32-NEXT:    movl %ebx, 100(%ecx)
4780 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4781 ; X32-NEXT:    movl %eax, 104(%ecx)
4782 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4783 ; X32-NEXT:    movl %eax, 108(%ecx)
4784 ; X32-NEXT:    movl %edi, 112(%ecx)
4785 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4786 ; X32-NEXT:    movl %eax, 116(%ecx)
4787 ; X32-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4788 ; X32-NEXT:    movl %eax, 120(%ecx)
4789 ; X32-NEXT:    movl %edx, 124(%ecx)
4790 ; X32-NEXT:    addl $400, %esp # imm = 0x190
4791 ; X32-NEXT:    popl %esi
4792 ; X32-NEXT:    popl %edi
4793 ; X32-NEXT:    popl %ebx
4794 ; X32-NEXT:    popl %ebp
4795 ; X32-NEXT:    retl
4797 ; X64-LABEL: test_1024:
4798 ; X64:       # %bb.0:
4799 ; X64-NEXT:    pushq %rbp
4800 ; X64-NEXT:    pushq %r15
4801 ; X64-NEXT:    pushq %r14
4802 ; X64-NEXT:    pushq %r13
4803 ; X64-NEXT:    pushq %r12
4804 ; X64-NEXT:    pushq %rbx
4805 ; X64-NEXT:    subq $240, %rsp
4806 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4807 ; X64-NEXT:    movq %rdi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4808 ; X64-NEXT:    movq 40(%rdi), %r15
4809 ; X64-NEXT:    movq 32(%rdi), %r9
4810 ; X64-NEXT:    movq 56(%rdi), %r8
4811 ; X64-NEXT:    movq 48(%rdi), %rbx
4812 ; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4813 ; X64-NEXT:    movq (%rsi), %rdi
4814 ; X64-NEXT:    movq 8(%rsi), %r11
4815 ; X64-NEXT:    movq %rsi, %r13
4816 ; X64-NEXT:    movq %rbx, %rax
4817 ; X64-NEXT:    mulq %rdi
4818 ; X64-NEXT:    movq %rdx, %rcx
4819 ; X64-NEXT:    movq %rax, %r12
4820 ; X64-NEXT:    movq %r8, %rax
4821 ; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4822 ; X64-NEXT:    mulq %rdi
4823 ; X64-NEXT:    movq %rdx, %rsi
4824 ; X64-NEXT:    movq %rax, %rbp
4825 ; X64-NEXT:    addq %rcx, %rbp
4826 ; X64-NEXT:    adcq $0, %rsi
4827 ; X64-NEXT:    movq %rbx, %rax
4828 ; X64-NEXT:    mulq %r11
4829 ; X64-NEXT:    movq %rdx, %rcx
4830 ; X64-NEXT:    movq %rax, %r10
4831 ; X64-NEXT:    addq %rbp, %r10
4832 ; X64-NEXT:    adcq %rsi, %rcx
4833 ; X64-NEXT:    setb %al
4834 ; X64-NEXT:    movzbl %al, %esi
4835 ; X64-NEXT:    movq %r8, %rax
4836 ; X64-NEXT:    mulq %r11
4837 ; X64-NEXT:    movq %rdx, %r8
4838 ; X64-NEXT:    movq %rax, %r14
4839 ; X64-NEXT:    addq %rcx, %r14
4840 ; X64-NEXT:    adcq %rsi, %r8
4841 ; X64-NEXT:    movq %r9, %rax
4842 ; X64-NEXT:    movq %rdi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4843 ; X64-NEXT:    mulq %rdi
4844 ; X64-NEXT:    movq %rdx, %rcx
4845 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4846 ; X64-NEXT:    movq %r15, %rax
4847 ; X64-NEXT:    mulq %rdi
4848 ; X64-NEXT:    movq %rdx, %rbp
4849 ; X64-NEXT:    movq %rax, %rdi
4850 ; X64-NEXT:    addq %rcx, %rdi
4851 ; X64-NEXT:    adcq $0, %rbp
4852 ; X64-NEXT:    movq %r9, %rax
4853 ; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4854 ; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4855 ; X64-NEXT:    mulq %r11
4856 ; X64-NEXT:    movq %rdx, %rbx
4857 ; X64-NEXT:    addq %rdi, %rax
4858 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4859 ; X64-NEXT:    adcq %rbp, %rbx
4860 ; X64-NEXT:    setb %sil
4861 ; X64-NEXT:    movq %r15, %rbp
4862 ; X64-NEXT:    movq %r15, %rax
4863 ; X64-NEXT:    mulq %r11
4864 ; X64-NEXT:    movq %rdx, %r15
4865 ; X64-NEXT:    movq %rax, %rcx
4866 ; X64-NEXT:    addq %rbx, %rcx
4867 ; X64-NEXT:    movzbl %sil, %eax
4868 ; X64-NEXT:    adcq %rax, %r15
4869 ; X64-NEXT:    addq %r12, %rcx
4870 ; X64-NEXT:    adcq %r10, %r15
4871 ; X64-NEXT:    adcq $0, %r14
4872 ; X64-NEXT:    adcq $0, %r8
4873 ; X64-NEXT:    movq %r13, %rdi
4874 ; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4875 ; X64-NEXT:    movq 16(%r13), %r10
4876 ; X64-NEXT:    movq %r9, %rax
4877 ; X64-NEXT:    mulq %r10
4878 ; X64-NEXT:    movq %rdx, %r12
4879 ; X64-NEXT:    movq %rax, %r13
4880 ; X64-NEXT:    movq %rbp, %rax
4881 ; X64-NEXT:    movq %rbp, %r11
4882 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4883 ; X64-NEXT:    mulq %r10
4884 ; X64-NEXT:    movq %rdx, %rbx
4885 ; X64-NEXT:    movq %rax, %rsi
4886 ; X64-NEXT:    addq %r12, %rsi
4887 ; X64-NEXT:    adcq $0, %rbx
4888 ; X64-NEXT:    movq 24(%rdi), %rdi
4889 ; X64-NEXT:    movq %r9, %rax
4890 ; X64-NEXT:    mulq %rdi
4891 ; X64-NEXT:    movq %rdi, %r12
4892 ; X64-NEXT:    movq %rdx, %rbp
4893 ; X64-NEXT:    addq %rsi, %rax
4894 ; X64-NEXT:    movq %rax, %rsi
4895 ; X64-NEXT:    adcq %rbx, %rbp
4896 ; X64-NEXT:    setb %r9b
4897 ; X64-NEXT:    movq %r11, %rax
4898 ; X64-NEXT:    mulq %rdi
4899 ; X64-NEXT:    movq %rdx, %rdi
4900 ; X64-NEXT:    movq %rax, %rbx
4901 ; X64-NEXT:    addq %rbp, %rbx
4902 ; X64-NEXT:    movzbl %r9b, %eax
4903 ; X64-NEXT:    adcq %rax, %rdi
4904 ; X64-NEXT:    addq %rcx, %r13
4905 ; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4906 ; X64-NEXT:    adcq %r15, %rsi
4907 ; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4908 ; X64-NEXT:    adcq $0, %rbx
4909 ; X64-NEXT:    adcq $0, %rdi
4910 ; X64-NEXT:    addq %r14, %rbx
4911 ; X64-NEXT:    adcq %r8, %rdi
4912 ; X64-NEXT:    setb %r11b
4913 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
4914 ; X64-NEXT:    movq %rcx, %rax
4915 ; X64-NEXT:    mulq %r10
4916 ; X64-NEXT:    movq %rdx, %r14
4917 ; X64-NEXT:    movq %rax, %r15
4918 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
4919 ; X64-NEXT:    movq %r9, %rax
4920 ; X64-NEXT:    mulq %r10
4921 ; X64-NEXT:    movq %rdx, %rsi
4922 ; X64-NEXT:    movq %rax, %rbp
4923 ; X64-NEXT:    addq %r14, %rbp
4924 ; X64-NEXT:    adcq $0, %rsi
4925 ; X64-NEXT:    movq %rcx, %rax
4926 ; X64-NEXT:    movq %r12, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4927 ; X64-NEXT:    mulq %r12
4928 ; X64-NEXT:    movq %rdx, %rcx
4929 ; X64-NEXT:    addq %rbp, %rax
4930 ; X64-NEXT:    movq %rax, %rbp
4931 ; X64-NEXT:    adcq %rsi, %rcx
4932 ; X64-NEXT:    setb %sil
4933 ; X64-NEXT:    movq %r9, %rax
4934 ; X64-NEXT:    mulq %r12
4935 ; X64-NEXT:    addq %rcx, %rax
4936 ; X64-NEXT:    movzbl %sil, %ecx
4937 ; X64-NEXT:    adcq %rcx, %rdx
4938 ; X64-NEXT:    addq %rbx, %r15
4939 ; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4940 ; X64-NEXT:    adcq %rdi, %rbp
4941 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4942 ; X64-NEXT:    movzbl %r11b, %ecx
4943 ; X64-NEXT:    adcq %rcx, %rax
4944 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4945 ; X64-NEXT:    adcq $0, %rdx
4946 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4947 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
4948 ; X64-NEXT:    movq 16(%rsi), %rcx
4949 ; X64-NEXT:    movq %rcx, %rax
4950 ; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4951 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
4952 ; X64-NEXT:    mulq %r8
4953 ; X64-NEXT:    movq %rax, %r14
4954 ; X64-NEXT:    movq %rdx, %r9
4955 ; X64-NEXT:    movq 24(%rsi), %rbx
4956 ; X64-NEXT:    movq %rbx, %rax
4957 ; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4958 ; X64-NEXT:    mulq %r8
4959 ; X64-NEXT:    movq %rdx, %rdi
4960 ; X64-NEXT:    movq %rax, %rbp
4961 ; X64-NEXT:    addq %r9, %rbp
4962 ; X64-NEXT:    adcq $0, %rdi
4963 ; X64-NEXT:    movq %rcx, %rax
4964 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Reload
4965 ; X64-NEXT:    mulq %r13
4966 ; X64-NEXT:    movq %rdx, %rcx
4967 ; X64-NEXT:    movq %rax, %r15
4968 ; X64-NEXT:    addq %rbp, %r15
4969 ; X64-NEXT:    adcq %rdi, %rcx
4970 ; X64-NEXT:    setb %dil
4971 ; X64-NEXT:    movq %rbx, %rax
4972 ; X64-NEXT:    mulq %r13
4973 ; X64-NEXT:    movq %rdx, %r11
4974 ; X64-NEXT:    movq %rax, %r12
4975 ; X64-NEXT:    addq %rcx, %r12
4976 ; X64-NEXT:    movzbl %dil, %eax
4977 ; X64-NEXT:    adcq %rax, %r11
4978 ; X64-NEXT:    movq (%rsi), %rdi
4979 ; X64-NEXT:    movq %rdi, %rax
4980 ; X64-NEXT:    mulq %r8
4981 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4982 ; X64-NEXT:    movq %rdx, %rcx
4983 ; X64-NEXT:    movq 8(%rsi), %r9
4984 ; X64-NEXT:    movq %r9, %rax
4985 ; X64-NEXT:    mulq %r8
4986 ; X64-NEXT:    movq %rdx, %rbp
4987 ; X64-NEXT:    movq %rax, %rbx
4988 ; X64-NEXT:    addq %rcx, %rbx
4989 ; X64-NEXT:    adcq $0, %rbp
4990 ; X64-NEXT:    movq %rdi, %rax
4991 ; X64-NEXT:    mulq %r13
4992 ; X64-NEXT:    movq %rdx, %rsi
4993 ; X64-NEXT:    addq %rbx, %rax
4994 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4995 ; X64-NEXT:    adcq %rbp, %rsi
4996 ; X64-NEXT:    setb %bl
4997 ; X64-NEXT:    movq %r9, %rax
4998 ; X64-NEXT:    mulq %r13
4999 ; X64-NEXT:    movq %rdx, %r13
5000 ; X64-NEXT:    movq %rax, %rcx
5001 ; X64-NEXT:    addq %rsi, %rcx
5002 ; X64-NEXT:    movzbl %bl, %eax
5003 ; X64-NEXT:    adcq %rax, %r13
5004 ; X64-NEXT:    addq %r14, %rcx
5005 ; X64-NEXT:    adcq %r15, %r13
5006 ; X64-NEXT:    adcq $0, %r12
5007 ; X64-NEXT:    adcq $0, %r11
5008 ; X64-NEXT:    movq %rdi, %rbp
5009 ; X64-NEXT:    movq %rdi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5010 ; X64-NEXT:    movq %rdi, %rax
5011 ; X64-NEXT:    mulq %r10
5012 ; X64-NEXT:    movq %rdx, %rsi
5013 ; X64-NEXT:    movq %rax, %r14
5014 ; X64-NEXT:    movq %r9, %rax
5015 ; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5016 ; X64-NEXT:    mulq %r10
5017 ; X64-NEXT:    movq %rdx, %rbx
5018 ; X64-NEXT:    movq %rax, %rdi
5019 ; X64-NEXT:    addq %rsi, %rdi
5020 ; X64-NEXT:    adcq $0, %rbx
5021 ; X64-NEXT:    movq %rbp, %rax
5022 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5023 ; X64-NEXT:    mulq %rsi
5024 ; X64-NEXT:    movq %rdx, %rbp
5025 ; X64-NEXT:    addq %rdi, %rax
5026 ; X64-NEXT:    movq %rax, %rdi
5027 ; X64-NEXT:    adcq %rbx, %rbp
5028 ; X64-NEXT:    setb %r15b
5029 ; X64-NEXT:    movq %r9, %rax
5030 ; X64-NEXT:    mulq %rsi
5031 ; X64-NEXT:    movq %rdx, %r8
5032 ; X64-NEXT:    movq %rax, %rbx
5033 ; X64-NEXT:    addq %rbp, %rbx
5034 ; X64-NEXT:    movzbl %r15b, %eax
5035 ; X64-NEXT:    adcq %rax, %r8
5036 ; X64-NEXT:    addq %rcx, %r14
5037 ; X64-NEXT:    movq %r14, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5038 ; X64-NEXT:    adcq %r13, %rdi
5039 ; X64-NEXT:    movq %rdi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5040 ; X64-NEXT:    adcq $0, %rbx
5041 ; X64-NEXT:    adcq $0, %r8
5042 ; X64-NEXT:    addq %r12, %rbx
5043 ; X64-NEXT:    adcq %r11, %r8
5044 ; X64-NEXT:    setb %r14b
5045 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5046 ; X64-NEXT:    movq %rsi, %rax
5047 ; X64-NEXT:    movq %r10, (%rsp) # 8-byte Spill
5048 ; X64-NEXT:    mulq %r10
5049 ; X64-NEXT:    movq %rdx, %rcx
5050 ; X64-NEXT:    movq %rax, %r11
5051 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5052 ; X64-NEXT:    movq %r9, %rax
5053 ; X64-NEXT:    mulq %r10
5054 ; X64-NEXT:    movq %rdx, %rdi
5055 ; X64-NEXT:    movq %rax, %rbp
5056 ; X64-NEXT:    addq %rcx, %rbp
5057 ; X64-NEXT:    adcq $0, %rdi
5058 ; X64-NEXT:    movq %rsi, %rax
5059 ; X64-NEXT:    movq %rsi, %r15
5060 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5061 ; X64-NEXT:    mulq %rsi
5062 ; X64-NEXT:    movq %rdx, %rcx
5063 ; X64-NEXT:    movq %rax, %r10
5064 ; X64-NEXT:    addq %rbp, %r10
5065 ; X64-NEXT:    adcq %rdi, %rcx
5066 ; X64-NEXT:    setb %dil
5067 ; X64-NEXT:    movq %r9, %rax
5068 ; X64-NEXT:    mulq %rsi
5069 ; X64-NEXT:    addq %rcx, %rax
5070 ; X64-NEXT:    movzbl %dil, %ecx
5071 ; X64-NEXT:    adcq %rcx, %rdx
5072 ; X64-NEXT:    addq %rbx, %r11
5073 ; X64-NEXT:    adcq %r8, %r10
5074 ; X64-NEXT:    movzbl %r14b, %ecx
5075 ; X64-NEXT:    adcq %rcx, %rax
5076 ; X64-NEXT:    adcq $0, %rdx
5077 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Folded Reload
5078 ; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5079 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Folded Reload
5080 ; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5081 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5082 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5083 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5084 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5085 ; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5086 ; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5087 ; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5088 ; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5089 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5090 ; X64-NEXT:    movq 32(%rsi), %rdi
5091 ; X64-NEXT:    movq %r15, %rax
5092 ; X64-NEXT:    mulq %rdi
5093 ; X64-NEXT:    movq %rdx, %rcx
5094 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5095 ; X64-NEXT:    movq %r9, %rbx
5096 ; X64-NEXT:    movq %r9, %rax
5097 ; X64-NEXT:    mulq %rdi
5098 ; X64-NEXT:    movq %rdi, %r11
5099 ; X64-NEXT:    movq %rdx, %rdi
5100 ; X64-NEXT:    movq %rax, %rbp
5101 ; X64-NEXT:    addq %rcx, %rbp
5102 ; X64-NEXT:    adcq $0, %rdi
5103 ; X64-NEXT:    movq 40(%rsi), %rcx
5104 ; X64-NEXT:    movq %rsi, %r13
5105 ; X64-NEXT:    movq %r15, %rax
5106 ; X64-NEXT:    mulq %rcx
5107 ; X64-NEXT:    movq %rcx, %r8
5108 ; X64-NEXT:    movq %rdx, %rcx
5109 ; X64-NEXT:    movq %rax, %r9
5110 ; X64-NEXT:    addq %rbp, %r9
5111 ; X64-NEXT:    adcq %rdi, %rcx
5112 ; X64-NEXT:    setb %sil
5113 ; X64-NEXT:    movq %rbx, %rax
5114 ; X64-NEXT:    mulq %r8
5115 ; X64-NEXT:    movq %rdx, %r10
5116 ; X64-NEXT:    movq %rax, %r14
5117 ; X64-NEXT:    addq %rcx, %r14
5118 ; X64-NEXT:    movzbl %sil, %eax
5119 ; X64-NEXT:    adcq %rax, %r10
5120 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r12 # 8-byte Reload
5121 ; X64-NEXT:    movq %r12, %rax
5122 ; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5123 ; X64-NEXT:    mulq %r11
5124 ; X64-NEXT:    movq %rdx, %rcx
5125 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5126 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Reload
5127 ; X64-NEXT:    movq %r15, %rax
5128 ; X64-NEXT:    mulq %r11
5129 ; X64-NEXT:    movq %rdx, %rdi
5130 ; X64-NEXT:    movq %rax, %rsi
5131 ; X64-NEXT:    addq %rcx, %rsi
5132 ; X64-NEXT:    adcq $0, %rdi
5133 ; X64-NEXT:    movq %r12, %rax
5134 ; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5135 ; X64-NEXT:    mulq %r8
5136 ; X64-NEXT:    movq %rdx, %rbp
5137 ; X64-NEXT:    addq %rsi, %rax
5138 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5139 ; X64-NEXT:    adcq %rdi, %rbp
5140 ; X64-NEXT:    setb %sil
5141 ; X64-NEXT:    movq %r15, %rax
5142 ; X64-NEXT:    mulq %r8
5143 ; X64-NEXT:    movq %rdx, %r8
5144 ; X64-NEXT:    movq %rax, %rcx
5145 ; X64-NEXT:    addq %rbp, %rcx
5146 ; X64-NEXT:    movzbl %sil, %eax
5147 ; X64-NEXT:    adcq %rax, %r8
5148 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5149 ; X64-NEXT:    adcq %r9, %r8
5150 ; X64-NEXT:    adcq $0, %r14
5151 ; X64-NEXT:    adcq $0, %r10
5152 ; X64-NEXT:    movq 48(%r13), %r11
5153 ; X64-NEXT:    movq %r12, %rdi
5154 ; X64-NEXT:    movq %r12, %rax
5155 ; X64-NEXT:    mulq %r11
5156 ; X64-NEXT:    movq %rdx, %r12
5157 ; X64-NEXT:    movq %rax, %r9
5158 ; X64-NEXT:    movq %r15, %rax
5159 ; X64-NEXT:    mulq %r11
5160 ; X64-NEXT:    movq %rdx, %rbp
5161 ; X64-NEXT:    movq %rax, %rbx
5162 ; X64-NEXT:    addq %r12, %rbx
5163 ; X64-NEXT:    adcq $0, %rbp
5164 ; X64-NEXT:    movq 56(%r13), %rsi
5165 ; X64-NEXT:    movq %rdi, %rax
5166 ; X64-NEXT:    mulq %rsi
5167 ; X64-NEXT:    movq %rdx, %rdi
5168 ; X64-NEXT:    movq %rax, %r13
5169 ; X64-NEXT:    addq %rbx, %r13
5170 ; X64-NEXT:    adcq %rbp, %rdi
5171 ; X64-NEXT:    setb %bl
5172 ; X64-NEXT:    movq %r15, %rax
5173 ; X64-NEXT:    mulq %rsi
5174 ; X64-NEXT:    movq %rsi, %r15
5175 ; X64-NEXT:    movq %rdx, %rsi
5176 ; X64-NEXT:    movq %rax, %r12
5177 ; X64-NEXT:    addq %rdi, %r12
5178 ; X64-NEXT:    movzbl %bl, %eax
5179 ; X64-NEXT:    adcq %rax, %rsi
5180 ; X64-NEXT:    addq %rcx, %r9
5181 ; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5182 ; X64-NEXT:    adcq %r8, %r13
5183 ; X64-NEXT:    adcq $0, %r12
5184 ; X64-NEXT:    adcq $0, %rsi
5185 ; X64-NEXT:    addq %r14, %r12
5186 ; X64-NEXT:    adcq %r10, %rsi
5187 ; X64-NEXT:    setb {{[-0-9]+}}(%r{{[sb]}}p) # 1-byte Folded Spill
5188 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5189 ; X64-NEXT:    movq %rcx, %rax
5190 ; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5191 ; X64-NEXT:    mulq %r11
5192 ; X64-NEXT:    movq %rdx, %r9
5193 ; X64-NEXT:    movq %rax, %r8
5194 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5195 ; X64-NEXT:    movq %r10, %rax
5196 ; X64-NEXT:    mulq %r11
5197 ; X64-NEXT:    movq %rdx, %rdi
5198 ; X64-NEXT:    movq %rax, %rbp
5199 ; X64-NEXT:    addq %r9, %rbp
5200 ; X64-NEXT:    adcq $0, %rdi
5201 ; X64-NEXT:    movq %rcx, %rax
5202 ; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5203 ; X64-NEXT:    mulq %r15
5204 ; X64-NEXT:    movq %rdx, %rcx
5205 ; X64-NEXT:    movq %rax, %r9
5206 ; X64-NEXT:    addq %rbp, %r9
5207 ; X64-NEXT:    adcq %rdi, %rcx
5208 ; X64-NEXT:    setb %dil
5209 ; X64-NEXT:    movq %r10, %rax
5210 ; X64-NEXT:    mulq %r15
5211 ; X64-NEXT:    movq %rdx, %r10
5212 ; X64-NEXT:    movq %rax, %r14
5213 ; X64-NEXT:    addq %rcx, %r14
5214 ; X64-NEXT:    movzbl %dil, %eax
5215 ; X64-NEXT:    adcq %rax, %r10
5216 ; X64-NEXT:    addq %r12, %r8
5217 ; X64-NEXT:    adcq %rsi, %r9
5218 ; X64-NEXT:    movzbl {{[-0-9]+}}(%r{{[sb]}}p), %eax # 1-byte Folded Reload
5219 ; X64-NEXT:    adcq %rax, %r14
5220 ; X64-NEXT:    adcq $0, %r10
5221 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5222 ; X64-NEXT:    addq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5223 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5224 ; X64-NEXT:    adcq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5225 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5226 ; X64-NEXT:    adcq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5227 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5228 ; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5229 ; X64-NEXT:    adcq $0, %r8
5230 ; X64-NEXT:    adcq $0, %r9
5231 ; X64-NEXT:    adcq $0, %r14
5232 ; X64-NEXT:    adcq $0, %r10
5233 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Folded Reload
5234 ; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5235 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Folded Reload
5236 ; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5237 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Folded Reload
5238 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Folded Reload
5239 ; X64-NEXT:    setb {{[-0-9]+}}(%r{{[sb]}}p) # 1-byte Folded Spill
5240 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5241 ; X64-NEXT:    movq %rdi, %rax
5242 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5243 ; X64-NEXT:    mulq %rsi
5244 ; X64-NEXT:    movq %rdx, %rcx
5245 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5246 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5247 ; X64-NEXT:    movq %rbp, %rax
5248 ; X64-NEXT:    mulq %rsi
5249 ; X64-NEXT:    movq %rsi, %r8
5250 ; X64-NEXT:    movq %rdx, %rsi
5251 ; X64-NEXT:    movq %rax, %rbx
5252 ; X64-NEXT:    addq %rcx, %rbx
5253 ; X64-NEXT:    adcq $0, %rsi
5254 ; X64-NEXT:    movq %rdi, %rax
5255 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5256 ; X64-NEXT:    mulq %rdi
5257 ; X64-NEXT:    movq %rdx, %rcx
5258 ; X64-NEXT:    movq %rax, %r12
5259 ; X64-NEXT:    addq %rbx, %r12
5260 ; X64-NEXT:    adcq %rsi, %rcx
5261 ; X64-NEXT:    setb %bl
5262 ; X64-NEXT:    movq %rbp, %rax
5263 ; X64-NEXT:    mulq %rdi
5264 ; X64-NEXT:    movq %rdi, %r9
5265 ; X64-NEXT:    movq %rdx, %r11
5266 ; X64-NEXT:    movq %rax, %r13
5267 ; X64-NEXT:    addq %rcx, %r13
5268 ; X64-NEXT:    movzbl %bl, %eax
5269 ; X64-NEXT:    adcq %rax, %r11
5270 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5271 ; X64-NEXT:    movq %rbp, %rax
5272 ; X64-NEXT:    mulq %r8
5273 ; X64-NEXT:    movq %rdx, %rcx
5274 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5275 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5276 ; X64-NEXT:    movq %rsi, %rax
5277 ; X64-NEXT:    mulq %r8
5278 ; X64-NEXT:    movq %rdx, %rbx
5279 ; X64-NEXT:    movq %rax, %rdi
5280 ; X64-NEXT:    addq %rcx, %rdi
5281 ; X64-NEXT:    adcq $0, %rbx
5282 ; X64-NEXT:    movq %rbp, %rax
5283 ; X64-NEXT:    movq %rbp, %r8
5284 ; X64-NEXT:    mulq %r9
5285 ; X64-NEXT:    movq %rdx, %rbp
5286 ; X64-NEXT:    addq %rdi, %rax
5287 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5288 ; X64-NEXT:    adcq %rbx, %rbp
5289 ; X64-NEXT:    setb %bl
5290 ; X64-NEXT:    movq %rsi, %rax
5291 ; X64-NEXT:    mulq %r9
5292 ; X64-NEXT:    movq %rdx, %r15
5293 ; X64-NEXT:    movq %rax, %rcx
5294 ; X64-NEXT:    addq %rbp, %rcx
5295 ; X64-NEXT:    movzbl %bl, %eax
5296 ; X64-NEXT:    adcq %rax, %r15
5297 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5298 ; X64-NEXT:    adcq %r12, %r15
5299 ; X64-NEXT:    adcq $0, %r13
5300 ; X64-NEXT:    adcq $0, %r11
5301 ; X64-NEXT:    movq %r8, %rbx
5302 ; X64-NEXT:    movq %r8, %rax
5303 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5304 ; X64-NEXT:    mulq %rdi
5305 ; X64-NEXT:    movq %rdx, %r8
5306 ; X64-NEXT:    movq %rax, %r12
5307 ; X64-NEXT:    movq %rsi, %rax
5308 ; X64-NEXT:    movq %rsi, %r9
5309 ; X64-NEXT:    mulq %rdi
5310 ; X64-NEXT:    movq %rdx, %rbp
5311 ; X64-NEXT:    movq %rax, %rsi
5312 ; X64-NEXT:    addq %r8, %rsi
5313 ; X64-NEXT:    adcq $0, %rbp
5314 ; X64-NEXT:    movq %rbx, %rax
5315 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5316 ; X64-NEXT:    mulq %rdi
5317 ; X64-NEXT:    movq %rdx, %rbx
5318 ; X64-NEXT:    movq %rax, %r8
5319 ; X64-NEXT:    addq %rsi, %r8
5320 ; X64-NEXT:    adcq %rbp, %rbx
5321 ; X64-NEXT:    setb %sil
5322 ; X64-NEXT:    movq %r9, %rax
5323 ; X64-NEXT:    mulq %rdi
5324 ; X64-NEXT:    movq %rdx, %rdi
5325 ; X64-NEXT:    movq %rax, %rbp
5326 ; X64-NEXT:    addq %rbx, %rbp
5327 ; X64-NEXT:    movzbl %sil, %eax
5328 ; X64-NEXT:    adcq %rax, %rdi
5329 ; X64-NEXT:    addq %rcx, %r12
5330 ; X64-NEXT:    adcq %r15, %r8
5331 ; X64-NEXT:    adcq $0, %rbp
5332 ; X64-NEXT:    adcq $0, %rdi
5333 ; X64-NEXT:    addq %r13, %rbp
5334 ; X64-NEXT:    adcq %r11, %rdi
5335 ; X64-NEXT:    setb {{[-0-9]+}}(%r{{[sb]}}p) # 1-byte Folded Spill
5336 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5337 ; X64-NEXT:    movq %rcx, %rax
5338 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5339 ; X64-NEXT:    mulq %rsi
5340 ; X64-NEXT:    movq %rdx, %r15
5341 ; X64-NEXT:    movq %rax, %r13
5342 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5343 ; X64-NEXT:    movq %r9, %rax
5344 ; X64-NEXT:    mulq %rsi
5345 ; X64-NEXT:    movq %rdx, %rsi
5346 ; X64-NEXT:    movq %rax, %rbx
5347 ; X64-NEXT:    addq %r15, %rbx
5348 ; X64-NEXT:    adcq $0, %rsi
5349 ; X64-NEXT:    movq %rcx, %rax
5350 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5351 ; X64-NEXT:    mulq %rcx
5352 ; X64-NEXT:    movq %rdx, %r11
5353 ; X64-NEXT:    addq %rbx, %rax
5354 ; X64-NEXT:    movq %rax, %r15
5355 ; X64-NEXT:    adcq %rsi, %r11
5356 ; X64-NEXT:    setb %bl
5357 ; X64-NEXT:    movq %r9, %rax
5358 ; X64-NEXT:    mulq %rcx
5359 ; X64-NEXT:    addq %r11, %rax
5360 ; X64-NEXT:    movzbl %bl, %ecx
5361 ; X64-NEXT:    adcq %rcx, %rdx
5362 ; X64-NEXT:    addq %rbp, %r13
5363 ; X64-NEXT:    adcq %rdi, %r15
5364 ; X64-NEXT:    movzbl {{[-0-9]+}}(%r{{[sb]}}p), %ecx # 1-byte Folded Reload
5365 ; X64-NEXT:    adcq %rcx, %rax
5366 ; X64-NEXT:    movq %rax, %rcx
5367 ; X64-NEXT:    adcq $0, %rdx
5368 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5369 ; X64-NEXT:    addq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5370 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5371 ; X64-NEXT:    adcq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5372 ; X64-NEXT:    adcq %r14, %r12
5373 ; X64-NEXT:    movq %r12, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5374 ; X64-NEXT:    adcq %r10, %r8
5375 ; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5376 ; X64-NEXT:    movzbl {{[-0-9]+}}(%r{{[sb]}}p), %eax # 1-byte Folded Reload
5377 ; X64-NEXT:    adcq %rax, %r13
5378 ; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5379 ; X64-NEXT:    adcq $0, %r15
5380 ; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5381 ; X64-NEXT:    adcq $0, %rcx
5382 ; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5383 ; X64-NEXT:    adcq $0, %rdx
5384 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5385 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5386 ; X64-NEXT:    movq 64(%rsi), %rdi
5387 ; X64-NEXT:    movq (%rsp), %rbx # 8-byte Reload
5388 ; X64-NEXT:    movq %rbx, %rax
5389 ; X64-NEXT:    mulq %rdi
5390 ; X64-NEXT:    movq %rdx, %rcx
5391 ; X64-NEXT:    movq %rax, %r11
5392 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5393 ; X64-NEXT:    movq %r9, %rax
5394 ; X64-NEXT:    mulq %rdi
5395 ; X64-NEXT:    movq %rdi, %r8
5396 ; X64-NEXT:    movq %rdx, %rdi
5397 ; X64-NEXT:    movq %rax, %rbp
5398 ; X64-NEXT:    addq %rcx, %rbp
5399 ; X64-NEXT:    adcq $0, %rdi
5400 ; X64-NEXT:    movq 72(%rsi), %rcx
5401 ; X64-NEXT:    movq %rsi, %r13
5402 ; X64-NEXT:    movq %rbx, %rax
5403 ; X64-NEXT:    mulq %rcx
5404 ; X64-NEXT:    movq %rcx, %rsi
5405 ; X64-NEXT:    movq %rdx, %rcx
5406 ; X64-NEXT:    movq %rax, %r14
5407 ; X64-NEXT:    addq %rbp, %r14
5408 ; X64-NEXT:    adcq %rdi, %rcx
5409 ; X64-NEXT:    setb %bl
5410 ; X64-NEXT:    movq %r9, %rax
5411 ; X64-NEXT:    mulq %rsi
5412 ; X64-NEXT:    movq %rsi, %r12
5413 ; X64-NEXT:    movq %rdx, %r10
5414 ; X64-NEXT:    movq %rax, %r15
5415 ; X64-NEXT:    addq %rcx, %r15
5416 ; X64-NEXT:    movzbl %bl, %eax
5417 ; X64-NEXT:    adcq %rax, %r10
5418 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5419 ; X64-NEXT:    movq %r9, %rax
5420 ; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5421 ; X64-NEXT:    mulq %r8
5422 ; X64-NEXT:    movq %rdx, %rcx
5423 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5424 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5425 ; X64-NEXT:    movq %rbp, %rax
5426 ; X64-NEXT:    mulq %r8
5427 ; X64-NEXT:    movq %rdx, %rdi
5428 ; X64-NEXT:    movq %rax, %rbx
5429 ; X64-NEXT:    addq %rcx, %rbx
5430 ; X64-NEXT:    adcq $0, %rdi
5431 ; X64-NEXT:    movq %r9, %rax
5432 ; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5433 ; X64-NEXT:    mulq %rsi
5434 ; X64-NEXT:    movq %rdx, %rsi
5435 ; X64-NEXT:    addq %rbx, %rax
5436 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5437 ; X64-NEXT:    adcq %rdi, %rsi
5438 ; X64-NEXT:    setb %cl
5439 ; X64-NEXT:    movq %rbp, %rax
5440 ; X64-NEXT:    mulq %r12
5441 ; X64-NEXT:    movq %rdx, %r12
5442 ; X64-NEXT:    movq %rax, %rdi
5443 ; X64-NEXT:    addq %rsi, %rdi
5444 ; X64-NEXT:    movzbl %cl, %eax
5445 ; X64-NEXT:    adcq %rax, %r12
5446 ; X64-NEXT:    addq %r11, %rdi
5447 ; X64-NEXT:    adcq %r14, %r12
5448 ; X64-NEXT:    adcq $0, %r15
5449 ; X64-NEXT:    adcq $0, %r10
5450 ; X64-NEXT:    movq 80(%r13), %r11
5451 ; X64-NEXT:    movq %r9, %rax
5452 ; X64-NEXT:    mulq %r11
5453 ; X64-NEXT:    movq %rdx, %rcx
5454 ; X64-NEXT:    movq %rax, %r14
5455 ; X64-NEXT:    movq %rbp, %rax
5456 ; X64-NEXT:    movq %rbp, %rsi
5457 ; X64-NEXT:    mulq %r11
5458 ; X64-NEXT:    movq %rdx, %rbx
5459 ; X64-NEXT:    movq %rax, %rbp
5460 ; X64-NEXT:    addq %rcx, %rbp
5461 ; X64-NEXT:    adcq $0, %rbx
5462 ; X64-NEXT:    movq 88(%r13), %r13
5463 ; X64-NEXT:    movq %r9, %rax
5464 ; X64-NEXT:    mulq %r13
5465 ; X64-NEXT:    movq %rdx, %rcx
5466 ; X64-NEXT:    addq %rbp, %rax
5467 ; X64-NEXT:    movq %rax, %rbp
5468 ; X64-NEXT:    adcq %rbx, %rcx
5469 ; X64-NEXT:    setb %r9b
5470 ; X64-NEXT:    movq %rsi, %rax
5471 ; X64-NEXT:    mulq %r13
5472 ; X64-NEXT:    movq %rdx, %rbx
5473 ; X64-NEXT:    movq %rax, %rsi
5474 ; X64-NEXT:    addq %rcx, %rsi
5475 ; X64-NEXT:    movzbl %r9b, %eax
5476 ; X64-NEXT:    adcq %rax, %rbx
5477 ; X64-NEXT:    addq %rdi, %r14
5478 ; X64-NEXT:    movq %r14, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5479 ; X64-NEXT:    adcq %r12, %rbp
5480 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5481 ; X64-NEXT:    adcq $0, %rsi
5482 ; X64-NEXT:    adcq $0, %rbx
5483 ; X64-NEXT:    addq %r15, %rsi
5484 ; X64-NEXT:    adcq %r10, %rbx
5485 ; X64-NEXT:    setb %r9b
5486 ; X64-NEXT:    movq (%rsp), %r14 # 8-byte Reload
5487 ; X64-NEXT:    movq %r14, %rax
5488 ; X64-NEXT:    mulq %r11
5489 ; X64-NEXT:    movq %rdx, %rcx
5490 ; X64-NEXT:    movq %rax, %r10
5491 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5492 ; X64-NEXT:    movq %r8, %rax
5493 ; X64-NEXT:    mulq %r11
5494 ; X64-NEXT:    movq %rdx, %rdi
5495 ; X64-NEXT:    movq %rax, %rbp
5496 ; X64-NEXT:    addq %rcx, %rbp
5497 ; X64-NEXT:    adcq $0, %rdi
5498 ; X64-NEXT:    movq %r14, %rax
5499 ; X64-NEXT:    movq %r14, %r15
5500 ; X64-NEXT:    mulq %r13
5501 ; X64-NEXT:    movq %rdx, %rcx
5502 ; X64-NEXT:    addq %rbp, %rax
5503 ; X64-NEXT:    movq %rax, %rbp
5504 ; X64-NEXT:    adcq %rdi, %rcx
5505 ; X64-NEXT:    setb %dil
5506 ; X64-NEXT:    movq %r8, %rax
5507 ; X64-NEXT:    mulq %r13
5508 ; X64-NEXT:    movq %rax, %r12
5509 ; X64-NEXT:    addq %rcx, %r12
5510 ; X64-NEXT:    movzbl %dil, %eax
5511 ; X64-NEXT:    adcq %rax, %rdx
5512 ; X64-NEXT:    addq %rsi, %r10
5513 ; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5514 ; X64-NEXT:    adcq %rbx, %rbp
5515 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5516 ; X64-NEXT:    movzbl %r9b, %eax
5517 ; X64-NEXT:    adcq %rax, %r12
5518 ; X64-NEXT:    adcq $0, %rdx
5519 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5520 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5521 ; X64-NEXT:    imulq %rax, %r13
5522 ; X64-NEXT:    movq %rax, %r10
5523 ; X64-NEXT:    mulq %r11
5524 ; X64-NEXT:    movq %rax, %r8
5525 ; X64-NEXT:    addq %r13, %rdx
5526 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5527 ; X64-NEXT:    imulq %rdi, %r11
5528 ; X64-NEXT:    addq %rdx, %r11
5529 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5530 ; X64-NEXT:    movq %rax, %rsi
5531 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5532 ; X64-NEXT:    imulq %rbx, %rsi
5533 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5534 ; X64-NEXT:    mulq %rbp
5535 ; X64-NEXT:    movq %rax, %r9
5536 ; X64-NEXT:    addq %rsi, %rdx
5537 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5538 ; X64-NEXT:    imulq %rbp, %rax
5539 ; X64-NEXT:    addq %rdx, %rax
5540 ; X64-NEXT:    addq %r8, %r9
5541 ; X64-NEXT:    adcq %r11, %rax
5542 ; X64-NEXT:    movq %rax, %r8
5543 ; X64-NEXT:    movq %rbp, %rax
5544 ; X64-NEXT:    mulq %r10
5545 ; X64-NEXT:    movq %rdx, %rcx
5546 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5547 ; X64-NEXT:    movq %rbx, %rax
5548 ; X64-NEXT:    movq %rbx, %r11
5549 ; X64-NEXT:    mulq %r10
5550 ; X64-NEXT:    movq %rdx, %rsi
5551 ; X64-NEXT:    movq %rax, %rbx
5552 ; X64-NEXT:    addq %rcx, %rbx
5553 ; X64-NEXT:    adcq $0, %rsi
5554 ; X64-NEXT:    movq %rbp, %rax
5555 ; X64-NEXT:    mulq %rdi
5556 ; X64-NEXT:    movq %rdx, %rbp
5557 ; X64-NEXT:    movq %rax, %r14
5558 ; X64-NEXT:    addq %rbx, %r14
5559 ; X64-NEXT:    adcq %rsi, %rbp
5560 ; X64-NEXT:    setb %cl
5561 ; X64-NEXT:    movq %r11, %rax
5562 ; X64-NEXT:    mulq %rdi
5563 ; X64-NEXT:    movq %rdx, %r13
5564 ; X64-NEXT:    movq %rax, %r11
5565 ; X64-NEXT:    addq %rbp, %r11
5566 ; X64-NEXT:    movzbl %cl, %eax
5567 ; X64-NEXT:    adcq %rax, %r13
5568 ; X64-NEXT:    addq %r9, %r11
5569 ; X64-NEXT:    adcq %r8, %r13
5570 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Reload
5571 ; X64-NEXT:    movq 120(%rdx), %rcx
5572 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5573 ; X64-NEXT:    imulq %rax, %rcx
5574 ; X64-NEXT:    movq 112(%rdx), %rsi
5575 ; X64-NEXT:    movq %rdx, %rdi
5576 ; X64-NEXT:    movq %rax, %rbx
5577 ; X64-NEXT:    mulq %rsi
5578 ; X64-NEXT:    movq %rax, %r10
5579 ; X64-NEXT:    addq %rcx, %rdx
5580 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5581 ; X64-NEXT:    imulq %r8, %rsi
5582 ; X64-NEXT:    addq %rdx, %rsi
5583 ; X64-NEXT:    movq 96(%rdi), %rcx
5584 ; X64-NEXT:    movq 104(%rdi), %rbp
5585 ; X64-NEXT:    movq %r15, %rax
5586 ; X64-NEXT:    movq %r15, %rdi
5587 ; X64-NEXT:    imulq %rbp, %rdi
5588 ; X64-NEXT:    mulq %rcx
5589 ; X64-NEXT:    movq %rax, %r9
5590 ; X64-NEXT:    addq %rdi, %rdx
5591 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5592 ; X64-NEXT:    imulq %rcx, %rax
5593 ; X64-NEXT:    addq %rdx, %rax
5594 ; X64-NEXT:    addq %r10, %r9
5595 ; X64-NEXT:    adcq %rsi, %rax
5596 ; X64-NEXT:    movq %rax, %r10
5597 ; X64-NEXT:    movq %rcx, %rax
5598 ; X64-NEXT:    mulq %rbx
5599 ; X64-NEXT:    movq %rdx, %rsi
5600 ; X64-NEXT:    movq %rax, %r15
5601 ; X64-NEXT:    movq %rbp, %rax
5602 ; X64-NEXT:    mulq %rbx
5603 ; X64-NEXT:    movq %rdx, %rbx
5604 ; X64-NEXT:    movq %rax, %rdi
5605 ; X64-NEXT:    addq %rsi, %rdi
5606 ; X64-NEXT:    adcq $0, %rbx
5607 ; X64-NEXT:    movq %rcx, %rax
5608 ; X64-NEXT:    mulq %r8
5609 ; X64-NEXT:    movq %rdx, %rcx
5610 ; X64-NEXT:    movq %rax, %rsi
5611 ; X64-NEXT:    addq %rdi, %rsi
5612 ; X64-NEXT:    adcq %rbx, %rcx
5613 ; X64-NEXT:    setb %bl
5614 ; X64-NEXT:    movq %rbp, %rax
5615 ; X64-NEXT:    mulq %r8
5616 ; X64-NEXT:    addq %rcx, %rax
5617 ; X64-NEXT:    movzbl %bl, %ecx
5618 ; X64-NEXT:    adcq %rcx, %rdx
5619 ; X64-NEXT:    addq %r9, %rax
5620 ; X64-NEXT:    adcq %r10, %rdx
5621 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Folded Reload
5622 ; X64-NEXT:    adcq %r14, %rsi
5623 ; X64-NEXT:    adcq %r11, %rax
5624 ; X64-NEXT:    adcq %r13, %rdx
5625 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Folded Reload
5626 ; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5627 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5628 ; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5629 ; X64-NEXT:    adcq %r12, %rax
5630 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5631 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5632 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5633 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5634 ; X64-NEXT:    movq 80(%r9), %rbp
5635 ; X64-NEXT:    movq %rbp, %rax
5636 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5637 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5638 ; X64-NEXT:    mulq %r14
5639 ; X64-NEXT:    movq %rax, %r15
5640 ; X64-NEXT:    movq %rdx, %rcx
5641 ; X64-NEXT:    movq 88(%r9), %rbx
5642 ; X64-NEXT:    movq %rbx, %rax
5643 ; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5644 ; X64-NEXT:    mulq %r14
5645 ; X64-NEXT:    movq %rdx, %rsi
5646 ; X64-NEXT:    movq %rax, %rdi
5647 ; X64-NEXT:    addq %rcx, %rdi
5648 ; X64-NEXT:    adcq $0, %rsi
5649 ; X64-NEXT:    movq %rbp, %rax
5650 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5651 ; X64-NEXT:    mulq %rcx
5652 ; X64-NEXT:    movq %rdx, %rbp
5653 ; X64-NEXT:    movq %rax, %r10
5654 ; X64-NEXT:    addq %rdi, %r10
5655 ; X64-NEXT:    adcq %rsi, %rbp
5656 ; X64-NEXT:    setb %sil
5657 ; X64-NEXT:    movq %rbx, %rax
5658 ; X64-NEXT:    mulq %rcx
5659 ; X64-NEXT:    movq %rcx, %rbx
5660 ; X64-NEXT:    movq %rdx, %r8
5661 ; X64-NEXT:    movq %rax, %r11
5662 ; X64-NEXT:    addq %rbp, %r11
5663 ; X64-NEXT:    movzbl %sil, %eax
5664 ; X64-NEXT:    adcq %rax, %r8
5665 ; X64-NEXT:    movq 64(%r9), %r13
5666 ; X64-NEXT:    movq %r13, %rax
5667 ; X64-NEXT:    movq %r14, %rdi
5668 ; X64-NEXT:    mulq %r14
5669 ; X64-NEXT:    movq %rax, (%rsp) # 8-byte Spill
5670 ; X64-NEXT:    movq %rdx, %r14
5671 ; X64-NEXT:    movq 72(%r9), %rax
5672 ; X64-NEXT:    movq %rax, %r9
5673 ; X64-NEXT:    mulq %rdi
5674 ; X64-NEXT:    movq %rdx, %rdi
5675 ; X64-NEXT:    movq %rax, %rbp
5676 ; X64-NEXT:    addq %r14, %rbp
5677 ; X64-NEXT:    adcq $0, %rdi
5678 ; X64-NEXT:    movq %r13, %rax
5679 ; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5680 ; X64-NEXT:    mulq %rcx
5681 ; X64-NEXT:    movq %rdx, %rsi
5682 ; X64-NEXT:    addq %rbp, %rax
5683 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5684 ; X64-NEXT:    adcq %rdi, %rsi
5685 ; X64-NEXT:    setb %cl
5686 ; X64-NEXT:    movq %r9, %rax
5687 ; X64-NEXT:    mulq %rbx
5688 ; X64-NEXT:    movq %rdx, %r14
5689 ; X64-NEXT:    movq %rax, %r12
5690 ; X64-NEXT:    addq %rsi, %r12
5691 ; X64-NEXT:    movzbl %cl, %eax
5692 ; X64-NEXT:    adcq %rax, %r14
5693 ; X64-NEXT:    addq %r15, %r12
5694 ; X64-NEXT:    adcq %r10, %r14
5695 ; X64-NEXT:    adcq $0, %r11
5696 ; X64-NEXT:    adcq $0, %r8
5697 ; X64-NEXT:    movq %r13, %rax
5698 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5699 ; X64-NEXT:    mulq %rbx
5700 ; X64-NEXT:    movq %rdx, %rbp
5701 ; X64-NEXT:    movq %rax, %r10
5702 ; X64-NEXT:    movq %r9, %rax
5703 ; X64-NEXT:    movq %r9, %r15
5704 ; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5705 ; X64-NEXT:    mulq %rbx
5706 ; X64-NEXT:    movq %rdx, %rsi
5707 ; X64-NEXT:    movq %rax, %rcx
5708 ; X64-NEXT:    addq %rbp, %rcx
5709 ; X64-NEXT:    adcq $0, %rsi
5710 ; X64-NEXT:    movq %r13, %rax
5711 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5712 ; X64-NEXT:    mulq %r9
5713 ; X64-NEXT:    movq %rdx, %rdi
5714 ; X64-NEXT:    addq %rcx, %rax
5715 ; X64-NEXT:    movq %rax, %rbp
5716 ; X64-NEXT:    adcq %rsi, %rdi
5717 ; X64-NEXT:    setb %cl
5718 ; X64-NEXT:    movq %r15, %rax
5719 ; X64-NEXT:    mulq %r9
5720 ; X64-NEXT:    movq %rdx, %r15
5721 ; X64-NEXT:    movq %rax, %r13
5722 ; X64-NEXT:    addq %rdi, %r13
5723 ; X64-NEXT:    movzbl %cl, %eax
5724 ; X64-NEXT:    adcq %rax, %r15
5725 ; X64-NEXT:    addq %r12, %r10
5726 ; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5727 ; X64-NEXT:    adcq %r14, %rbp
5728 ; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5729 ; X64-NEXT:    adcq $0, %r13
5730 ; X64-NEXT:    adcq $0, %r15
5731 ; X64-NEXT:    addq %r11, %r13
5732 ; X64-NEXT:    adcq %r8, %r15
5733 ; X64-NEXT:    setb %r8b
5734 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5735 ; X64-NEXT:    movq %rbp, %rax
5736 ; X64-NEXT:    mulq %rbx
5737 ; X64-NEXT:    movq %rdx, %r11
5738 ; X64-NEXT:    movq %rax, %r12
5739 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5740 ; X64-NEXT:    movq %r10, %rax
5741 ; X64-NEXT:    mulq %rbx
5742 ; X64-NEXT:    movq %rdx, %rsi
5743 ; X64-NEXT:    movq %rax, %rcx
5744 ; X64-NEXT:    addq %r11, %rcx
5745 ; X64-NEXT:    adcq $0, %rsi
5746 ; X64-NEXT:    movq %rbp, %rax
5747 ; X64-NEXT:    mulq %r9
5748 ; X64-NEXT:    movq %rdx, %r14
5749 ; X64-NEXT:    addq %rcx, %rax
5750 ; X64-NEXT:    movq %rax, %rcx
5751 ; X64-NEXT:    adcq %rsi, %r14
5752 ; X64-NEXT:    setb %sil
5753 ; X64-NEXT:    movq %r10, %rax
5754 ; X64-NEXT:    mulq %r9
5755 ; X64-NEXT:    addq %r14, %rax
5756 ; X64-NEXT:    movzbl %sil, %esi
5757 ; X64-NEXT:    adcq %rsi, %rdx
5758 ; X64-NEXT:    addq %r13, %r12
5759 ; X64-NEXT:    movq %r12, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5760 ; X64-NEXT:    adcq %r15, %rcx
5761 ; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5762 ; X64-NEXT:    movzbl %r8b, %ecx
5763 ; X64-NEXT:    adcq %rcx, %rax
5764 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5765 ; X64-NEXT:    adcq $0, %rdx
5766 ; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5767 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5768 ; X64-NEXT:    movq 96(%rbp), %rsi
5769 ; X64-NEXT:    imulq %rsi, %r9
5770 ; X64-NEXT:    movq %rsi, %rax
5771 ; X64-NEXT:    mulq %rbx
5772 ; X64-NEXT:    movq %rax, %r14
5773 ; X64-NEXT:    addq %r9, %rdx
5774 ; X64-NEXT:    movq 104(%rbp), %r15
5775 ; X64-NEXT:    imulq %r15, %rbx
5776 ; X64-NEXT:    addq %rdx, %rbx
5777 ; X64-NEXT:    movq %rbx, %r9
5778 ; X64-NEXT:    movq 112(%rbp), %rax
5779 ; X64-NEXT:    movq %rbp, %rdi
5780 ; X64-NEXT:    movq %rax, %rcx
5781 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5782 ; X64-NEXT:    imulq %rbx, %rcx
5783 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5784 ; X64-NEXT:    mulq %rbp
5785 ; X64-NEXT:    movq %rax, %r13
5786 ; X64-NEXT:    addq %rcx, %rdx
5787 ; X64-NEXT:    movq 120(%rdi), %r8
5788 ; X64-NEXT:    imulq %rbp, %r8
5789 ; X64-NEXT:    addq %rdx, %r8
5790 ; X64-NEXT:    addq %r14, %r13
5791 ; X64-NEXT:    adcq %r9, %r8
5792 ; X64-NEXT:    movq %rbp, %rax
5793 ; X64-NEXT:    mulq %rsi
5794 ; X64-NEXT:    movq %rdx, %r14
5795 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5796 ; X64-NEXT:    movq %rbx, %rax
5797 ; X64-NEXT:    mulq %rsi
5798 ; X64-NEXT:    movq %rdx, %rsi
5799 ; X64-NEXT:    movq %rax, %rcx
5800 ; X64-NEXT:    addq %r14, %rcx
5801 ; X64-NEXT:    adcq $0, %rsi
5802 ; X64-NEXT:    movq %rbp, %rax
5803 ; X64-NEXT:    mulq %r15
5804 ; X64-NEXT:    movq %rdx, %rdi
5805 ; X64-NEXT:    addq %rcx, %rax
5806 ; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5807 ; X64-NEXT:    adcq %rsi, %rdi
5808 ; X64-NEXT:    setb %cl
5809 ; X64-NEXT:    movq %rbx, %rax
5810 ; X64-NEXT:    mulq %r15
5811 ; X64-NEXT:    movq %rdx, %r12
5812 ; X64-NEXT:    movq %rax, %r15
5813 ; X64-NEXT:    addq %rdi, %r15
5814 ; X64-NEXT:    movzbl %cl, %eax
5815 ; X64-NEXT:    adcq %rax, %r12
5816 ; X64-NEXT:    addq %r13, %r15
5817 ; X64-NEXT:    adcq %r8, %r12
5818 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5819 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Reload
5820 ; X64-NEXT:    imulq %r11, %rcx
5821 ; X64-NEXT:    movq %r11, %rax
5822 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5823 ; X64-NEXT:    mulq %rsi
5824 ; X64-NEXT:    movq %rax, %r8
5825 ; X64-NEXT:    addq %rcx, %rdx
5826 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5827 ; X64-NEXT:    imulq %r14, %rsi
5828 ; X64-NEXT:    addq %rdx, %rsi
5829 ; X64-NEXT:    movq %rsi, %r9
5830 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5831 ; X64-NEXT:    movq %rax, %rsi
5832 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5833 ; X64-NEXT:    imulq %rbp, %rsi
5834 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5835 ; X64-NEXT:    mulq %rdi
5836 ; X64-NEXT:    movq %rax, %r13
5837 ; X64-NEXT:    addq %rsi, %rdx
5838 ; X64-NEXT:    imulq %rdi, %r10
5839 ; X64-NEXT:    addq %rdx, %r10
5840 ; X64-NEXT:    addq %r8, %r13
5841 ; X64-NEXT:    adcq %r9, %r10
5842 ; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5843 ; X64-NEXT:    movq %rdi, %rax
5844 ; X64-NEXT:    movq %rdi, %r10
5845 ; X64-NEXT:    mulq %r11
5846 ; X64-NEXT:    movq %rdx, %rsi
5847 ; X64-NEXT:    movq %rax, %r8
5848 ; X64-NEXT:    movq %rbp, %rax
5849 ; X64-NEXT:    mulq %r11
5850 ; X64-NEXT:    movq %rdx, %r9
5851 ; X64-NEXT:    movq %rax, %rdi
5852 ; X64-NEXT:    addq %rsi, %rdi
5853 ; X64-NEXT:    adcq $0, %r9
5854 ; X64-NEXT:    movq %r10, %rax
5855 ; X64-NEXT:    mulq %r14
5856 ; X64-NEXT:    movq %rdx, %rcx
5857 ; X64-NEXT:    movq %rax, %rsi
5858 ; X64-NEXT:    addq %rdi, %rsi
5859 ; X64-NEXT:    adcq %r9, %rcx
5860 ; X64-NEXT:    setb %dil
5861 ; X64-NEXT:    movq %rbp, %rax
5862 ; X64-NEXT:    mulq %r14
5863 ; X64-NEXT:    addq %rcx, %rax
5864 ; X64-NEXT:    movzbl %dil, %ecx
5865 ; X64-NEXT:    adcq %rcx, %rdx
5866 ; X64-NEXT:    addq %r13, %rax
5867 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5868 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Folded Reload
5869 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5870 ; X64-NEXT:    adcq %r15, %rax
5871 ; X64-NEXT:    adcq %r12, %rdx
5872 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Folded Reload
5873 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5874 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5875 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5876 ; X64-NEXT:    movq (%rsp), %rcx # 8-byte Reload
5877 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5878 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5879 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Folded Reload
5880 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5881 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Folded Reload
5882 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5883 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Folded Reload
5884 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Folded Reload
5885 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5886 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5887 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5888 ; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5889 ; X64-NEXT:    movq %rcx, %r9
5890 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Folded Reload
5891 ; X64-NEXT:    movq %rdi, %r10
5892 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Folded Reload
5893 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Folded Reload
5894 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Folded Reload
5895 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5896 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5897 ; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5898 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5899 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5900 ; X64-NEXT:    movq %rdi, (%rcx)
5901 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5902 ; X64-NEXT:    movq %rdi, 8(%rcx)
5903 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5904 ; X64-NEXT:    movq %rdi, 16(%rcx)
5905 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5906 ; X64-NEXT:    movq %rdi, 24(%rcx)
5907 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5908 ; X64-NEXT:    movq %rdi, 32(%rcx)
5909 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5910 ; X64-NEXT:    movq %rdi, 40(%rcx)
5911 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5912 ; X64-NEXT:    movq %rdi, 48(%rcx)
5913 ; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5914 ; X64-NEXT:    movq %rdi, 56(%rcx)
5915 ; X64-NEXT:    movq %r9, 64(%rcx)
5916 ; X64-NEXT:    movq %r10, 72(%rcx)
5917 ; X64-NEXT:    movq %rbx, 80(%rcx)
5918 ; X64-NEXT:    movq %rbp, 88(%rcx)
5919 ; X64-NEXT:    movq %r8, 96(%rcx)
5920 ; X64-NEXT:    movq %rsi, 104(%rcx)
5921 ; X64-NEXT:    movq %rax, 112(%rcx)
5922 ; X64-NEXT:    movq %rdx, 120(%rcx)
5923 ; X64-NEXT:    addq $240, %rsp
5924 ; X64-NEXT:    popq %rbx
5925 ; X64-NEXT:    popq %r12
5926 ; X64-NEXT:    popq %r13
5927 ; X64-NEXT:    popq %r14
5928 ; X64-NEXT:    popq %r15
5929 ; X64-NEXT:    popq %rbp
5930 ; X64-NEXT:    retq
5931   %av = load i1024, i1024* %a
5932   %bv = load i1024, i1024* %b
5933   %r = mul i1024 %av, %bv
5934   store i1024 %r, i1024* %out
5935   ret void