xref: /llvm-project/llvm/test/CodeGen/X86/mul-i1024.ll (revision 401d123a1fdcbbf4ae7a20178957b7e3a625c044)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc < %s -mtriple=i386-unknown | FileCheck %s --check-prefix=X86
3; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefix=X64
4
5define void @test_1024(ptr %a, ptr %b, ptr %out) nounwind {
6; X86-LABEL: test_1024:
7; X86:       # %bb.0:
8; X86-NEXT:    pushl %ebp
9; X86-NEXT:    pushl %ebx
10; X86-NEXT:    pushl %edi
11; X86-NEXT:    pushl %esi
12; X86-NEXT:    subl $400, %esp # imm = 0x190
13; X86-NEXT:    movl {{[0-9]+}}(%esp), %ebx
14; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
15; X86-NEXT:    movl 60(%eax), %ebp
16; X86-NEXT:    movl 56(%eax), %eax
17; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
18; X86-NEXT:    movl (%ebx), %esi
19; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
20; X86-NEXT:    mull %esi
21; X86-NEXT:    movl %edx, %edi
22; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
23; X86-NEXT:    movl %ebp, %eax
24; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
25; X86-NEXT:    mull %esi
26; X86-NEXT:    movl %edx, %ecx
27; X86-NEXT:    movl %eax, %esi
28; X86-NEXT:    addl %edi, %esi
29; X86-NEXT:    adcl $0, %ecx
30; X86-NEXT:    movl 4(%ebx), %ebx
31; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
32; X86-NEXT:    mull %ebx
33; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
34; X86-NEXT:    movl %edx, %edi
35; X86-NEXT:    addl %esi, %eax
36; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
37; X86-NEXT:    adcl %ecx, %edi
38; X86-NEXT:    setb %cl
39; X86-NEXT:    movl %ebp, %eax
40; X86-NEXT:    mull %ebx
41; X86-NEXT:    addl %edi, %eax
42; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
43; X86-NEXT:    movzbl %cl, %eax
44; X86-NEXT:    adcl %eax, %edx
45; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
46; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
47; X86-NEXT:    movl 48(%ecx), %ebx
48; X86-NEXT:    movl %ebx, %eax
49; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
50; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
51; X86-NEXT:    mull %ebp
52; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
53; X86-NEXT:    movl %edx, %edi
54; X86-NEXT:    movl 52(%ecx), %eax
55; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
56; X86-NEXT:    mull %ebp
57; X86-NEXT:    movl %edx, %ecx
58; X86-NEXT:    movl %eax, %esi
59; X86-NEXT:    addl %edi, %esi
60; X86-NEXT:    adcl $0, %ecx
61; X86-NEXT:    movl %ebx, %eax
62; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
63; X86-NEXT:    mull %edi
64; X86-NEXT:    movl %edx, %ebp
65; X86-NEXT:    addl %esi, %eax
66; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
67; X86-NEXT:    adcl %ecx, %ebp
68; X86-NEXT:    setb %bl
69; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
70; X86-NEXT:    movl %esi, %eax
71; X86-NEXT:    mull %edi
72; X86-NEXT:    addl %ebp, %eax
73; X86-NEXT:    movzbl %bl, %ecx
74; X86-NEXT:    adcl %ecx, %edx
75; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
76; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
77; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
78; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
79; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
80; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
81; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
82; X86-NEXT:    movl 8(%eax), %ecx
83; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
84; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
85; X86-NEXT:    movl %edi, %eax
86; X86-NEXT:    mull %ecx
87; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
88; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
89; X86-NEXT:    movl %esi, %eax
90; X86-NEXT:    mull %ecx
91; X86-NEXT:    movl %edx, %ebx
92; X86-NEXT:    movl %eax, %ebp
93; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
94; X86-NEXT:    adcl $0, %ebx
95; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
96; X86-NEXT:    movl 12(%eax), %ecx
97; X86-NEXT:    movl %edi, %eax
98; X86-NEXT:    mull %ecx
99; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
100; X86-NEXT:    movl %edx, %esi
101; X86-NEXT:    addl %ebp, %eax
102; X86-NEXT:    movl %eax, %edi
103; X86-NEXT:    adcl %ebx, %esi
104; X86-NEXT:    setb %bl
105; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
106; X86-NEXT:    mull %ecx
107; X86-NEXT:    movl %eax, %ebp
108; X86-NEXT:    addl %esi, %ebp
109; X86-NEXT:    movzbl %bl, %eax
110; X86-NEXT:    adcl %eax, %edx
111; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
112; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
113; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
114; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
115; X86-NEXT:    adcl $0, %ebp
116; X86-NEXT:    adcl $0, %edx
117; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
118; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
119; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
120; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
121; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
122; X86-NEXT:    movl %esi, %eax
123; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
124; X86-NEXT:    mull %ecx
125; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
126; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
127; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
128; X86-NEXT:    mull %ecx
129; X86-NEXT:    movl %edx, %ebx
130; X86-NEXT:    movl %eax, %edi
131; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
132; X86-NEXT:    adcl $0, %ebx
133; X86-NEXT:    movl %esi, %eax
134; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
135; X86-NEXT:    mull %ecx
136; X86-NEXT:    movl %edx, %esi
137; X86-NEXT:    addl %edi, %eax
138; X86-NEXT:    movl %eax, %edi
139; X86-NEXT:    adcl %ebx, %esi
140; X86-NEXT:    setb %bl
141; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
142; X86-NEXT:    mull %ecx
143; X86-NEXT:    addl %esi, %eax
144; X86-NEXT:    movl %eax, %esi
145; X86-NEXT:    movzbl %bl, %eax
146; X86-NEXT:    adcl %eax, %edx
147; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
148; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
149; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
150; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
151; X86-NEXT:    adcl %eax, %esi
152; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
153; X86-NEXT:    adcl $0, %edx
154; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
155; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
156; X86-NEXT:    movl 40(%ecx), %ebx
157; X86-NEXT:    movl %ebx, %eax
158; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
159; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
160; X86-NEXT:    mull %esi
161; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
162; X86-NEXT:    movl %edx, %edi
163; X86-NEXT:    movl 44(%ecx), %ebp
164; X86-NEXT:    movl %ebp, %eax
165; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
166; X86-NEXT:    mull %esi
167; X86-NEXT:    movl %edx, %ecx
168; X86-NEXT:    movl %eax, %esi
169; X86-NEXT:    addl %edi, %esi
170; X86-NEXT:    adcl $0, %ecx
171; X86-NEXT:    movl %ebx, %eax
172; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
173; X86-NEXT:    mull %ebx
174; X86-NEXT:    movl %edx, %edi
175; X86-NEXT:    addl %esi, %eax
176; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
177; X86-NEXT:    adcl %ecx, %edi
178; X86-NEXT:    setb %cl
179; X86-NEXT:    movl %ebp, %eax
180; X86-NEXT:    mull %ebx
181; X86-NEXT:    addl %edi, %eax
182; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
183; X86-NEXT:    movzbl %cl, %eax
184; X86-NEXT:    adcl %eax, %edx
185; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
186; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
187; X86-NEXT:    movl 32(%ecx), %ebp
188; X86-NEXT:    movl %ebp, %eax
189; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
190; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
191; X86-NEXT:    mull %esi
192; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
193; X86-NEXT:    movl %edx, %edi
194; X86-NEXT:    movl 36(%ecx), %eax
195; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
196; X86-NEXT:    mull %esi
197; X86-NEXT:    movl %edx, %ecx
198; X86-NEXT:    movl %eax, %esi
199; X86-NEXT:    addl %edi, %esi
200; X86-NEXT:    adcl $0, %ecx
201; X86-NEXT:    movl %ebp, %eax
202; X86-NEXT:    mull %ebx
203; X86-NEXT:    movl %ebx, %ebp
204; X86-NEXT:    movl %edx, %ebx
205; X86-NEXT:    addl %esi, %eax
206; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
207; X86-NEXT:    adcl %ecx, %ebx
208; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
209; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
210; X86-NEXT:    movl %edi, %eax
211; X86-NEXT:    mull %ebp
212; X86-NEXT:    movl %eax, %ecx
213; X86-NEXT:    addl %ebx, %ecx
214; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
215; X86-NEXT:    adcl %eax, %edx
216; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
217; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
218; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
219; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
220; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
221; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
222; X86-NEXT:    movl %esi, %eax
223; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
224; X86-NEXT:    mull %ebx
225; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
226; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
227; X86-NEXT:    movl %edi, %eax
228; X86-NEXT:    mull %ebx
229; X86-NEXT:    movl %edx, %ebx
230; X86-NEXT:    movl %eax, %ebp
231; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
232; X86-NEXT:    adcl $0, %ebx
233; X86-NEXT:    movl %esi, %eax
234; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
235; X86-NEXT:    mull %edi
236; X86-NEXT:    movl %edx, %esi
237; X86-NEXT:    addl %ebp, %eax
238; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
239; X86-NEXT:    adcl %ebx, %esi
240; X86-NEXT:    setb %bl
241; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
242; X86-NEXT:    mull %edi
243; X86-NEXT:    movl %eax, %ebp
244; X86-NEXT:    addl %esi, %ebp
245; X86-NEXT:    movzbl %bl, %eax
246; X86-NEXT:    adcl %eax, %edx
247; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
248; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
249; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
250; X86-NEXT:    adcl $0, %ebp
251; X86-NEXT:    adcl $0, %edx
252; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
253; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
254; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
255; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
256; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
257; X86-NEXT:    movl %ebx, %eax
258; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
259; X86-NEXT:    mull %ecx
260; X86-NEXT:    movl %edx, %esi
261; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
262; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
263; X86-NEXT:    mull %ecx
264; X86-NEXT:    movl %edx, %ecx
265; X86-NEXT:    movl %eax, %edi
266; X86-NEXT:    addl %esi, %edi
267; X86-NEXT:    adcl $0, %ecx
268; X86-NEXT:    movl %ebx, %eax
269; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
270; X86-NEXT:    mull %ebx
271; X86-NEXT:    movl %edx, %esi
272; X86-NEXT:    addl %edi, %eax
273; X86-NEXT:    movl %eax, %edi
274; X86-NEXT:    adcl %ecx, %esi
275; X86-NEXT:    setb %cl
276; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
277; X86-NEXT:    mull %ebx
278; X86-NEXT:    addl %esi, %eax
279; X86-NEXT:    movzbl %cl, %ecx
280; X86-NEXT:    movl %edx, %esi
281; X86-NEXT:    adcl %ecx, %esi
282; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
283; X86-NEXT:    addl %ebp, %ecx
284; X86-NEXT:    movl %edi, %edx
285; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
286; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
287; X86-NEXT:    adcl %edi, %eax
288; X86-NEXT:    adcl $0, %esi
289; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
290; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
291; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
292; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
293; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
294; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
295; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
296; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
297; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
298; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
299; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
300; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
301; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
302; X86-NEXT:    movl 16(%eax), %esi
303; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
304; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
305; X86-NEXT:    movl %edi, %eax
306; X86-NEXT:    mull %esi
307; X86-NEXT:    movl %edx, %ecx
308; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
309; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
310; X86-NEXT:    movl %ebp, %eax
311; X86-NEXT:    mull %esi
312; X86-NEXT:    movl %edx, %esi
313; X86-NEXT:    movl %eax, %ebx
314; X86-NEXT:    addl %ecx, %ebx
315; X86-NEXT:    adcl $0, %esi
316; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
317; X86-NEXT:    movl 20(%eax), %ecx
318; X86-NEXT:    movl %edi, %eax
319; X86-NEXT:    mull %ecx
320; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
321; X86-NEXT:    movl %edx, %edi
322; X86-NEXT:    addl %ebx, %eax
323; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
324; X86-NEXT:    adcl %esi, %edi
325; X86-NEXT:    setb %bl
326; X86-NEXT:    movl %ebp, %eax
327; X86-NEXT:    mull %ecx
328; X86-NEXT:    addl %edi, %eax
329; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
330; X86-NEXT:    movzbl %bl, %eax
331; X86-NEXT:    adcl %eax, %edx
332; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
333; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
334; X86-NEXT:    movl %ebp, %eax
335; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
336; X86-NEXT:    mull %esi
337; X86-NEXT:    movl %edx, %ebx
338; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
339; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
340; X86-NEXT:    movl %ecx, %eax
341; X86-NEXT:    mull %esi
342; X86-NEXT:    movl %edx, %esi
343; X86-NEXT:    movl %eax, %edi
344; X86-NEXT:    addl %ebx, %edi
345; X86-NEXT:    adcl $0, %esi
346; X86-NEXT:    movl %ebp, %eax
347; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
348; X86-NEXT:    mull %ebx
349; X86-NEXT:    movl %edx, %ebp
350; X86-NEXT:    addl %edi, %eax
351; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
352; X86-NEXT:    adcl %esi, %ebp
353; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
354; X86-NEXT:    movl %ecx, %eax
355; X86-NEXT:    mull %ebx
356; X86-NEXT:    addl %ebp, %eax
357; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
358; X86-NEXT:    adcl %esi, %edx
359; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
360; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
361; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
362; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
363; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
364; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
365; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
366; X86-NEXT:    movl 24(%eax), %edi
367; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
368; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
369; X86-NEXT:    movl %esi, %eax
370; X86-NEXT:    mull %edi
371; X86-NEXT:    movl %edx, %ebx
372; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
373; X86-NEXT:    movl %ecx, %eax
374; X86-NEXT:    mull %edi
375; X86-NEXT:    movl %edx, %ecx
376; X86-NEXT:    movl %eax, %ebp
377; X86-NEXT:    addl %ebx, %ebp
378; X86-NEXT:    adcl $0, %ecx
379; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
380; X86-NEXT:    movl 28(%eax), %edi
381; X86-NEXT:    movl %esi, %eax
382; X86-NEXT:    mull %edi
383; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
384; X86-NEXT:    movl %edx, %ebx
385; X86-NEXT:    addl %ebp, %eax
386; X86-NEXT:    movl %eax, %esi
387; X86-NEXT:    adcl %ecx, %ebx
388; X86-NEXT:    setb %cl
389; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
390; X86-NEXT:    mull %edi
391; X86-NEXT:    movl %eax, %ebp
392; X86-NEXT:    addl %ebx, %ebp
393; X86-NEXT:    movzbl %cl, %eax
394; X86-NEXT:    adcl %eax, %edx
395; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
396; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
397; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
398; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
399; X86-NEXT:    adcl $0, %ebp
400; X86-NEXT:    adcl $0, %edx
401; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
402; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
403; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
404; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
405; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
406; X86-NEXT:    movl %edi, %eax
407; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
408; X86-NEXT:    mull %ecx
409; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
410; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
411; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
412; X86-NEXT:    mull %ecx
413; X86-NEXT:    movl %edx, %esi
414; X86-NEXT:    movl %eax, %ebx
415; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
416; X86-NEXT:    adcl $0, %esi
417; X86-NEXT:    movl %edi, %eax
418; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
419; X86-NEXT:    mull %ecx
420; X86-NEXT:    movl %edx, %edi
421; X86-NEXT:    addl %ebx, %eax
422; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
423; X86-NEXT:    adcl %esi, %edi
424; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
425; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
426; X86-NEXT:    mull %ecx
427; X86-NEXT:    movl %eax, %ebx
428; X86-NEXT:    addl %edi, %ebx
429; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
430; X86-NEXT:    movl %edx, %esi
431; X86-NEXT:    adcl %eax, %esi
432; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
433; X86-NEXT:    addl %ebp, %edx
434; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
435; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
436; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
437; X86-NEXT:    adcl %eax, %ebx
438; X86-NEXT:    adcl $0, %esi
439; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
440; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
441; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
442; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
443; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
444; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
445; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
446; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
447; X86-NEXT:    movl %edx, %eax
448; X86-NEXT:    adcl $0, %eax
449; X86-NEXT:    adcl $0, %ecx
450; X86-NEXT:    adcl $0, %ebx
451; X86-NEXT:    adcl $0, %esi
452; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
453; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
454; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
455; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
456; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
457; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
458; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
459; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
460; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
461; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
462; X86-NEXT:    movl %ebx, %eax
463; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
464; X86-NEXT:    mull %ecx
465; X86-NEXT:    movl %edx, %edi
466; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
467; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
468; X86-NEXT:    movl %ebp, %eax
469; X86-NEXT:    mull %ecx
470; X86-NEXT:    movl %edx, %ecx
471; X86-NEXT:    movl %eax, %esi
472; X86-NEXT:    addl %edi, %esi
473; X86-NEXT:    adcl $0, %ecx
474; X86-NEXT:    movl %ebx, %eax
475; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
476; X86-NEXT:    mull %ebx
477; X86-NEXT:    movl %edx, %edi
478; X86-NEXT:    addl %esi, %eax
479; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
480; X86-NEXT:    adcl %ecx, %edi
481; X86-NEXT:    setb %cl
482; X86-NEXT:    movl %ebp, %eax
483; X86-NEXT:    mull %ebx
484; X86-NEXT:    addl %edi, %eax
485; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
486; X86-NEXT:    movzbl %cl, %eax
487; X86-NEXT:    adcl %eax, %edx
488; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
489; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
490; X86-NEXT:    movl %ebx, %eax
491; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
492; X86-NEXT:    mull %ecx
493; X86-NEXT:    movl %edx, %edi
494; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
495; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
496; X86-NEXT:    movl %ebp, %eax
497; X86-NEXT:    mull %ecx
498; X86-NEXT:    movl %edx, %ecx
499; X86-NEXT:    movl %eax, %esi
500; X86-NEXT:    addl %edi, %esi
501; X86-NEXT:    adcl $0, %ecx
502; X86-NEXT:    movl %ebx, %eax
503; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
504; X86-NEXT:    mull %edi
505; X86-NEXT:    movl %edx, %ebx
506; X86-NEXT:    addl %esi, %eax
507; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
508; X86-NEXT:    adcl %ecx, %ebx
509; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
510; X86-NEXT:    movl %ebp, %eax
511; X86-NEXT:    mull %edi
512; X86-NEXT:    movl %eax, %ecx
513; X86-NEXT:    addl %ebx, %ecx
514; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
515; X86-NEXT:    adcl %eax, %edx
516; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
517; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
518; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
519; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
520; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
521; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
522; X86-NEXT:    movl %esi, %eax
523; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
524; X86-NEXT:    mull %edi
525; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
526; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
527; X86-NEXT:    movl %ebp, %eax
528; X86-NEXT:    mull %edi
529; X86-NEXT:    movl %edx, %ebx
530; X86-NEXT:    movl %eax, %ebp
531; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
532; X86-NEXT:    adcl $0, %ebx
533; X86-NEXT:    movl %esi, %eax
534; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
535; X86-NEXT:    mull %edi
536; X86-NEXT:    movl %edx, %esi
537; X86-NEXT:    addl %ebp, %eax
538; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
539; X86-NEXT:    adcl %ebx, %esi
540; X86-NEXT:    setb %bl
541; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
542; X86-NEXT:    mull %edi
543; X86-NEXT:    movl %eax, %ebp
544; X86-NEXT:    addl %esi, %ebp
545; X86-NEXT:    movzbl %bl, %eax
546; X86-NEXT:    adcl %eax, %edx
547; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
548; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
549; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
550; X86-NEXT:    adcl $0, %ebp
551; X86-NEXT:    adcl $0, %edx
552; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
553; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
554; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
555; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
556; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
557; X86-NEXT:    movl %esi, %eax
558; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
559; X86-NEXT:    mull %ecx
560; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
561; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
562; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
563; X86-NEXT:    mull %ecx
564; X86-NEXT:    movl %edx, %ebx
565; X86-NEXT:    movl %eax, %edi
566; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
567; X86-NEXT:    adcl $0, %ebx
568; X86-NEXT:    movl %esi, %eax
569; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
570; X86-NEXT:    mull %ecx
571; X86-NEXT:    movl %edx, %esi
572; X86-NEXT:    addl %edi, %eax
573; X86-NEXT:    movl %eax, %edi
574; X86-NEXT:    adcl %ebx, %esi
575; X86-NEXT:    setb %bl
576; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
577; X86-NEXT:    mull %ecx
578; X86-NEXT:    addl %esi, %eax
579; X86-NEXT:    movl %eax, %esi
580; X86-NEXT:    movzbl %bl, %eax
581; X86-NEXT:    adcl %eax, %edx
582; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
583; X86-NEXT:    addl %ebp, %ecx
584; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
585; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
586; X86-NEXT:    adcl %eax, %esi
587; X86-NEXT:    adcl $0, %edx
588; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
589; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
590; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
591; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
592; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
593; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
594; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
595; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
596; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
597; X86-NEXT:    adcl %eax, %ecx
598; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
599; X86-NEXT:    adcl $0, %edi
600; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
601; X86-NEXT:    adcl $0, %esi
602; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
603; X86-NEXT:    adcl $0, %edx
604; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
605; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
606; X86-NEXT:    movl 24(%ecx), %ebx
607; X86-NEXT:    movl %ebx, %eax
608; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
609; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
610; X86-NEXT:    mull %edi
611; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
612; X86-NEXT:    movl %edx, %esi
613; X86-NEXT:    movl 28(%ecx), %ebp
614; X86-NEXT:    movl %ebp, %eax
615; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
616; X86-NEXT:    mull %edi
617; X86-NEXT:    movl %edx, %ecx
618; X86-NEXT:    movl %eax, %edi
619; X86-NEXT:    addl %esi, %edi
620; X86-NEXT:    adcl $0, %ecx
621; X86-NEXT:    movl %ebx, %eax
622; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
623; X86-NEXT:    mull %ebx
624; X86-NEXT:    movl %edx, %esi
625; X86-NEXT:    addl %edi, %eax
626; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
627; X86-NEXT:    adcl %ecx, %esi
628; X86-NEXT:    setb %cl
629; X86-NEXT:    movl %ebp, %eax
630; X86-NEXT:    mull %ebx
631; X86-NEXT:    movl %ebx, %ebp
632; X86-NEXT:    addl %esi, %eax
633; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
634; X86-NEXT:    movzbl %cl, %eax
635; X86-NEXT:    adcl %eax, %edx
636; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
637; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
638; X86-NEXT:    movl 16(%ecx), %ebx
639; X86-NEXT:    movl %ebx, %eax
640; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
641; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
642; X86-NEXT:    mull %esi
643; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
644; X86-NEXT:    movl %edx, %edi
645; X86-NEXT:    movl 20(%ecx), %eax
646; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
647; X86-NEXT:    mull %esi
648; X86-NEXT:    movl %edx, %ecx
649; X86-NEXT:    movl %eax, %esi
650; X86-NEXT:    addl %edi, %esi
651; X86-NEXT:    adcl $0, %ecx
652; X86-NEXT:    movl %ebx, %eax
653; X86-NEXT:    mull %ebp
654; X86-NEXT:    movl %ebp, %ebx
655; X86-NEXT:    movl %edx, %ebp
656; X86-NEXT:    addl %esi, %eax
657; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
658; X86-NEXT:    adcl %ecx, %ebp
659; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
660; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
661; X86-NEXT:    movl %edi, %eax
662; X86-NEXT:    mull %ebx
663; X86-NEXT:    movl %eax, %ecx
664; X86-NEXT:    addl %ebp, %ecx
665; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
666; X86-NEXT:    adcl %eax, %edx
667; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
668; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
669; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
670; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
671; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
672; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
673; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
674; X86-NEXT:    mull %esi
675; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
676; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
677; X86-NEXT:    movl %edi, %eax
678; X86-NEXT:    mull %esi
679; X86-NEXT:    movl %edx, %ebx
680; X86-NEXT:    movl %eax, %ebp
681; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
682; X86-NEXT:    adcl $0, %ebx
683; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
684; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
685; X86-NEXT:    mull %esi
686; X86-NEXT:    movl %edx, %edi
687; X86-NEXT:    addl %ebp, %eax
688; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
689; X86-NEXT:    adcl %ebx, %edi
690; X86-NEXT:    setb %bl
691; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
692; X86-NEXT:    mull %esi
693; X86-NEXT:    movl %eax, %ebp
694; X86-NEXT:    addl %edi, %ebp
695; X86-NEXT:    movzbl %bl, %eax
696; X86-NEXT:    adcl %eax, %edx
697; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
698; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
699; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
700; X86-NEXT:    adcl $0, %ebp
701; X86-NEXT:    adcl $0, %edx
702; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
703; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
704; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
705; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
706; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
707; X86-NEXT:    movl %esi, %eax
708; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
709; X86-NEXT:    mull %ecx
710; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
711; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
712; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
713; X86-NEXT:    mull %ecx
714; X86-NEXT:    movl %edx, %ebx
715; X86-NEXT:    movl %eax, %edi
716; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
717; X86-NEXT:    adcl $0, %ebx
718; X86-NEXT:    movl %esi, %eax
719; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
720; X86-NEXT:    mull %ecx
721; X86-NEXT:    movl %edx, %esi
722; X86-NEXT:    addl %edi, %eax
723; X86-NEXT:    movl %eax, %edi
724; X86-NEXT:    adcl %ebx, %esi
725; X86-NEXT:    setb %bl
726; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
727; X86-NEXT:    mull %ecx
728; X86-NEXT:    addl %esi, %eax
729; X86-NEXT:    movl %eax, %esi
730; X86-NEXT:    movzbl %bl, %eax
731; X86-NEXT:    adcl %eax, %edx
732; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
733; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
734; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
735; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
736; X86-NEXT:    adcl %eax, %esi
737; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
738; X86-NEXT:    adcl $0, %edx
739; X86-NEXT:    movl %edx, (%esp) # 4-byte Spill
740; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
741; X86-NEXT:    movl 8(%ecx), %ebx
742; X86-NEXT:    movl %ebx, %eax
743; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
744; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
745; X86-NEXT:    mull %esi
746; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
747; X86-NEXT:    movl %edx, %edi
748; X86-NEXT:    movl 12(%ecx), %ebp
749; X86-NEXT:    movl %ebp, %eax
750; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
751; X86-NEXT:    mull %esi
752; X86-NEXT:    movl %edx, %ecx
753; X86-NEXT:    movl %eax, %esi
754; X86-NEXT:    addl %edi, %esi
755; X86-NEXT:    adcl $0, %ecx
756; X86-NEXT:    movl %ebx, %eax
757; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
758; X86-NEXT:    mull %edi
759; X86-NEXT:    movl %edx, %ebx
760; X86-NEXT:    addl %esi, %eax
761; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
762; X86-NEXT:    adcl %ecx, %ebx
763; X86-NEXT:    setb %cl
764; X86-NEXT:    movl %ebp, %eax
765; X86-NEXT:    mull %edi
766; X86-NEXT:    addl %ebx, %eax
767; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
768; X86-NEXT:    movzbl %cl, %eax
769; X86-NEXT:    adcl %eax, %edx
770; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
771; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
772; X86-NEXT:    movl (%ecx), %ebx
773; X86-NEXT:    movl %ebx, %eax
774; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
775; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
776; X86-NEXT:    mull %edi
777; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
778; X86-NEXT:    movl %edx, %esi
779; X86-NEXT:    movl 4(%ecx), %ebp
780; X86-NEXT:    movl %ebp, %eax
781; X86-NEXT:    mull %edi
782; X86-NEXT:    movl %edx, %ecx
783; X86-NEXT:    movl %eax, %edi
784; X86-NEXT:    addl %esi, %edi
785; X86-NEXT:    adcl $0, %ecx
786; X86-NEXT:    movl %ebx, %eax
787; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
788; X86-NEXT:    mull %ebx
789; X86-NEXT:    movl %edx, %esi
790; X86-NEXT:    addl %edi, %eax
791; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
792; X86-NEXT:    adcl %ecx, %esi
793; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
794; X86-NEXT:    movl %ebp, %eax
795; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
796; X86-NEXT:    mull %ebx
797; X86-NEXT:    movl %eax, %ecx
798; X86-NEXT:    addl %esi, %ecx
799; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
800; X86-NEXT:    adcl %eax, %edx
801; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
802; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
803; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
804; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
805; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
806; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
807; X86-NEXT:    movl %ebx, %eax
808; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
809; X86-NEXT:    mull %esi
810; X86-NEXT:    movl %edx, %edi
811; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
812; X86-NEXT:    movl %ebp, %eax
813; X86-NEXT:    mull %esi
814; X86-NEXT:    movl %edx, %esi
815; X86-NEXT:    movl %eax, %ebp
816; X86-NEXT:    addl %edi, %ebp
817; X86-NEXT:    adcl $0, %esi
818; X86-NEXT:    movl %ebx, %eax
819; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
820; X86-NEXT:    mull %ebx
821; X86-NEXT:    movl %edx, %edi
822; X86-NEXT:    addl %ebp, %eax
823; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
824; X86-NEXT:    adcl %esi, %edi
825; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
826; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
827; X86-NEXT:    mull %ebx
828; X86-NEXT:    movl %eax, %esi
829; X86-NEXT:    addl %edi, %esi
830; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
831; X86-NEXT:    adcl %eax, %edx
832; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
833; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
834; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
835; X86-NEXT:    adcl $0, %esi
836; X86-NEXT:    adcl $0, %edx
837; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
838; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
839; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
840; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
841; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
842; X86-NEXT:    movl %ebp, %eax
843; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
844; X86-NEXT:    mull %ecx
845; X86-NEXT:    movl %edx, %edi
846; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
847; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
848; X86-NEXT:    mull %ecx
849; X86-NEXT:    movl %edx, %ecx
850; X86-NEXT:    movl %eax, %ebx
851; X86-NEXT:    addl %edi, %ebx
852; X86-NEXT:    adcl $0, %ecx
853; X86-NEXT:    movl %ebp, %eax
854; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
855; X86-NEXT:    mull %ebp
856; X86-NEXT:    movl %edx, %edi
857; X86-NEXT:    addl %ebx, %eax
858; X86-NEXT:    movl %eax, %ebx
859; X86-NEXT:    adcl %ecx, %edi
860; X86-NEXT:    setb %cl
861; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
862; X86-NEXT:    mull %ebp
863; X86-NEXT:    addl %edi, %eax
864; X86-NEXT:    movzbl %cl, %ecx
865; X86-NEXT:    movl %edx, %edi
866; X86-NEXT:    adcl %ecx, %edi
867; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
868; X86-NEXT:    addl %esi, %ecx
869; X86-NEXT:    movl %ebx, %edx
870; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
871; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
872; X86-NEXT:    adcl %esi, %eax
873; X86-NEXT:    adcl $0, %edi
874; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
875; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
876; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
877; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
878; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
879; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
880; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
881; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
882; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
883; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
884; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
885; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
886; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
887; X86-NEXT:    movl %ebx, %eax
888; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
889; X86-NEXT:    mull %esi
890; X86-NEXT:    movl %edx, %ebp
891; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
892; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
893; X86-NEXT:    movl %ecx, %eax
894; X86-NEXT:    mull %esi
895; X86-NEXT:    movl %edx, %esi
896; X86-NEXT:    movl %eax, %edi
897; X86-NEXT:    addl %ebp, %edi
898; X86-NEXT:    adcl $0, %esi
899; X86-NEXT:    movl %ebx, %eax
900; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
901; X86-NEXT:    mull %ebp
902; X86-NEXT:    movl %edx, %ebx
903; X86-NEXT:    addl %edi, %eax
904; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
905; X86-NEXT:    adcl %esi, %ebx
906; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
907; X86-NEXT:    movl %ecx, %eax
908; X86-NEXT:    mull %ebp
909; X86-NEXT:    addl %ebx, %eax
910; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
911; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
912; X86-NEXT:    adcl %eax, %edx
913; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
914; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
915; X86-NEXT:    movl %ebp, %eax
916; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
917; X86-NEXT:    mull %esi
918; X86-NEXT:    movl %edx, %ebx
919; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
920; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
921; X86-NEXT:    movl %ecx, %eax
922; X86-NEXT:    mull %esi
923; X86-NEXT:    movl %edx, %esi
924; X86-NEXT:    movl %eax, %edi
925; X86-NEXT:    addl %ebx, %edi
926; X86-NEXT:    adcl $0, %esi
927; X86-NEXT:    movl %ebp, %eax
928; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
929; X86-NEXT:    mull %ebx
930; X86-NEXT:    movl %edx, %ebp
931; X86-NEXT:    addl %edi, %eax
932; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
933; X86-NEXT:    adcl %esi, %ebp
934; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
935; X86-NEXT:    movl %ecx, %eax
936; X86-NEXT:    movl %ecx, %esi
937; X86-NEXT:    mull %ebx
938; X86-NEXT:    addl %ebp, %eax
939; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
940; X86-NEXT:    adcl %ecx, %edx
941; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
942; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
943; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
944; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
945; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
946; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
947; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
948; X86-NEXT:    movl %ebx, %eax
949; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
950; X86-NEXT:    mull %ecx
951; X86-NEXT:    movl %edx, %edi
952; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
953; X86-NEXT:    movl %esi, %eax
954; X86-NEXT:    mull %ecx
955; X86-NEXT:    movl %edx, %ecx
956; X86-NEXT:    movl %eax, %ebp
957; X86-NEXT:    addl %edi, %ebp
958; X86-NEXT:    adcl $0, %ecx
959; X86-NEXT:    movl %ebx, %eax
960; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
961; X86-NEXT:    mull %ebx
962; X86-NEXT:    movl %edx, %edi
963; X86-NEXT:    addl %ebp, %eax
964; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
965; X86-NEXT:    adcl %ecx, %edi
966; X86-NEXT:    setb %cl
967; X86-NEXT:    movl %esi, %eax
968; X86-NEXT:    mull %ebx
969; X86-NEXT:    movl %eax, %ebp
970; X86-NEXT:    addl %edi, %ebp
971; X86-NEXT:    movzbl %cl, %eax
972; X86-NEXT:    adcl %eax, %edx
973; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
974; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
975; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
976; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
977; X86-NEXT:    adcl $0, %ebp
978; X86-NEXT:    adcl $0, %edx
979; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
980; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
981; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
982; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
983; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
984; X86-NEXT:    movl %edi, %eax
985; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
986; X86-NEXT:    mull %ecx
987; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
988; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
989; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
990; X86-NEXT:    mull %ecx
991; X86-NEXT:    movl %edx, %esi
992; X86-NEXT:    movl %eax, %ebx
993; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
994; X86-NEXT:    adcl $0, %esi
995; X86-NEXT:    movl %edi, %eax
996; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
997; X86-NEXT:    mull %ecx
998; X86-NEXT:    movl %edx, %edi
999; X86-NEXT:    addl %ebx, %eax
1000; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1001; X86-NEXT:    adcl %esi, %edi
1002; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1003; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1004; X86-NEXT:    mull %ecx
1005; X86-NEXT:    movl %eax, %ebx
1006; X86-NEXT:    addl %edi, %ebx
1007; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1008; X86-NEXT:    movl %edx, %esi
1009; X86-NEXT:    adcl %eax, %esi
1010; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1011; X86-NEXT:    addl %ebp, %edx
1012; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1013; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1014; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1015; X86-NEXT:    adcl %eax, %ebx
1016; X86-NEXT:    adcl $0, %esi
1017; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1018; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1019; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1020; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1021; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1022; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1023; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1024; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1025; X86-NEXT:    movl %edx, %eax
1026; X86-NEXT:    adcl $0, %eax
1027; X86-NEXT:    adcl $0, %ecx
1028; X86-NEXT:    adcl $0, %ebx
1029; X86-NEXT:    adcl $0, %esi
1030; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1031; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1032; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1033; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1034; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1035; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1036; X86-NEXT:    adcl (%esp), %esi # 4-byte Folded Reload
1037; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1038; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1039; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1040; X86-NEXT:    movl %ebp, %eax
1041; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1042; X86-NEXT:    mull %ecx
1043; X86-NEXT:    movl %edx, %esi
1044; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1045; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1046; X86-NEXT:    movl %ebx, %eax
1047; X86-NEXT:    mull %ecx
1048; X86-NEXT:    movl %edx, %ecx
1049; X86-NEXT:    movl %eax, %edi
1050; X86-NEXT:    addl %esi, %edi
1051; X86-NEXT:    adcl $0, %ecx
1052; X86-NEXT:    movl %ebp, %eax
1053; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1054; X86-NEXT:    mull %ebp
1055; X86-NEXT:    movl %edx, %esi
1056; X86-NEXT:    addl %edi, %eax
1057; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
1058; X86-NEXT:    adcl %ecx, %esi
1059; X86-NEXT:    setb %cl
1060; X86-NEXT:    movl %ebx, %eax
1061; X86-NEXT:    mull %ebp
1062; X86-NEXT:    movl %ebp, %ebx
1063; X86-NEXT:    addl %esi, %eax
1064; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1065; X86-NEXT:    movzbl %cl, %eax
1066; X86-NEXT:    adcl %eax, %edx
1067; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1068; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1069; X86-NEXT:    movl %esi, %eax
1070; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1071; X86-NEXT:    mull %ecx
1072; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1073; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1074; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1075; X86-NEXT:    movl %ebp, %eax
1076; X86-NEXT:    mull %ecx
1077; X86-NEXT:    movl %edx, %ecx
1078; X86-NEXT:    movl %eax, %edi
1079; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1080; X86-NEXT:    adcl $0, %ecx
1081; X86-NEXT:    movl %esi, %eax
1082; X86-NEXT:    mull %ebx
1083; X86-NEXT:    movl %edx, %esi
1084; X86-NEXT:    addl %edi, %eax
1085; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1086; X86-NEXT:    adcl %ecx, %esi
1087; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1088; X86-NEXT:    movl %ebp, %eax
1089; X86-NEXT:    mull %ebx
1090; X86-NEXT:    movl %eax, %ecx
1091; X86-NEXT:    addl %esi, %ecx
1092; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1093; X86-NEXT:    adcl %eax, %edx
1094; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1095; X86-NEXT:    adcl (%esp), %edx # 4-byte Folded Reload
1096; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1097; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1098; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1099; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1100; X86-NEXT:    movl %edi, %eax
1101; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1102; X86-NEXT:    mull %esi
1103; X86-NEXT:    movl %edx, %ebx
1104; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1105; X86-NEXT:    movl %ebp, %eax
1106; X86-NEXT:    mull %esi
1107; X86-NEXT:    movl %edx, %esi
1108; X86-NEXT:    movl %eax, %ebp
1109; X86-NEXT:    addl %ebx, %ebp
1110; X86-NEXT:    adcl $0, %esi
1111; X86-NEXT:    movl %edi, %eax
1112; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1113; X86-NEXT:    mull %edi
1114; X86-NEXT:    movl %edx, %ebx
1115; X86-NEXT:    addl %ebp, %eax
1116; X86-NEXT:    movl %eax, %ebp
1117; X86-NEXT:    adcl %esi, %ebx
1118; X86-NEXT:    setb (%esp) # 1-byte Folded Spill
1119; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1120; X86-NEXT:    mull %edi
1121; X86-NEXT:    movl %eax, %esi
1122; X86-NEXT:    addl %ebx, %esi
1123; X86-NEXT:    movzbl (%esp), %eax # 1-byte Folded Reload
1124; X86-NEXT:    adcl %eax, %edx
1125; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1126; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1127; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1128; X86-NEXT:    adcl $0, %esi
1129; X86-NEXT:    adcl $0, %edx
1130; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1131; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1132; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1133; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1134; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1135; X86-NEXT:    movl %ebp, %eax
1136; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1137; X86-NEXT:    mull %ecx
1138; X86-NEXT:    movl %edx, %edi
1139; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1140; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1141; X86-NEXT:    mull %ecx
1142; X86-NEXT:    movl %edx, %ecx
1143; X86-NEXT:    movl %eax, %ebx
1144; X86-NEXT:    addl %edi, %ebx
1145; X86-NEXT:    adcl $0, %ecx
1146; X86-NEXT:    movl %ebp, %eax
1147; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1148; X86-NEXT:    mull %ebp
1149; X86-NEXT:    movl %edx, %edi
1150; X86-NEXT:    addl %ebx, %eax
1151; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
1152; X86-NEXT:    adcl %ecx, %edi
1153; X86-NEXT:    setb %cl
1154; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1155; X86-NEXT:    mull %ebp
1156; X86-NEXT:    addl %edi, %eax
1157; X86-NEXT:    movl %eax, %ebp
1158; X86-NEXT:    movzbl %cl, %eax
1159; X86-NEXT:    adcl %eax, %edx
1160; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1161; X86-NEXT:    addl %esi, %ebx
1162; X86-NEXT:    movl (%esp), %eax # 4-byte Reload
1163; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1164; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
1165; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1166; X86-NEXT:    adcl %eax, %ebp
1167; X86-NEXT:    adcl $0, %edx
1168; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1169; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1170; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1171; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1172; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1173; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1174; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1175; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1176; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1177; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1178; X86-NEXT:    adcl %eax, %ebx
1179; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1180; X86-NEXT:    movl (%esp), %eax # 4-byte Reload
1181; X86-NEXT:    adcl $0, %eax
1182; X86-NEXT:    adcl $0, %ebp
1183; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1184; X86-NEXT:    adcl $0, %ebx
1185; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1186; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1187; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1188; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1189; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1190; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1191; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1192; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1193; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1194; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1195; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1196; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1197; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
1198; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1199; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1200; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1201; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1202; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1203; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1204; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1205; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1206; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1207; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1208; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1209; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1210; X86-NEXT:    movl {{[0-9]+}}(%esp), %edi
1211; X86-NEXT:    movl 32(%edi), %ecx
1212; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1213; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1214; X86-NEXT:    movl %edi, %eax
1215; X86-NEXT:    mull %ecx
1216; X86-NEXT:    movl %edx, %esi
1217; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1218; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1219; X86-NEXT:    movl %ebp, %eax
1220; X86-NEXT:    mull %ecx
1221; X86-NEXT:    movl %edx, %ecx
1222; X86-NEXT:    movl %eax, %ebx
1223; X86-NEXT:    addl %esi, %ebx
1224; X86-NEXT:    adcl $0, %ecx
1225; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
1226; X86-NEXT:    movl 36(%eax), %esi
1227; X86-NEXT:    movl %edi, %eax
1228; X86-NEXT:    mull %esi
1229; X86-NEXT:    movl %esi, %edi
1230; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1231; X86-NEXT:    movl %edx, %esi
1232; X86-NEXT:    addl %ebx, %eax
1233; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1234; X86-NEXT:    adcl %ecx, %esi
1235; X86-NEXT:    setb %cl
1236; X86-NEXT:    movl %ebp, %eax
1237; X86-NEXT:    mull %edi
1238; X86-NEXT:    addl %esi, %eax
1239; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1240; X86-NEXT:    movzbl %cl, %eax
1241; X86-NEXT:    adcl %eax, %edx
1242; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1243; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1244; X86-NEXT:    movl %ebp, %eax
1245; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1246; X86-NEXT:    mull %ecx
1247; X86-NEXT:    movl %edx, %ebx
1248; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1249; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1250; X86-NEXT:    movl %edi, %eax
1251; X86-NEXT:    mull %ecx
1252; X86-NEXT:    movl %edx, %ecx
1253; X86-NEXT:    movl %eax, %esi
1254; X86-NEXT:    addl %ebx, %esi
1255; X86-NEXT:    adcl $0, %ecx
1256; X86-NEXT:    movl %ebp, %eax
1257; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1258; X86-NEXT:    mull %ebx
1259; X86-NEXT:    movl %edx, %ebp
1260; X86-NEXT:    addl %esi, %eax
1261; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1262; X86-NEXT:    adcl %ecx, %ebp
1263; X86-NEXT:    setb %cl
1264; X86-NEXT:    movl %edi, %eax
1265; X86-NEXT:    mull %ebx
1266; X86-NEXT:    addl %ebp, %eax
1267; X86-NEXT:    movzbl %cl, %ecx
1268; X86-NEXT:    adcl %ecx, %edx
1269; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1270; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1271; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1272; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1273; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1274; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1275; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
1276; X86-NEXT:    movl 40(%eax), %ecx
1277; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1278; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1279; X86-NEXT:    movl %esi, %eax
1280; X86-NEXT:    mull %ecx
1281; X86-NEXT:    movl %edx, %ebx
1282; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1283; X86-NEXT:    movl %edi, %eax
1284; X86-NEXT:    mull %ecx
1285; X86-NEXT:    movl %edx, %edi
1286; X86-NEXT:    movl %eax, %ebp
1287; X86-NEXT:    addl %ebx, %ebp
1288; X86-NEXT:    adcl $0, %edi
1289; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
1290; X86-NEXT:    movl 44(%eax), %ecx
1291; X86-NEXT:    movl %esi, %eax
1292; X86-NEXT:    mull %ecx
1293; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1294; X86-NEXT:    movl %edx, %ebx
1295; X86-NEXT:    addl %ebp, %eax
1296; X86-NEXT:    movl %eax, %esi
1297; X86-NEXT:    adcl %edi, %ebx
1298; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1299; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1300; X86-NEXT:    mull %ecx
1301; X86-NEXT:    movl %eax, %ebp
1302; X86-NEXT:    addl %ebx, %ebp
1303; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1304; X86-NEXT:    adcl %eax, %edx
1305; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1306; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1307; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1308; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1309; X86-NEXT:    adcl $0, %ebp
1310; X86-NEXT:    adcl $0, %edx
1311; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1312; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1313; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1314; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1315; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1316; X86-NEXT:    movl %esi, %eax
1317; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1318; X86-NEXT:    mull %ecx
1319; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1320; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1321; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1322; X86-NEXT:    mull %ecx
1323; X86-NEXT:    movl %edx, %edi
1324; X86-NEXT:    movl %eax, %ebx
1325; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1326; X86-NEXT:    adcl $0, %edi
1327; X86-NEXT:    movl %esi, %eax
1328; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1329; X86-NEXT:    mull %ecx
1330; X86-NEXT:    movl %edx, %esi
1331; X86-NEXT:    addl %ebx, %eax
1332; X86-NEXT:    movl %eax, %ebx
1333; X86-NEXT:    adcl %edi, %esi
1334; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1335; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1336; X86-NEXT:    mull %ecx
1337; X86-NEXT:    addl %esi, %eax
1338; X86-NEXT:    movl %eax, %esi
1339; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1340; X86-NEXT:    adcl %eax, %edx
1341; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1342; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1343; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1344; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1345; X86-NEXT:    adcl %eax, %esi
1346; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1347; X86-NEXT:    adcl $0, %edx
1348; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1349; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1350; X86-NEXT:    movl %edi, %eax
1351; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1352; X86-NEXT:    mull %ecx
1353; X86-NEXT:    movl %edx, %esi
1354; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1355; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1356; X86-NEXT:    movl %ebp, %eax
1357; X86-NEXT:    mull %ecx
1358; X86-NEXT:    movl %edx, %ecx
1359; X86-NEXT:    movl %eax, %ebx
1360; X86-NEXT:    addl %esi, %ebx
1361; X86-NEXT:    adcl $0, %ecx
1362; X86-NEXT:    movl %edi, %eax
1363; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1364; X86-NEXT:    mull %edi
1365; X86-NEXT:    movl %edx, %esi
1366; X86-NEXT:    addl %ebx, %eax
1367; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1368; X86-NEXT:    adcl %ecx, %esi
1369; X86-NEXT:    setb %cl
1370; X86-NEXT:    movl %ebp, %eax
1371; X86-NEXT:    mull %edi
1372; X86-NEXT:    addl %esi, %eax
1373; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1374; X86-NEXT:    movzbl %cl, %eax
1375; X86-NEXT:    adcl %eax, %edx
1376; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1377; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1378; X86-NEXT:    movl %ebp, %eax
1379; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1380; X86-NEXT:    mull %ecx
1381; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1382; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1383; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1384; X86-NEXT:    movl %ebx, %eax
1385; X86-NEXT:    mull %ecx
1386; X86-NEXT:    movl %edx, %ecx
1387; X86-NEXT:    movl %eax, %esi
1388; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1389; X86-NEXT:    adcl $0, %ecx
1390; X86-NEXT:    movl %ebp, %eax
1391; X86-NEXT:    mull %edi
1392; X86-NEXT:    movl %edx, %ebp
1393; X86-NEXT:    addl %esi, %eax
1394; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1395; X86-NEXT:    adcl %ecx, %ebp
1396; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1397; X86-NEXT:    movl %ebx, %esi
1398; X86-NEXT:    movl %ebx, %eax
1399; X86-NEXT:    mull %edi
1400; X86-NEXT:    movl %eax, %ecx
1401; X86-NEXT:    addl %ebp, %ecx
1402; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1403; X86-NEXT:    adcl %eax, %edx
1404; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1405; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1406; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1407; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1408; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1409; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1410; X86-NEXT:    movl %ebx, %eax
1411; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1412; X86-NEXT:    mull %edi
1413; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1414; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1415; X86-NEXT:    movl %esi, %eax
1416; X86-NEXT:    mull %edi
1417; X86-NEXT:    movl %edx, %edi
1418; X86-NEXT:    movl %eax, %ebp
1419; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1420; X86-NEXT:    adcl $0, %edi
1421; X86-NEXT:    movl %ebx, %eax
1422; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1423; X86-NEXT:    mull %esi
1424; X86-NEXT:    movl %edx, %ebx
1425; X86-NEXT:    addl %ebp, %eax
1426; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1427; X86-NEXT:    adcl %edi, %ebx
1428; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1429; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1430; X86-NEXT:    mull %esi
1431; X86-NEXT:    movl %eax, %edi
1432; X86-NEXT:    addl %ebx, %edi
1433; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1434; X86-NEXT:    adcl %eax, %edx
1435; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1436; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1437; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1438; X86-NEXT:    adcl $0, %edi
1439; X86-NEXT:    adcl $0, %edx
1440; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1441; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1442; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1443; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1444; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1445; X86-NEXT:    movl %ebp, %eax
1446; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1447; X86-NEXT:    mull %ecx
1448; X86-NEXT:    movl %edx, %esi
1449; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1450; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1451; X86-NEXT:    mull %ecx
1452; X86-NEXT:    movl %edx, %ecx
1453; X86-NEXT:    movl %eax, %ebx
1454; X86-NEXT:    addl %esi, %ebx
1455; X86-NEXT:    adcl $0, %ecx
1456; X86-NEXT:    movl %ebp, %eax
1457; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1458; X86-NEXT:    mull %ebp
1459; X86-NEXT:    movl %edx, %esi
1460; X86-NEXT:    addl %ebx, %eax
1461; X86-NEXT:    movl %eax, %ebx
1462; X86-NEXT:    adcl %ecx, %esi
1463; X86-NEXT:    setb %cl
1464; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1465; X86-NEXT:    mull %ebp
1466; X86-NEXT:    addl %esi, %eax
1467; X86-NEXT:    movzbl %cl, %ecx
1468; X86-NEXT:    movl %edx, %esi
1469; X86-NEXT:    adcl %ecx, %esi
1470; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1471; X86-NEXT:    addl %edi, %ecx
1472; X86-NEXT:    movl %ebx, %edx
1473; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1474; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
1475; X86-NEXT:    adcl %edi, %eax
1476; X86-NEXT:    adcl $0, %esi
1477; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1478; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1479; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1480; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1481; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1482; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1483; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1484; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1485; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1486; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1487; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1488; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1489; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
1490; X86-NEXT:    movl 48(%eax), %esi
1491; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1492; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1493; X86-NEXT:    movl %ebx, %eax
1494; X86-NEXT:    mull %esi
1495; X86-NEXT:    movl %edx, %ebp
1496; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1497; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1498; X86-NEXT:    movl %ecx, %eax
1499; X86-NEXT:    mull %esi
1500; X86-NEXT:    movl %edx, %esi
1501; X86-NEXT:    movl %eax, %edi
1502; X86-NEXT:    addl %ebp, %edi
1503; X86-NEXT:    adcl $0, %esi
1504; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
1505; X86-NEXT:    movl 52(%eax), %ebp
1506; X86-NEXT:    movl %ebx, %eax
1507; X86-NEXT:    mull %ebp
1508; X86-NEXT:    movl %ebp, %ebx
1509; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1510; X86-NEXT:    movl %edx, %ebp
1511; X86-NEXT:    addl %edi, %eax
1512; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1513; X86-NEXT:    adcl %esi, %ebp
1514; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1515; X86-NEXT:    movl %ecx, %eax
1516; X86-NEXT:    mull %ebx
1517; X86-NEXT:    addl %ebp, %eax
1518; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1519; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1520; X86-NEXT:    adcl %eax, %edx
1521; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1522; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1523; X86-NEXT:    movl %ecx, %eax
1524; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1525; X86-NEXT:    mull %esi
1526; X86-NEXT:    movl %edx, %ebx
1527; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1528; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1529; X86-NEXT:    movl %ebp, %eax
1530; X86-NEXT:    mull %esi
1531; X86-NEXT:    movl %edx, %esi
1532; X86-NEXT:    movl %eax, %edi
1533; X86-NEXT:    addl %ebx, %edi
1534; X86-NEXT:    adcl $0, %esi
1535; X86-NEXT:    movl %ecx, %eax
1536; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1537; X86-NEXT:    mull %ecx
1538; X86-NEXT:    movl %edx, %ebx
1539; X86-NEXT:    addl %edi, %eax
1540; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1541; X86-NEXT:    adcl %esi, %ebx
1542; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1543; X86-NEXT:    movl %ebp, %eax
1544; X86-NEXT:    mull %ecx
1545; X86-NEXT:    addl %ebx, %eax
1546; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1547; X86-NEXT:    adcl %ecx, %edx
1548; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1549; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1550; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1551; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1552; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1553; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1554; X86-NEXT:    movl {{[0-9]+}}(%esp), %esi
1555; X86-NEXT:    movl 56(%esi), %ecx
1556; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1557; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1558; X86-NEXT:    movl %edi, %eax
1559; X86-NEXT:    mull %ecx
1560; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1561; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1562; X86-NEXT:    movl %ebp, %eax
1563; X86-NEXT:    mull %ecx
1564; X86-NEXT:    movl %edx, %ecx
1565; X86-NEXT:    movl %eax, %ebx
1566; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1567; X86-NEXT:    adcl $0, %ecx
1568; X86-NEXT:    movl 60(%esi), %esi
1569; X86-NEXT:    movl %edi, %eax
1570; X86-NEXT:    mull %esi
1571; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1572; X86-NEXT:    movl %edx, %edi
1573; X86-NEXT:    addl %ebx, %eax
1574; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1575; X86-NEXT:    adcl %ecx, %edi
1576; X86-NEXT:    setb %cl
1577; X86-NEXT:    movl %ebp, %eax
1578; X86-NEXT:    mull %esi
1579; X86-NEXT:    movl %eax, %ebx
1580; X86-NEXT:    addl %edi, %ebx
1581; X86-NEXT:    movzbl %cl, %eax
1582; X86-NEXT:    adcl %eax, %edx
1583; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1584; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1585; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1586; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1587; X86-NEXT:    adcl $0, %ebx
1588; X86-NEXT:    adcl $0, %edx
1589; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1590; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1591; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1592; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1593; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1594; X86-NEXT:    movl %edi, %eax
1595; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1596; X86-NEXT:    mull %ecx
1597; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1598; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1599; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1600; X86-NEXT:    mull %ecx
1601; X86-NEXT:    movl %edx, %esi
1602; X86-NEXT:    movl %eax, %ebp
1603; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1604; X86-NEXT:    adcl $0, %esi
1605; X86-NEXT:    movl %edi, %eax
1606; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1607; X86-NEXT:    mull %ecx
1608; X86-NEXT:    movl %edx, %edi
1609; X86-NEXT:    addl %ebp, %eax
1610; X86-NEXT:    movl %eax, %ebp
1611; X86-NEXT:    adcl %esi, %edi
1612; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1613; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1614; X86-NEXT:    mull %ecx
1615; X86-NEXT:    addl %edi, %eax
1616; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
1617; X86-NEXT:    adcl %esi, %edx
1618; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1619; X86-NEXT:    addl %ebx, %esi
1620; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1621; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
1622; X86-NEXT:    adcl %ecx, %eax
1623; X86-NEXT:    adcl $0, %edx
1624; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1625; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1626; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1627; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1628; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1629; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1630; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1631; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1632; X86-NEXT:    movl %esi, %ecx
1633; X86-NEXT:    adcl $0, %ecx
1634; X86-NEXT:    adcl $0, %ebp
1635; X86-NEXT:    adcl $0, %eax
1636; X86-NEXT:    adcl $0, %edx
1637; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1638; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1639; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1640; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1641; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1642; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1643; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1644; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1645; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1646; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1647; X86-NEXT:    movl %edi, %eax
1648; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1649; X86-NEXT:    mull %ecx
1650; X86-NEXT:    movl %edx, %esi
1651; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1652; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1653; X86-NEXT:    movl %ebp, %eax
1654; X86-NEXT:    mull %ecx
1655; X86-NEXT:    movl %edx, %ecx
1656; X86-NEXT:    movl %eax, %ebx
1657; X86-NEXT:    addl %esi, %ebx
1658; X86-NEXT:    adcl $0, %ecx
1659; X86-NEXT:    movl %edi, %eax
1660; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1661; X86-NEXT:    mull %esi
1662; X86-NEXT:    movl %edx, %edi
1663; X86-NEXT:    addl %ebx, %eax
1664; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1665; X86-NEXT:    adcl %ecx, %edi
1666; X86-NEXT:    setb %cl
1667; X86-NEXT:    movl %ebp, %eax
1668; X86-NEXT:    mull %esi
1669; X86-NEXT:    addl %edi, %eax
1670; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1671; X86-NEXT:    movzbl %cl, %eax
1672; X86-NEXT:    adcl %eax, %edx
1673; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1674; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1675; X86-NEXT:    movl %ebp, %eax
1676; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1677; X86-NEXT:    mull %ecx
1678; X86-NEXT:    movl %edx, %ebx
1679; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1680; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1681; X86-NEXT:    movl %esi, %eax
1682; X86-NEXT:    mull %ecx
1683; X86-NEXT:    movl %edx, %ecx
1684; X86-NEXT:    movl %eax, %edi
1685; X86-NEXT:    addl %ebx, %edi
1686; X86-NEXT:    adcl $0, %ecx
1687; X86-NEXT:    movl %ebp, %eax
1688; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1689; X86-NEXT:    mull %ebx
1690; X86-NEXT:    movl %edx, %ebp
1691; X86-NEXT:    addl %edi, %eax
1692; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1693; X86-NEXT:    adcl %ecx, %ebp
1694; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1695; X86-NEXT:    movl %esi, %eax
1696; X86-NEXT:    mull %ebx
1697; X86-NEXT:    movl %eax, %ecx
1698; X86-NEXT:    addl %ebp, %ecx
1699; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1700; X86-NEXT:    adcl %eax, %edx
1701; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1702; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1703; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1704; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1705; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1706; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1707; X86-NEXT:    movl %ebx, %eax
1708; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1709; X86-NEXT:    mull %edi
1710; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1711; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1712; X86-NEXT:    movl %esi, %eax
1713; X86-NEXT:    mull %edi
1714; X86-NEXT:    movl %edx, %esi
1715; X86-NEXT:    movl %eax, %ebp
1716; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1717; X86-NEXT:    adcl $0, %esi
1718; X86-NEXT:    movl %ebx, %eax
1719; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1720; X86-NEXT:    mull %edi
1721; X86-NEXT:    movl %edx, %ebx
1722; X86-NEXT:    addl %ebp, %eax
1723; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1724; X86-NEXT:    adcl %esi, %ebx
1725; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1726; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1727; X86-NEXT:    mull %edi
1728; X86-NEXT:    movl %eax, %ebp
1729; X86-NEXT:    addl %ebx, %ebp
1730; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1731; X86-NEXT:    adcl %eax, %edx
1732; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1733; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1734; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1735; X86-NEXT:    adcl $0, %ebp
1736; X86-NEXT:    adcl $0, %edx
1737; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1738; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1739; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1740; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1741; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1742; X86-NEXT:    movl %edi, %eax
1743; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1744; X86-NEXT:    mull %ecx
1745; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1746; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1747; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1748; X86-NEXT:    mull %ecx
1749; X86-NEXT:    movl %edx, %esi
1750; X86-NEXT:    movl %eax, %ebx
1751; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1752; X86-NEXT:    adcl $0, %esi
1753; X86-NEXT:    movl %edi, %eax
1754; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1755; X86-NEXT:    mull %ecx
1756; X86-NEXT:    movl %edx, %edi
1757; X86-NEXT:    addl %ebx, %eax
1758; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1759; X86-NEXT:    adcl %esi, %edi
1760; X86-NEXT:    setb %bl
1761; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1762; X86-NEXT:    mull %ecx
1763; X86-NEXT:    movl %eax, %ecx
1764; X86-NEXT:    addl %edi, %ecx
1765; X86-NEXT:    movzbl %bl, %eax
1766; X86-NEXT:    adcl %eax, %edx
1767; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1768; X86-NEXT:    addl %ebp, %edi
1769; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1770; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1771; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1772; X86-NEXT:    movl %ecx, %ebp
1773; X86-NEXT:    adcl %eax, %ebp
1774; X86-NEXT:    adcl $0, %edx
1775; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1776; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1777; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1778; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1779; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1780; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1781; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
1782; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1783; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1784; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1785; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
1786; X86-NEXT:    adcl %eax, %edi
1787; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1788; X86-NEXT:    adcl $0, %ebx
1789; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1790; X86-NEXT:    adcl $0, %ebp
1791; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1792; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1793; X86-NEXT:    adcl $0, %edi
1794; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1795; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1796; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1797; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1798; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1799; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1800; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1801; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1802; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1803; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1804; X86-NEXT:    movl (%esp), %eax # 4-byte Reload
1805; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1806; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1807; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1808; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1809; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1810; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1811; X86-NEXT:    adcl $0, %eax
1812; X86-NEXT:    adcl $0, %ecx
1813; X86-NEXT:    adcl $0, %edx
1814; X86-NEXT:    adcl $0, %esi
1815; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1816; X86-NEXT:    adcl $0, %ebx
1817; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1818; X86-NEXT:    adcl $0, %ebp
1819; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1820; X86-NEXT:    adcl $0, %edi
1821; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1822; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1823; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
1824; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1825; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1826; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1827; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
1828; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1829; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
1830; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1831; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1832; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1833; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1834; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1835; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1836; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1837; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1838; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
1839; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1840; X86-NEXT:    movl %ebp, %eax
1841; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1842; X86-NEXT:    mull %ecx
1843; X86-NEXT:    movl %edx, %esi
1844; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1845; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1846; X86-NEXT:    movl %ebx, %eax
1847; X86-NEXT:    mull %ecx
1848; X86-NEXT:    movl %edx, %ecx
1849; X86-NEXT:    movl %eax, %edi
1850; X86-NEXT:    addl %esi, %edi
1851; X86-NEXT:    adcl $0, %ecx
1852; X86-NEXT:    movl %ebp, %eax
1853; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1854; X86-NEXT:    mull %ebp
1855; X86-NEXT:    movl %edx, %esi
1856; X86-NEXT:    addl %edi, %eax
1857; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1858; X86-NEXT:    adcl %ecx, %esi
1859; X86-NEXT:    setb %cl
1860; X86-NEXT:    movl %ebx, %eax
1861; X86-NEXT:    mull %ebp
1862; X86-NEXT:    addl %esi, %eax
1863; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1864; X86-NEXT:    movzbl %cl, %eax
1865; X86-NEXT:    adcl %eax, %edx
1866; X86-NEXT:    movl %edx, (%esp) # 4-byte Spill
1867; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1868; X86-NEXT:    movl %ebx, %eax
1869; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1870; X86-NEXT:    mull %ecx
1871; X86-NEXT:    movl %edx, %ebp
1872; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1873; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1874; X86-NEXT:    movl %edi, %eax
1875; X86-NEXT:    mull %ecx
1876; X86-NEXT:    movl %edx, %ecx
1877; X86-NEXT:    movl %eax, %esi
1878; X86-NEXT:    addl %ebp, %esi
1879; X86-NEXT:    adcl $0, %ecx
1880; X86-NEXT:    movl %ebx, %eax
1881; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1882; X86-NEXT:    mull %ebx
1883; X86-NEXT:    movl %edx, %ebp
1884; X86-NEXT:    addl %esi, %eax
1885; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1886; X86-NEXT:    adcl %ecx, %ebp
1887; X86-NEXT:    setb %cl
1888; X86-NEXT:    movl %edi, %eax
1889; X86-NEXT:    movl %edi, %esi
1890; X86-NEXT:    mull %ebx
1891; X86-NEXT:    addl %ebp, %eax
1892; X86-NEXT:    movzbl %cl, %ecx
1893; X86-NEXT:    adcl %ecx, %edx
1894; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
1895; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1896; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
1897; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1898; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1899; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
1900; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1901; X86-NEXT:    movl %ecx, %eax
1902; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1903; X86-NEXT:    mull %ebx
1904; X86-NEXT:    movl %edx, %edi
1905; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1906; X86-NEXT:    movl %esi, %eax
1907; X86-NEXT:    mull %ebx
1908; X86-NEXT:    movl %edx, %ebx
1909; X86-NEXT:    movl %eax, %ebp
1910; X86-NEXT:    addl %edi, %ebp
1911; X86-NEXT:    adcl $0, %ebx
1912; X86-NEXT:    movl %ecx, %eax
1913; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1914; X86-NEXT:    mull %ecx
1915; X86-NEXT:    movl %edx, %edi
1916; X86-NEXT:    addl %ebp, %eax
1917; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1918; X86-NEXT:    adcl %ebx, %edi
1919; X86-NEXT:    setb %bl
1920; X86-NEXT:    movl %esi, %eax
1921; X86-NEXT:    mull %ecx
1922; X86-NEXT:    movl %eax, %ebp
1923; X86-NEXT:    addl %edi, %ebp
1924; X86-NEXT:    movzbl %bl, %eax
1925; X86-NEXT:    adcl %eax, %edx
1926; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1927; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1928; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1929; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1930; X86-NEXT:    adcl $0, %ebp
1931; X86-NEXT:    adcl $0, %edx
1932; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
1933; X86-NEXT:    adcl (%esp), %edx # 4-byte Folded Reload
1934; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1935; X86-NEXT:    setb (%esp) # 1-byte Folded Spill
1936; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
1937; X86-NEXT:    movl %esi, %eax
1938; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1939; X86-NEXT:    mull %ecx
1940; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1941; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1942; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1943; X86-NEXT:    mull %ecx
1944; X86-NEXT:    movl %edx, %ebx
1945; X86-NEXT:    movl %eax, %edi
1946; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1947; X86-NEXT:    adcl $0, %ebx
1948; X86-NEXT:    movl %esi, %eax
1949; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1950; X86-NEXT:    mull %ecx
1951; X86-NEXT:    movl %edx, %esi
1952; X86-NEXT:    addl %edi, %eax
1953; X86-NEXT:    movl %eax, %edi
1954; X86-NEXT:    adcl %ebx, %esi
1955; X86-NEXT:    setb %bl
1956; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
1957; X86-NEXT:    mull %ecx
1958; X86-NEXT:    addl %esi, %eax
1959; X86-NEXT:    movl %eax, %esi
1960; X86-NEXT:    movzbl %bl, %eax
1961; X86-NEXT:    adcl %eax, %edx
1962; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
1963; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
1964; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1965; X86-NEXT:    movzbl (%esp), %eax # 1-byte Folded Reload
1966; X86-NEXT:    adcl %eax, %esi
1967; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1968; X86-NEXT:    adcl $0, %edx
1969; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1970; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
1971; X86-NEXT:    movl %ebx, %eax
1972; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
1973; X86-NEXT:    mull %ecx
1974; X86-NEXT:    movl %edx, %edi
1975; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1976; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1977; X86-NEXT:    movl %ebp, %eax
1978; X86-NEXT:    mull %ecx
1979; X86-NEXT:    movl %edx, %esi
1980; X86-NEXT:    movl %eax, %ecx
1981; X86-NEXT:    addl %edi, %ecx
1982; X86-NEXT:    adcl $0, %esi
1983; X86-NEXT:    movl %ebx, %eax
1984; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
1985; X86-NEXT:    mull %edi
1986; X86-NEXT:    movl %edx, %ebx
1987; X86-NEXT:    addl %ecx, %eax
1988; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1989; X86-NEXT:    adcl %esi, %ebx
1990; X86-NEXT:    setb %cl
1991; X86-NEXT:    movl %ebp, %eax
1992; X86-NEXT:    mull %edi
1993; X86-NEXT:    addl %ebx, %eax
1994; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
1995; X86-NEXT:    movzbl %cl, %eax
1996; X86-NEXT:    adcl %eax, %edx
1997; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
1998; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
1999; X86-NEXT:    movl %ebp, %eax
2000; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2001; X86-NEXT:    mull %esi
2002; X86-NEXT:    movl %edx, %ecx
2003; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2004; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2005; X86-NEXT:    movl %ebx, %eax
2006; X86-NEXT:    mull %esi
2007; X86-NEXT:    movl %edx, %esi
2008; X86-NEXT:    movl %eax, %edi
2009; X86-NEXT:    addl %ecx, %edi
2010; X86-NEXT:    adcl $0, %esi
2011; X86-NEXT:    movl %ebp, %eax
2012; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2013; X86-NEXT:    mull %ebp
2014; X86-NEXT:    movl %edx, %ecx
2015; X86-NEXT:    addl %edi, %eax
2016; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2017; X86-NEXT:    adcl %esi, %ecx
2018; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2019; X86-NEXT:    movl %ebx, %eax
2020; X86-NEXT:    movl %ebx, %esi
2021; X86-NEXT:    mull %ebp
2022; X86-NEXT:    addl %ecx, %eax
2023; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
2024; X86-NEXT:    adcl %ecx, %edx
2025; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2026; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2027; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2028; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2029; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
2030; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2031; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2032; X86-NEXT:    movl %ebx, %eax
2033; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2034; X86-NEXT:    mull %ecx
2035; X86-NEXT:    movl %edx, %edi
2036; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2037; X86-NEXT:    movl %esi, %eax
2038; X86-NEXT:    mull %ecx
2039; X86-NEXT:    movl %edx, %ecx
2040; X86-NEXT:    movl %eax, %ebp
2041; X86-NEXT:    addl %edi, %ebp
2042; X86-NEXT:    adcl $0, %ecx
2043; X86-NEXT:    movl %ebx, %eax
2044; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2045; X86-NEXT:    mull %ebx
2046; X86-NEXT:    movl %edx, %edi
2047; X86-NEXT:    addl %ebp, %eax
2048; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2049; X86-NEXT:    adcl %ecx, %edi
2050; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2051; X86-NEXT:    movl %esi, %eax
2052; X86-NEXT:    mull %ebx
2053; X86-NEXT:    movl %eax, %ecx
2054; X86-NEXT:    addl %edi, %ecx
2055; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2056; X86-NEXT:    adcl %eax, %edx
2057; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2058; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2059; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2060; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2061; X86-NEXT:    adcl $0, %ecx
2062; X86-NEXT:    adcl $0, %edx
2063; X86-NEXT:    addl (%esp), %ecx # 4-byte Folded Reload
2064; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2065; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2066; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2067; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2068; X86-NEXT:    movl %ebp, %eax
2069; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2070; X86-NEXT:    mull %esi
2071; X86-NEXT:    movl %edx, %edi
2072; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
2073; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2074; X86-NEXT:    mull %esi
2075; X86-NEXT:    movl %edx, %esi
2076; X86-NEXT:    movl %eax, %ebx
2077; X86-NEXT:    addl %edi, %ebx
2078; X86-NEXT:    adcl $0, %esi
2079; X86-NEXT:    movl %ebp, %eax
2080; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2081; X86-NEXT:    mull %ebp
2082; X86-NEXT:    movl %edx, %edi
2083; X86-NEXT:    addl %ebx, %eax
2084; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2085; X86-NEXT:    adcl %esi, %edi
2086; X86-NEXT:    setb %bl
2087; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2088; X86-NEXT:    mull %ebp
2089; X86-NEXT:    addl %edi, %eax
2090; X86-NEXT:    movzbl %bl, %edi
2091; X86-NEXT:    movl %edx, %esi
2092; X86-NEXT:    adcl %edi, %esi
2093; X86-NEXT:    movl (%esp), %edx # 4-byte Reload
2094; X86-NEXT:    addl %ecx, %edx
2095; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2096; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2097; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
2098; X86-NEXT:    adcl %edi, %eax
2099; X86-NEXT:    adcl $0, %esi
2100; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2101; X86-NEXT:    movl %edx, (%esp) # 4-byte Spill
2102; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2103; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2104; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2105; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2106; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2107; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2108; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2109; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2110; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2111; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2112; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2113; X86-NEXT:    movl %ebx, %eax
2114; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2115; X86-NEXT:    mull %ecx
2116; X86-NEXT:    movl %edx, %edi
2117; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2118; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2119; X86-NEXT:    movl %ebp, %eax
2120; X86-NEXT:    mull %ecx
2121; X86-NEXT:    movl %edx, %ecx
2122; X86-NEXT:    movl %eax, %esi
2123; X86-NEXT:    addl %edi, %esi
2124; X86-NEXT:    adcl $0, %ecx
2125; X86-NEXT:    movl %ebx, %eax
2126; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2127; X86-NEXT:    mull %edi
2128; X86-NEXT:    movl %edx, %ebx
2129; X86-NEXT:    addl %esi, %eax
2130; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2131; X86-NEXT:    adcl %ecx, %ebx
2132; X86-NEXT:    setb %cl
2133; X86-NEXT:    movl %ebp, %eax
2134; X86-NEXT:    mull %edi
2135; X86-NEXT:    addl %ebx, %eax
2136; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2137; X86-NEXT:    movzbl %cl, %eax
2138; X86-NEXT:    adcl %eax, %edx
2139; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2140; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2141; X86-NEXT:    movl %ebp, %eax
2142; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2143; X86-NEXT:    mull %ecx
2144; X86-NEXT:    movl %edx, %ebx
2145; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2146; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2147; X86-NEXT:    movl %edi, %eax
2148; X86-NEXT:    mull %ecx
2149; X86-NEXT:    movl %edx, %ecx
2150; X86-NEXT:    movl %eax, %esi
2151; X86-NEXT:    addl %ebx, %esi
2152; X86-NEXT:    adcl $0, %ecx
2153; X86-NEXT:    movl %ebp, %eax
2154; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2155; X86-NEXT:    mull %ebx
2156; X86-NEXT:    movl %edx, %ebp
2157; X86-NEXT:    addl %esi, %eax
2158; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2159; X86-NEXT:    adcl %ecx, %ebp
2160; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2161; X86-NEXT:    movl %edi, %eax
2162; X86-NEXT:    mull %ebx
2163; X86-NEXT:    movl %eax, %ecx
2164; X86-NEXT:    addl %ebp, %ecx
2165; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2166; X86-NEXT:    adcl %eax, %edx
2167; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2168; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2169; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2170; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2171; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2172; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2173; X86-NEXT:    movl %esi, %eax
2174; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2175; X86-NEXT:    mull %ebx
2176; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2177; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2178; X86-NEXT:    movl %edi, %eax
2179; X86-NEXT:    mull %ebx
2180; X86-NEXT:    movl %edx, %edi
2181; X86-NEXT:    movl %eax, %ebp
2182; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2183; X86-NEXT:    adcl $0, %edi
2184; X86-NEXT:    movl %esi, %eax
2185; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2186; X86-NEXT:    mull %ebx
2187; X86-NEXT:    movl %edx, %esi
2188; X86-NEXT:    addl %ebp, %eax
2189; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2190; X86-NEXT:    adcl %edi, %esi
2191; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2192; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2193; X86-NEXT:    mull %ebx
2194; X86-NEXT:    movl %eax, %ebp
2195; X86-NEXT:    addl %esi, %ebp
2196; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2197; X86-NEXT:    adcl %eax, %edx
2198; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2199; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2200; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2201; X86-NEXT:    adcl $0, %ebp
2202; X86-NEXT:    adcl $0, %edx
2203; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2204; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2205; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2206; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2207; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2208; X86-NEXT:    movl %esi, %eax
2209; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2210; X86-NEXT:    mull %ecx
2211; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2212; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2213; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2214; X86-NEXT:    mull %ecx
2215; X86-NEXT:    movl %edx, %edi
2216; X86-NEXT:    movl %eax, %ebx
2217; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2218; X86-NEXT:    adcl $0, %edi
2219; X86-NEXT:    movl %esi, %eax
2220; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2221; X86-NEXT:    mull %ecx
2222; X86-NEXT:    movl %edx, %esi
2223; X86-NEXT:    addl %ebx, %eax
2224; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2225; X86-NEXT:    adcl %edi, %esi
2226; X86-NEXT:    setb %bl
2227; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2228; X86-NEXT:    mull %ecx
2229; X86-NEXT:    movl %eax, %ecx
2230; X86-NEXT:    addl %esi, %ecx
2231; X86-NEXT:    movzbl %bl, %eax
2232; X86-NEXT:    adcl %eax, %edx
2233; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2234; X86-NEXT:    addl %ebp, %edi
2235; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2236; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2237; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2238; X86-NEXT:    adcl %eax, %ecx
2239; X86-NEXT:    adcl $0, %edx
2240; X86-NEXT:    movl (%esp), %eax # 4-byte Reload
2241; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2242; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2243; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2244; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2245; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2246; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2247; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2248; X86-NEXT:    movl %edi, %eax
2249; X86-NEXT:    adcl $0, %eax
2250; X86-NEXT:    adcl $0, %esi
2251; X86-NEXT:    adcl $0, %ecx
2252; X86-NEXT:    adcl $0, %edx
2253; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2254; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2255; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2256; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2257; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2258; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2259; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2260; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2261; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2262; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2263; X86-NEXT:    movl %ebp, %eax
2264; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2265; X86-NEXT:    mull %ecx
2266; X86-NEXT:    movl %edx, %esi
2267; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2268; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2269; X86-NEXT:    movl %ebx, %eax
2270; X86-NEXT:    mull %ecx
2271; X86-NEXT:    movl %edx, %ecx
2272; X86-NEXT:    movl %eax, %edi
2273; X86-NEXT:    addl %esi, %edi
2274; X86-NEXT:    adcl $0, %ecx
2275; X86-NEXT:    movl %ebp, %eax
2276; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2277; X86-NEXT:    mull %ebp
2278; X86-NEXT:    movl %edx, %esi
2279; X86-NEXT:    addl %edi, %eax
2280; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2281; X86-NEXT:    adcl %ecx, %esi
2282; X86-NEXT:    setb %cl
2283; X86-NEXT:    movl %ebx, %eax
2284; X86-NEXT:    mull %ebp
2285; X86-NEXT:    addl %esi, %eax
2286; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2287; X86-NEXT:    movzbl %cl, %eax
2288; X86-NEXT:    adcl %eax, %edx
2289; X86-NEXT:    movl %edx, (%esp) # 4-byte Spill
2290; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2291; X86-NEXT:    movl %ebp, %eax
2292; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2293; X86-NEXT:    mull %ecx
2294; X86-NEXT:    movl %edx, %edi
2295; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2296; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2297; X86-NEXT:    movl %ebx, %eax
2298; X86-NEXT:    mull %ecx
2299; X86-NEXT:    movl %edx, %ecx
2300; X86-NEXT:    movl %eax, %esi
2301; X86-NEXT:    addl %edi, %esi
2302; X86-NEXT:    adcl $0, %ecx
2303; X86-NEXT:    movl %ebp, %eax
2304; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2305; X86-NEXT:    mull %edi
2306; X86-NEXT:    movl %edx, %ebp
2307; X86-NEXT:    addl %esi, %eax
2308; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2309; X86-NEXT:    adcl %ecx, %ebp
2310; X86-NEXT:    setb %cl
2311; X86-NEXT:    movl %ebx, %eax
2312; X86-NEXT:    movl %ebx, %esi
2313; X86-NEXT:    mull %edi
2314; X86-NEXT:    addl %ebp, %eax
2315; X86-NEXT:    movzbl %cl, %ecx
2316; X86-NEXT:    adcl %ecx, %edx
2317; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2318; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2319; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2320; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2321; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2322; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
2323; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2324; X86-NEXT:    movl %ebx, %eax
2325; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2326; X86-NEXT:    mull %ecx
2327; X86-NEXT:    movl %edx, %edi
2328; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2329; X86-NEXT:    movl %esi, %eax
2330; X86-NEXT:    mull %ecx
2331; X86-NEXT:    movl %edx, %ecx
2332; X86-NEXT:    movl %eax, %ebp
2333; X86-NEXT:    addl %edi, %ebp
2334; X86-NEXT:    adcl $0, %ecx
2335; X86-NEXT:    movl %ebx, %eax
2336; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2337; X86-NEXT:    mull %edi
2338; X86-NEXT:    movl %edx, %ebx
2339; X86-NEXT:    addl %ebp, %eax
2340; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2341; X86-NEXT:    adcl %ecx, %ebx
2342; X86-NEXT:    setb %cl
2343; X86-NEXT:    movl %esi, %eax
2344; X86-NEXT:    mull %edi
2345; X86-NEXT:    movl %eax, %ebp
2346; X86-NEXT:    addl %ebx, %ebp
2347; X86-NEXT:    movzbl %cl, %eax
2348; X86-NEXT:    adcl %eax, %edx
2349; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2350; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2351; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2352; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2353; X86-NEXT:    adcl $0, %ebp
2354; X86-NEXT:    adcl $0, %edx
2355; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2356; X86-NEXT:    adcl (%esp), %edx # 4-byte Folded Reload
2357; X86-NEXT:    movl %edx, (%esp) # 4-byte Spill
2358; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2359; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2360; X86-NEXT:    movl %edi, %eax
2361; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2362; X86-NEXT:    mull %ecx
2363; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2364; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2365; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2366; X86-NEXT:    mull %ecx
2367; X86-NEXT:    movl %edx, %esi
2368; X86-NEXT:    movl %eax, %ebx
2369; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2370; X86-NEXT:    adcl $0, %esi
2371; X86-NEXT:    movl %edi, %eax
2372; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2373; X86-NEXT:    mull %ecx
2374; X86-NEXT:    movl %edx, %edi
2375; X86-NEXT:    addl %ebx, %eax
2376; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2377; X86-NEXT:    adcl %esi, %edi
2378; X86-NEXT:    setb %bl
2379; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2380; X86-NEXT:    mull %ecx
2381; X86-NEXT:    addl %edi, %eax
2382; X86-NEXT:    movl %eax, %esi
2383; X86-NEXT:    movzbl %bl, %eax
2384; X86-NEXT:    adcl %eax, %edx
2385; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2386; X86-NEXT:    addl %ebp, %ebx
2387; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2388; X86-NEXT:    adcl (%esp), %eax # 4-byte Folded Reload
2389; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2390; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2391; X86-NEXT:    movl %esi, %ebp
2392; X86-NEXT:    adcl %eax, %ebp
2393; X86-NEXT:    adcl $0, %edx
2394; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2395; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2396; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2397; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
2398; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2399; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2400; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2401; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2402; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2403; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2404; X86-NEXT:    adcl %eax, %ebx
2405; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2406; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2407; X86-NEXT:    adcl $0, %ebx
2408; X86-NEXT:    adcl $0, %ebp
2409; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2410; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2411; X86-NEXT:    adcl $0, %ebp
2412; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2413; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2414; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2415; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2416; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2417; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2418; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2419; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2420; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2421; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2422; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2423; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2424; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2425; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2426; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2427; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2428; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2429; X86-NEXT:    adcl %eax, %ecx
2430; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2431; X86-NEXT:    adcl $0, %edx
2432; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2433; X86-NEXT:    adcl $0, %esi
2434; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2435; X86-NEXT:    adcl $0, %edi
2436; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2437; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2438; X86-NEXT:    adcl $0, %ebx
2439; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2440; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2441; X86-NEXT:    adcl $0, %ebp
2442; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2443; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2444; X86-NEXT:    movl 64(%eax), %ecx
2445; X86-NEXT:    movl %ecx, (%esp) # 4-byte Spill
2446; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2447; X86-NEXT:    movl %ebp, %eax
2448; X86-NEXT:    mull %ecx
2449; X86-NEXT:    movl %edx, %edi
2450; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2451; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2452; X86-NEXT:    movl %ebx, %eax
2453; X86-NEXT:    mull %ecx
2454; X86-NEXT:    movl %edx, %ecx
2455; X86-NEXT:    movl %eax, %esi
2456; X86-NEXT:    addl %edi, %esi
2457; X86-NEXT:    adcl $0, %ecx
2458; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2459; X86-NEXT:    movl 68(%eax), %edi
2460; X86-NEXT:    movl %ebp, %eax
2461; X86-NEXT:    mull %edi
2462; X86-NEXT:    movl %edi, %ebp
2463; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2464; X86-NEXT:    movl %edx, %edi
2465; X86-NEXT:    addl %esi, %eax
2466; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2467; X86-NEXT:    adcl %ecx, %edi
2468; X86-NEXT:    setb %cl
2469; X86-NEXT:    movl %ebx, %eax
2470; X86-NEXT:    mull %ebp
2471; X86-NEXT:    addl %edi, %eax
2472; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2473; X86-NEXT:    movzbl %cl, %eax
2474; X86-NEXT:    adcl %eax, %edx
2475; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2476; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2477; X86-NEXT:    movl %ebx, %eax
2478; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
2479; X86-NEXT:    mull %ecx
2480; X86-NEXT:    movl %edx, %ebp
2481; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2482; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2483; X86-NEXT:    movl %edi, %eax
2484; X86-NEXT:    mull %ecx
2485; X86-NEXT:    movl %edx, %ecx
2486; X86-NEXT:    movl %eax, %esi
2487; X86-NEXT:    addl %ebp, %esi
2488; X86-NEXT:    adcl $0, %ecx
2489; X86-NEXT:    movl %ebx, %eax
2490; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2491; X86-NEXT:    mull %ebx
2492; X86-NEXT:    movl %edx, %ebp
2493; X86-NEXT:    addl %esi, %eax
2494; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2495; X86-NEXT:    adcl %ecx, %ebp
2496; X86-NEXT:    setb %cl
2497; X86-NEXT:    movl %edi, %eax
2498; X86-NEXT:    mull %ebx
2499; X86-NEXT:    addl %ebp, %eax
2500; X86-NEXT:    movzbl %cl, %ecx
2501; X86-NEXT:    adcl %ecx, %edx
2502; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2503; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2504; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2505; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2506; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2507; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2508; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2509; X86-NEXT:    movl 72(%eax), %ebx
2510; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2511; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2512; X86-NEXT:    movl %edi, %eax
2513; X86-NEXT:    mull %ebx
2514; X86-NEXT:    movl %edx, %esi
2515; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2516; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2517; X86-NEXT:    movl %ecx, %eax
2518; X86-NEXT:    mull %ebx
2519; X86-NEXT:    movl %edx, %ebx
2520; X86-NEXT:    movl %eax, %ebp
2521; X86-NEXT:    addl %esi, %ebp
2522; X86-NEXT:    adcl $0, %ebx
2523; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2524; X86-NEXT:    movl 76(%eax), %edx
2525; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2526; X86-NEXT:    movl %edi, %eax
2527; X86-NEXT:    mull %edx
2528; X86-NEXT:    movl %edx, %esi
2529; X86-NEXT:    addl %ebp, %eax
2530; X86-NEXT:    movl %eax, %edi
2531; X86-NEXT:    adcl %ebx, %esi
2532; X86-NEXT:    setb %bl
2533; X86-NEXT:    movl %ecx, %eax
2534; X86-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
2535; X86-NEXT:    movl %eax, %ebp
2536; X86-NEXT:    addl %esi, %ebp
2537; X86-NEXT:    movzbl %bl, %eax
2538; X86-NEXT:    adcl %eax, %edx
2539; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2540; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2541; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2542; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2543; X86-NEXT:    adcl $0, %ebp
2544; X86-NEXT:    adcl $0, %edx
2545; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2546; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2547; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2548; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2549; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2550; X86-NEXT:    movl %esi, %eax
2551; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2552; X86-NEXT:    mull %ecx
2553; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2554; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2555; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2556; X86-NEXT:    mull %ecx
2557; X86-NEXT:    movl %edx, %ebx
2558; X86-NEXT:    movl %eax, %edi
2559; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2560; X86-NEXT:    adcl $0, %ebx
2561; X86-NEXT:    movl %esi, %eax
2562; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2563; X86-NEXT:    mull %ecx
2564; X86-NEXT:    movl %edx, %esi
2565; X86-NEXT:    addl %edi, %eax
2566; X86-NEXT:    movl %eax, %edi
2567; X86-NEXT:    adcl %ebx, %esi
2568; X86-NEXT:    setb %bl
2569; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2570; X86-NEXT:    mull %ecx
2571; X86-NEXT:    addl %esi, %eax
2572; X86-NEXT:    movl %eax, %esi
2573; X86-NEXT:    movzbl %bl, %eax
2574; X86-NEXT:    adcl %eax, %edx
2575; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2576; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2577; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2578; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2579; X86-NEXT:    adcl %eax, %esi
2580; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2581; X86-NEXT:    adcl $0, %edx
2582; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2583; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2584; X86-NEXT:    movl %ebp, %eax
2585; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
2586; X86-NEXT:    mull %ecx
2587; X86-NEXT:    movl %edx, %edi
2588; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2589; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2590; X86-NEXT:    movl %ebx, %eax
2591; X86-NEXT:    mull %ecx
2592; X86-NEXT:    movl %edx, %ecx
2593; X86-NEXT:    movl %eax, %esi
2594; X86-NEXT:    addl %edi, %esi
2595; X86-NEXT:    adcl $0, %ecx
2596; X86-NEXT:    movl %ebp, %eax
2597; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2598; X86-NEXT:    mull %ebp
2599; X86-NEXT:    movl %edx, %edi
2600; X86-NEXT:    addl %esi, %eax
2601; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2602; X86-NEXT:    adcl %ecx, %edi
2603; X86-NEXT:    setb %cl
2604; X86-NEXT:    movl %ebx, %eax
2605; X86-NEXT:    mull %ebp
2606; X86-NEXT:    addl %edi, %eax
2607; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2608; X86-NEXT:    movzbl %cl, %eax
2609; X86-NEXT:    adcl %eax, %edx
2610; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2611; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2612; X86-NEXT:    movl %ebx, %eax
2613; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
2614; X86-NEXT:    mull %ecx
2615; X86-NEXT:    movl %edx, %ebp
2616; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2617; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2618; X86-NEXT:    movl %edi, %eax
2619; X86-NEXT:    mull %ecx
2620; X86-NEXT:    movl %edx, %ecx
2621; X86-NEXT:    movl %eax, %esi
2622; X86-NEXT:    addl %ebp, %esi
2623; X86-NEXT:    adcl $0, %ecx
2624; X86-NEXT:    movl %ebx, %eax
2625; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2626; X86-NEXT:    mull %ebx
2627; X86-NEXT:    movl %edx, %ebp
2628; X86-NEXT:    addl %esi, %eax
2629; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2630; X86-NEXT:    adcl %ecx, %ebp
2631; X86-NEXT:    setb %cl
2632; X86-NEXT:    movl %edi, %eax
2633; X86-NEXT:    mull %ebx
2634; X86-NEXT:    addl %ebp, %eax
2635; X86-NEXT:    movzbl %cl, %ecx
2636; X86-NEXT:    adcl %ecx, %edx
2637; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2638; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2639; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2640; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2641; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2642; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2643; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2644; X86-NEXT:    movl %edi, %eax
2645; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2646; X86-NEXT:    mull %ebx
2647; X86-NEXT:    movl %edx, %esi
2648; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2649; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2650; X86-NEXT:    movl %ecx, %eax
2651; X86-NEXT:    mull %ebx
2652; X86-NEXT:    movl %edx, %ebx
2653; X86-NEXT:    movl %eax, %ebp
2654; X86-NEXT:    addl %esi, %ebp
2655; X86-NEXT:    adcl $0, %ebx
2656; X86-NEXT:    movl %edi, %eax
2657; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2658; X86-NEXT:    mull %edi
2659; X86-NEXT:    movl %edx, %esi
2660; X86-NEXT:    addl %ebp, %eax
2661; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2662; X86-NEXT:    adcl %ebx, %esi
2663; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2664; X86-NEXT:    movl %ecx, %eax
2665; X86-NEXT:    mull %edi
2666; X86-NEXT:    movl %eax, %ebx
2667; X86-NEXT:    addl %esi, %ebx
2668; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2669; X86-NEXT:    adcl %eax, %edx
2670; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2671; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2672; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2673; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2674; X86-NEXT:    adcl $0, %ebx
2675; X86-NEXT:    adcl $0, %edx
2676; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2677; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2678; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2679; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2680; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2681; X86-NEXT:    movl %ebp, %eax
2682; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2683; X86-NEXT:    mull %ecx
2684; X86-NEXT:    movl %edx, %esi
2685; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2686; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2687; X86-NEXT:    mull %ecx
2688; X86-NEXT:    movl %edx, %ecx
2689; X86-NEXT:    movl %eax, %edi
2690; X86-NEXT:    addl %esi, %edi
2691; X86-NEXT:    adcl $0, %ecx
2692; X86-NEXT:    movl %ebp, %eax
2693; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2694; X86-NEXT:    mull %ebp
2695; X86-NEXT:    movl %edx, %esi
2696; X86-NEXT:    addl %edi, %eax
2697; X86-NEXT:    movl %eax, %edi
2698; X86-NEXT:    adcl %ecx, %esi
2699; X86-NEXT:    setb %cl
2700; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2701; X86-NEXT:    mull %ebp
2702; X86-NEXT:    addl %esi, %eax
2703; X86-NEXT:    movzbl %cl, %ecx
2704; X86-NEXT:    movl %edx, %esi
2705; X86-NEXT:    adcl %ecx, %esi
2706; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2707; X86-NEXT:    addl %ebx, %ecx
2708; X86-NEXT:    movl %edi, %edx
2709; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2710; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 1-byte Folded Reload
2711; X86-NEXT:    adcl %edi, %eax
2712; X86-NEXT:    adcl $0, %esi
2713; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2714; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2715; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2716; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2717; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2718; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2719; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2720; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2721; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2722; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2723; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2724; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2725; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2726; X86-NEXT:    movl 80(%eax), %esi
2727; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2728; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2729; X86-NEXT:    movl %edi, %eax
2730; X86-NEXT:    mull %esi
2731; X86-NEXT:    movl %edx, %ecx
2732; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2733; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2734; X86-NEXT:    movl %ebp, %eax
2735; X86-NEXT:    mull %esi
2736; X86-NEXT:    movl %edx, %esi
2737; X86-NEXT:    movl %eax, %ebx
2738; X86-NEXT:    addl %ecx, %ebx
2739; X86-NEXT:    adcl $0, %esi
2740; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2741; X86-NEXT:    movl 84(%eax), %ecx
2742; X86-NEXT:    movl %edi, %eax
2743; X86-NEXT:    mull %ecx
2744; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2745; X86-NEXT:    movl %edx, %edi
2746; X86-NEXT:    addl %ebx, %eax
2747; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2748; X86-NEXT:    adcl %esi, %edi
2749; X86-NEXT:    setb %bl
2750; X86-NEXT:    movl %ebp, %eax
2751; X86-NEXT:    mull %ecx
2752; X86-NEXT:    addl %edi, %eax
2753; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2754; X86-NEXT:    movzbl %bl, %eax
2755; X86-NEXT:    adcl %eax, %edx
2756; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2757; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2758; X86-NEXT:    movl %ebp, %eax
2759; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2760; X86-NEXT:    mull %esi
2761; X86-NEXT:    movl %edx, %ebx
2762; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2763; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2764; X86-NEXT:    movl %ecx, %eax
2765; X86-NEXT:    mull %esi
2766; X86-NEXT:    movl %edx, %esi
2767; X86-NEXT:    movl %eax, %edi
2768; X86-NEXT:    addl %ebx, %edi
2769; X86-NEXT:    adcl $0, %esi
2770; X86-NEXT:    movl %ebp, %eax
2771; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2772; X86-NEXT:    mull %ebx
2773; X86-NEXT:    movl %edx, %ebp
2774; X86-NEXT:    addl %edi, %eax
2775; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2776; X86-NEXT:    adcl %esi, %ebp
2777; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2778; X86-NEXT:    movl %ecx, %eax
2779; X86-NEXT:    mull %ebx
2780; X86-NEXT:    movl %eax, %edi
2781; X86-NEXT:    addl %ebp, %edi
2782; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2783; X86-NEXT:    adcl %eax, %edx
2784; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
2785; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2786; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2787; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2788; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2789; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2790; X86-NEXT:    movl 88(%eax), %esi
2791; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2792; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2793; X86-NEXT:    movl %ebx, %eax
2794; X86-NEXT:    mull %esi
2795; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2796; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2797; X86-NEXT:    movl %ecx, %eax
2798; X86-NEXT:    mull %esi
2799; X86-NEXT:    movl %edx, %ecx
2800; X86-NEXT:    movl %eax, %ebp
2801; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2802; X86-NEXT:    adcl $0, %ecx
2803; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
2804; X86-NEXT:    movl 92(%eax), %esi
2805; X86-NEXT:    movl %ebx, %eax
2806; X86-NEXT:    mull %esi
2807; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2808; X86-NEXT:    movl %edx, %ebx
2809; X86-NEXT:    addl %ebp, %eax
2810; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2811; X86-NEXT:    adcl %ecx, %ebx
2812; X86-NEXT:    setb %cl
2813; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2814; X86-NEXT:    mull %esi
2815; X86-NEXT:    movl %eax, %ebp
2816; X86-NEXT:    addl %ebx, %ebp
2817; X86-NEXT:    movzbl %cl, %eax
2818; X86-NEXT:    adcl %eax, %edx
2819; X86-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2820; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2821; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2822; X86-NEXT:    adcl $0, %ebp
2823; X86-NEXT:    adcl $0, %edx
2824; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2825; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2826; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2827; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2828; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
2829; X86-NEXT:    movl %edi, %eax
2830; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2831; X86-NEXT:    mull %ecx
2832; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2833; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2834; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2835; X86-NEXT:    mull %ecx
2836; X86-NEXT:    movl %edx, %esi
2837; X86-NEXT:    movl %eax, %ebx
2838; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2839; X86-NEXT:    adcl $0, %esi
2840; X86-NEXT:    movl %edi, %eax
2841; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2842; X86-NEXT:    mull %ecx
2843; X86-NEXT:    movl %edx, %edi
2844; X86-NEXT:    addl %ebx, %eax
2845; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2846; X86-NEXT:    adcl %esi, %edi
2847; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2848; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2849; X86-NEXT:    mull %ecx
2850; X86-NEXT:    movl %eax, %ebx
2851; X86-NEXT:    addl %edi, %ebx
2852; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2853; X86-NEXT:    movl %edx, %esi
2854; X86-NEXT:    adcl %eax, %esi
2855; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
2856; X86-NEXT:    addl %ebp, %edx
2857; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2858; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2859; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2860; X86-NEXT:    adcl %eax, %ebx
2861; X86-NEXT:    adcl $0, %esi
2862; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2863; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2864; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2865; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2866; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2867; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2868; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2869; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2870; X86-NEXT:    movl %edx, %eax
2871; X86-NEXT:    adcl $0, %eax
2872; X86-NEXT:    adcl $0, %ecx
2873; X86-NEXT:    adcl $0, %ebx
2874; X86-NEXT:    adcl $0, %esi
2875; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2876; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2877; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
2878; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2879; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2880; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2881; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
2882; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2883; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2884; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2885; X86-NEXT:    movl %ebx, %eax
2886; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2887; X86-NEXT:    mull %ecx
2888; X86-NEXT:    movl %edx, %edi
2889; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2890; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2891; X86-NEXT:    movl %ebp, %eax
2892; X86-NEXT:    mull %ecx
2893; X86-NEXT:    movl %edx, %ecx
2894; X86-NEXT:    movl %eax, %esi
2895; X86-NEXT:    addl %edi, %esi
2896; X86-NEXT:    adcl $0, %ecx
2897; X86-NEXT:    movl %ebx, %eax
2898; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2899; X86-NEXT:    mull %ebx
2900; X86-NEXT:    movl %edx, %edi
2901; X86-NEXT:    addl %esi, %eax
2902; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2903; X86-NEXT:    adcl %ecx, %edi
2904; X86-NEXT:    setb %cl
2905; X86-NEXT:    movl %ebp, %eax
2906; X86-NEXT:    mull %ebx
2907; X86-NEXT:    addl %edi, %eax
2908; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2909; X86-NEXT:    movzbl %cl, %eax
2910; X86-NEXT:    adcl %eax, %edx
2911; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2912; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2913; X86-NEXT:    movl %ebp, %eax
2914; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2915; X86-NEXT:    mull %ecx
2916; X86-NEXT:    movl %edx, %edi
2917; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2918; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
2919; X86-NEXT:    movl %ebx, %eax
2920; X86-NEXT:    mull %ecx
2921; X86-NEXT:    movl %edx, %ecx
2922; X86-NEXT:    movl %eax, %esi
2923; X86-NEXT:    addl %edi, %esi
2924; X86-NEXT:    adcl $0, %ecx
2925; X86-NEXT:    movl %ebp, %eax
2926; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
2927; X86-NEXT:    mull %ebp
2928; X86-NEXT:    movl %edx, %edi
2929; X86-NEXT:    addl %esi, %eax
2930; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2931; X86-NEXT:    adcl %ecx, %edi
2932; X86-NEXT:    setb %cl
2933; X86-NEXT:    movl %ebx, %eax
2934; X86-NEXT:    mull %ebp
2935; X86-NEXT:    addl %edi, %eax
2936; X86-NEXT:    movzbl %cl, %ecx
2937; X86-NEXT:    adcl %ecx, %edx
2938; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
2939; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2940; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2941; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2942; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2943; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2944; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2945; X86-NEXT:    movl %esi, %eax
2946; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2947; X86-NEXT:    mull %ecx
2948; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2949; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2950; X86-NEXT:    movl %ebx, %eax
2951; X86-NEXT:    mull %ecx
2952; X86-NEXT:    movl %edx, %edi
2953; X86-NEXT:    movl %eax, %ebp
2954; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2955; X86-NEXT:    adcl $0, %edi
2956; X86-NEXT:    movl %esi, %eax
2957; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2958; X86-NEXT:    mull %ecx
2959; X86-NEXT:    movl %edx, %esi
2960; X86-NEXT:    addl %ebp, %eax
2961; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2962; X86-NEXT:    adcl %edi, %esi
2963; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2964; X86-NEXT:    movl %ebx, %eax
2965; X86-NEXT:    mull %ecx
2966; X86-NEXT:    movl %eax, %ebp
2967; X86-NEXT:    addl %esi, %ebp
2968; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
2969; X86-NEXT:    adcl %eax, %edx
2970; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2971; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2972; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2973; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
2974; X86-NEXT:    adcl $0, %ebp
2975; X86-NEXT:    adcl $0, %edx
2976; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
2977; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
2978; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2979; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
2980; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
2981; X86-NEXT:    movl %esi, %eax
2982; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2983; X86-NEXT:    mull %ecx
2984; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2985; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2986; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
2987; X86-NEXT:    mull %ecx
2988; X86-NEXT:    movl %edx, %edi
2989; X86-NEXT:    movl %eax, %ebx
2990; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
2991; X86-NEXT:    adcl $0, %edi
2992; X86-NEXT:    movl %esi, %eax
2993; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
2994; X86-NEXT:    mull %ecx
2995; X86-NEXT:    movl %edx, %esi
2996; X86-NEXT:    addl %ebx, %eax
2997; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
2998; X86-NEXT:    adcl %edi, %esi
2999; X86-NEXT:    setb %bl
3000; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3001; X86-NEXT:    mull %ecx
3002; X86-NEXT:    addl %esi, %eax
3003; X86-NEXT:    movl %eax, %esi
3004; X86-NEXT:    movzbl %bl, %eax
3005; X86-NEXT:    adcl %eax, %edx
3006; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3007; X86-NEXT:    addl %ebp, %ecx
3008; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3009; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3010; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3011; X86-NEXT:    adcl %eax, %esi
3012; X86-NEXT:    adcl $0, %edx
3013; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3014; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3015; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3016; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3017; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3018; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3019; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3020; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3021; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3022; X86-NEXT:    adcl %eax, %ecx
3023; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3024; X86-NEXT:    adcl $0, %ebx
3025; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3026; X86-NEXT:    adcl $0, %esi
3027; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3028; X86-NEXT:    adcl $0, %edx
3029; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3030; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3031; X86-NEXT:    movl %ebx, %eax
3032; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3033; X86-NEXT:    mull %ecx
3034; X86-NEXT:    movl %edx, %edi
3035; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3036; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3037; X86-NEXT:    movl %ebp, %eax
3038; X86-NEXT:    mull %ecx
3039; X86-NEXT:    movl %edx, %ecx
3040; X86-NEXT:    movl %eax, %esi
3041; X86-NEXT:    addl %edi, %esi
3042; X86-NEXT:    adcl $0, %ecx
3043; X86-NEXT:    movl %ebx, %eax
3044; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3045; X86-NEXT:    mull %edi
3046; X86-NEXT:    movl %edx, %ebx
3047; X86-NEXT:    addl %esi, %eax
3048; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3049; X86-NEXT:    adcl %ecx, %ebx
3050; X86-NEXT:    setb %cl
3051; X86-NEXT:    movl %ebp, %eax
3052; X86-NEXT:    mull %edi
3053; X86-NEXT:    addl %ebx, %eax
3054; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3055; X86-NEXT:    movzbl %cl, %eax
3056; X86-NEXT:    adcl %eax, %edx
3057; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3058; X86-NEXT:    movl (%esp), %ebx # 4-byte Reload
3059; X86-NEXT:    movl %ebx, %eax
3060; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3061; X86-NEXT:    mull %ecx
3062; X86-NEXT:    movl %edx, %edi
3063; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3064; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3065; X86-NEXT:    movl %ebp, %eax
3066; X86-NEXT:    mull %ecx
3067; X86-NEXT:    movl %edx, %ecx
3068; X86-NEXT:    movl %eax, %esi
3069; X86-NEXT:    addl %edi, %esi
3070; X86-NEXT:    adcl $0, %ecx
3071; X86-NEXT:    movl %ebx, %eax
3072; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3073; X86-NEXT:    mull %ebx
3074; X86-NEXT:    movl %edx, %edi
3075; X86-NEXT:    addl %esi, %eax
3076; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3077; X86-NEXT:    adcl %ecx, %edi
3078; X86-NEXT:    setb %cl
3079; X86-NEXT:    movl %ebp, %eax
3080; X86-NEXT:    mull %ebx
3081; X86-NEXT:    movl %eax, %ebx
3082; X86-NEXT:    addl %edi, %ebx
3083; X86-NEXT:    movzbl %cl, %eax
3084; X86-NEXT:    adcl %eax, %edx
3085; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3086; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3087; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3088; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3089; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3090; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
3091; X86-NEXT:    movl %ecx, %eax
3092; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3093; X86-NEXT:    mull %edi
3094; X86-NEXT:    movl %edx, %esi
3095; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3096; X86-NEXT:    movl %ebp, %eax
3097; X86-NEXT:    mull %edi
3098; X86-NEXT:    movl %edx, %edi
3099; X86-NEXT:    movl %eax, %ebp
3100; X86-NEXT:    addl %esi, %ebp
3101; X86-NEXT:    adcl $0, %edi
3102; X86-NEXT:    movl %ecx, %eax
3103; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3104; X86-NEXT:    mull %ecx
3105; X86-NEXT:    movl %edx, %esi
3106; X86-NEXT:    addl %ebp, %eax
3107; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3108; X86-NEXT:    adcl %edi, %esi
3109; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3110; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3111; X86-NEXT:    mull %ecx
3112; X86-NEXT:    movl %edx, %ebp
3113; X86-NEXT:    movl %eax, %edi
3114; X86-NEXT:    addl %esi, %edi
3115; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3116; X86-NEXT:    adcl %eax, %ebp
3117; X86-NEXT:    addl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3118; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3119; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3120; X86-NEXT:    adcl $0, %edi
3121; X86-NEXT:    adcl $0, %ebp
3122; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3123; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3124; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3125; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3126; X86-NEXT:    movl %esi, %eax
3127; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3128; X86-NEXT:    mull %ecx
3129; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3130; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3131; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3132; X86-NEXT:    mull %ecx
3133; X86-NEXT:    movl %edx, %ecx
3134; X86-NEXT:    movl %eax, %ebx
3135; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3136; X86-NEXT:    adcl $0, %ecx
3137; X86-NEXT:    movl %esi, %eax
3138; X86-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
3139; X86-NEXT:    movl %edx, %esi
3140; X86-NEXT:    addl %ebx, %eax
3141; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3142; X86-NEXT:    adcl %ecx, %esi
3143; X86-NEXT:    setb %cl
3144; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3145; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3146; X86-NEXT:    mull %ebx
3147; X86-NEXT:    addl %esi, %eax
3148; X86-NEXT:    movl %eax, %esi
3149; X86-NEXT:    movzbl %cl, %eax
3150; X86-NEXT:    adcl %eax, %edx
3151; X86-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3152; X86-NEXT:    adcl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3153; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3154; X86-NEXT:    adcl %eax, %esi
3155; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3156; X86-NEXT:    adcl $0, %edx
3157; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3158; X86-NEXT:    movl %ebx, %esi
3159; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3160; X86-NEXT:    imull %eax, %esi
3161; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3162; X86-NEXT:    mull %ebx
3163; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3164; X86-NEXT:    addl %esi, %edx
3165; X86-NEXT:    movl %ebx, %eax
3166; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3167; X86-NEXT:    imull %ebp, %eax
3168; X86-NEXT:    addl %edx, %eax
3169; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3170; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3171; X86-NEXT:    movl %eax, %esi
3172; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3173; X86-NEXT:    imull %ebx, %esi
3174; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3175; X86-NEXT:    mull %edi
3176; X86-NEXT:    movl %eax, %ecx
3177; X86-NEXT:    addl %esi, %edx
3178; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3179; X86-NEXT:    imull %edi, %esi
3180; X86-NEXT:    addl %edx, %esi
3181; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3182; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3183; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3184; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3185; X86-NEXT:    movl %edi, %eax
3186; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3187; X86-NEXT:    mull %ecx
3188; X86-NEXT:    movl %edx, %edi
3189; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3190; X86-NEXT:    movl %ebx, %eax
3191; X86-NEXT:    mull %ecx
3192; X86-NEXT:    movl %edx, %ecx
3193; X86-NEXT:    movl %eax, %esi
3194; X86-NEXT:    addl %edi, %esi
3195; X86-NEXT:    adcl $0, %ecx
3196; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3197; X86-NEXT:    mull %ebp
3198; X86-NEXT:    movl %edx, %ebx
3199; X86-NEXT:    addl %esi, %eax
3200; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3201; X86-NEXT:    adcl %ecx, %ebx
3202; X86-NEXT:    setb %cl
3203; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3204; X86-NEXT:    mull %ebp
3205; X86-NEXT:    addl %ebx, %eax
3206; X86-NEXT:    movzbl %cl, %ecx
3207; X86-NEXT:    adcl %ecx, %edx
3208; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3209; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3210; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3211; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3212; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3213; X86-NEXT:    movl (%esp), %eax # 4-byte Reload
3214; X86-NEXT:    imull %eax, %ecx
3215; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3216; X86-NEXT:    mull %ebp
3217; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3218; X86-NEXT:    addl %ecx, %edx
3219; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3220; X86-NEXT:    addl %edx, %ebp
3221; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3222; X86-NEXT:    movl %eax, %ecx
3223; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3224; X86-NEXT:    imull %ebx, %ecx
3225; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3226; X86-NEXT:    mull %edi
3227; X86-NEXT:    movl %eax, %esi
3228; X86-NEXT:    addl %ecx, %edx
3229; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3230; X86-NEXT:    imull %edi, %ecx
3231; X86-NEXT:    addl %edx, %ecx
3232; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3233; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3234; X86-NEXT:    adcl %ebp, %ecx
3235; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3236; X86-NEXT:    movl %edi, %eax
3237; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
3238; X86-NEXT:    mull %ecx
3239; X86-NEXT:    movl %edx, %ebp
3240; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3241; X86-NEXT:    movl %ebx, %eax
3242; X86-NEXT:    mull %ecx
3243; X86-NEXT:    movl %edx, %ebx
3244; X86-NEXT:    movl %eax, %ecx
3245; X86-NEXT:    addl %ebp, %ecx
3246; X86-NEXT:    adcl $0, %ebx
3247; X86-NEXT:    movl %edi, %eax
3248; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3249; X86-NEXT:    mull %edi
3250; X86-NEXT:    movl %edx, %ebp
3251; X86-NEXT:    movl %eax, %esi
3252; X86-NEXT:    addl %ecx, %esi
3253; X86-NEXT:    adcl %ebx, %ebp
3254; X86-NEXT:    setb %cl
3255; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3256; X86-NEXT:    mull %edi
3257; X86-NEXT:    addl %ebp, %eax
3258; X86-NEXT:    movzbl %cl, %ecx
3259; X86-NEXT:    adcl %ecx, %edx
3260; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3261; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3262; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3263; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3264; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3265; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3266; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3267; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3268; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3269; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3270; X86-NEXT:    movl %esi, (%esp) # 4-byte Spill
3271; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3272; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3273; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3274; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3275; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3276; X86-NEXT:    movl 104(%ecx), %ebx
3277; X86-NEXT:    movl %ebx, %eax
3278; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3279; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3280; X86-NEXT:    mull %edi
3281; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3282; X86-NEXT:    movl %edx, %esi
3283; X86-NEXT:    movl 108(%ecx), %ebp
3284; X86-NEXT:    movl %ebp, %eax
3285; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3286; X86-NEXT:    mull %edi
3287; X86-NEXT:    movl %edx, %ecx
3288; X86-NEXT:    movl %eax, %edi
3289; X86-NEXT:    addl %esi, %edi
3290; X86-NEXT:    adcl $0, %ecx
3291; X86-NEXT:    movl %ebx, %eax
3292; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3293; X86-NEXT:    mull %ebx
3294; X86-NEXT:    movl %edx, %esi
3295; X86-NEXT:    addl %edi, %eax
3296; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3297; X86-NEXT:    adcl %ecx, %esi
3298; X86-NEXT:    setb %cl
3299; X86-NEXT:    movl %ebp, %eax
3300; X86-NEXT:    mull %ebx
3301; X86-NEXT:    addl %esi, %eax
3302; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3303; X86-NEXT:    movzbl %cl, %eax
3304; X86-NEXT:    adcl %eax, %edx
3305; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3306; X86-NEXT:    movl {{[0-9]+}}(%esp), %esi
3307; X86-NEXT:    movl 96(%esi), %ebx
3308; X86-NEXT:    movl %ebx, %eax
3309; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3310; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3311; X86-NEXT:    mull %ecx
3312; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3313; X86-NEXT:    movl %edx, %edi
3314; X86-NEXT:    movl 100(%esi), %ebp
3315; X86-NEXT:    movl %ebp, %eax
3316; X86-NEXT:    mull %ecx
3317; X86-NEXT:    movl %edx, %ecx
3318; X86-NEXT:    movl %eax, %esi
3319; X86-NEXT:    addl %edi, %esi
3320; X86-NEXT:    adcl $0, %ecx
3321; X86-NEXT:    movl %ebx, %eax
3322; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3323; X86-NEXT:    mull %edi
3324; X86-NEXT:    movl %edx, %ebx
3325; X86-NEXT:    addl %esi, %eax
3326; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3327; X86-NEXT:    adcl %ecx, %ebx
3328; X86-NEXT:    setb %cl
3329; X86-NEXT:    movl %ebp, %eax
3330; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3331; X86-NEXT:    mull %edi
3332; X86-NEXT:    movl %eax, %esi
3333; X86-NEXT:    addl %ebx, %esi
3334; X86-NEXT:    movzbl %cl, %eax
3335; X86-NEXT:    adcl %eax, %edx
3336; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3337; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3338; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3339; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3340; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3341; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3342; X86-NEXT:    movl %edi, %eax
3343; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3344; X86-NEXT:    mull %ecx
3345; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3346; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3347; X86-NEXT:    movl %ebp, %eax
3348; X86-NEXT:    mull %ecx
3349; X86-NEXT:    movl %edx, %ecx
3350; X86-NEXT:    movl %eax, %ebx
3351; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3352; X86-NEXT:    adcl $0, %ecx
3353; X86-NEXT:    movl %edi, %eax
3354; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3355; X86-NEXT:    mull %ebp
3356; X86-NEXT:    movl %edx, %edi
3357; X86-NEXT:    addl %ebx, %eax
3358; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3359; X86-NEXT:    adcl %ecx, %edi
3360; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3361; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3362; X86-NEXT:    mull %ebp
3363; X86-NEXT:    movl %edx, %ebx
3364; X86-NEXT:    movl %eax, %ecx
3365; X86-NEXT:    addl %edi, %ecx
3366; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3367; X86-NEXT:    adcl %eax, %ebx
3368; X86-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3369; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3370; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3371; X86-NEXT:    adcl $0, %ecx
3372; X86-NEXT:    adcl $0, %ebx
3373; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3374; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3375; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3376; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3377; X86-NEXT:    movl %edi, %eax
3378; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3379; X86-NEXT:    mull %esi
3380; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3381; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3382; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3383; X86-NEXT:    mull %esi
3384; X86-NEXT:    movl %edx, %esi
3385; X86-NEXT:    movl %eax, %ebp
3386; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3387; X86-NEXT:    adcl $0, %esi
3388; X86-NEXT:    movl %edi, %eax
3389; X86-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
3390; X86-NEXT:    movl %edx, %edi
3391; X86-NEXT:    addl %ebp, %eax
3392; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3393; X86-NEXT:    adcl %esi, %edi
3394; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3395; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3396; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3397; X86-NEXT:    mull %ebp
3398; X86-NEXT:    addl %edi, %eax
3399; X86-NEXT:    movl %eax, %esi
3400; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3401; X86-NEXT:    adcl %eax, %edx
3402; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3403; X86-NEXT:    adcl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3404; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3405; X86-NEXT:    adcl %eax, %esi
3406; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3407; X86-NEXT:    adcl $0, %edx
3408; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3409; X86-NEXT:    movl {{[0-9]+}}(%esp), %esi
3410; X86-NEXT:    movl 112(%esi), %edi
3411; X86-NEXT:    movl %ebp, %ecx
3412; X86-NEXT:    imull %edi, %ecx
3413; X86-NEXT:    movl %edi, %eax
3414; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3415; X86-NEXT:    mull %ebx
3416; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3417; X86-NEXT:    addl %ecx, %edx
3418; X86-NEXT:    movl 116(%esi), %eax
3419; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3420; X86-NEXT:    imull %eax, %ebx
3421; X86-NEXT:    addl %edx, %ebx
3422; X86-NEXT:    movl 120(%esi), %eax
3423; X86-NEXT:    movl %eax, %ecx
3424; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3425; X86-NEXT:    imull %esi, %ecx
3426; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3427; X86-NEXT:    mull %ebp
3428; X86-NEXT:    addl %ecx, %edx
3429; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3430; X86-NEXT:    movl 124(%ecx), %ecx
3431; X86-NEXT:    imull %ebp, %ecx
3432; X86-NEXT:    addl %edx, %ecx
3433; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3434; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3435; X86-NEXT:    adcl %ebx, %ecx
3436; X86-NEXT:    movl %ebp, %eax
3437; X86-NEXT:    mull %edi
3438; X86-NEXT:    movl %edx, %ebx
3439; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3440; X86-NEXT:    movl %esi, %eax
3441; X86-NEXT:    mull %edi
3442; X86-NEXT:    movl %edx, %esi
3443; X86-NEXT:    movl %eax, %edi
3444; X86-NEXT:    addl %ebx, %edi
3445; X86-NEXT:    adcl $0, %esi
3446; X86-NEXT:    movl %ebp, %eax
3447; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3448; X86-NEXT:    mull %ebx
3449; X86-NEXT:    movl %edx, %ebp
3450; X86-NEXT:    addl %edi, %eax
3451; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3452; X86-NEXT:    adcl %esi, %ebp
3453; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3454; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3455; X86-NEXT:    mull %ebx
3456; X86-NEXT:    addl %ebp, %eax
3457; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
3458; X86-NEXT:    adcl %esi, %edx
3459; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3460; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3461; X86-NEXT:    adcl %ecx, %edx
3462; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3463; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3464; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3465; X86-NEXT:    imull %ebp, %ecx
3466; X86-NEXT:    movl %ebp, %eax
3467; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3468; X86-NEXT:    mull %ebx
3469; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3470; X86-NEXT:    addl %ecx, %edx
3471; X86-NEXT:    movl %ebx, %eax
3472; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3473; X86-NEXT:    addl %edx, %eax
3474; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3475; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3476; X86-NEXT:    movl %eax, %edi
3477; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3478; X86-NEXT:    imull %ebx, %edi
3479; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3480; X86-NEXT:    mull %ecx
3481; X86-NEXT:    movl %eax, %esi
3482; X86-NEXT:    addl %edi, %edx
3483; X86-NEXT:    movl %ecx, %eax
3484; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3485; X86-NEXT:    imull %eax, %ecx
3486; X86-NEXT:    addl %edx, %ecx
3487; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3488; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3489; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3490; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3491; X86-NEXT:    movl %eax, %ecx
3492; X86-NEXT:    mull %ebp
3493; X86-NEXT:    movl %edx, %edi
3494; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3495; X86-NEXT:    movl %ebx, %eax
3496; X86-NEXT:    mull %ebp
3497; X86-NEXT:    movl %edx, %ebp
3498; X86-NEXT:    movl %eax, %ebx
3499; X86-NEXT:    addl %edi, %ebx
3500; X86-NEXT:    adcl $0, %ebp
3501; X86-NEXT:    movl %ecx, %eax
3502; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3503; X86-NEXT:    mull %esi
3504; X86-NEXT:    movl %edx, %edi
3505; X86-NEXT:    movl %eax, %ecx
3506; X86-NEXT:    addl %ebx, %ecx
3507; X86-NEXT:    adcl %ebp, %edi
3508; X86-NEXT:    setb %bl
3509; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3510; X86-NEXT:    mull %esi
3511; X86-NEXT:    addl %edi, %eax
3512; X86-NEXT:    movzbl %bl, %edi
3513; X86-NEXT:    adcl %edi, %edx
3514; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3515; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3516; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3517; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3518; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3519; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3520; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3521; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3522; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3523; X86-NEXT:    movl %ecx, %ebx
3524; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3525; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3526; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3527; X86-NEXT:    movl %edx, %ebp
3528; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3529; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3530; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3531; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3532; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
3533; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3534; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3535; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3536; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3537; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3538; X86-NEXT:    adcl (%esp), %ebx # 4-byte Folded Reload
3539; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3540; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3541; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3542; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3543; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3544; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3545; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3546; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3547; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3548; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3549; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3550; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3551; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3552; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3553; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3554; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3555; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3556; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3557; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3558; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3559; X86-NEXT:    movl 88(%ecx), %ebx
3560; X86-NEXT:    movl %ebx, %eax
3561; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3562; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3563; X86-NEXT:    mull %esi
3564; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3565; X86-NEXT:    movl %edx, %edi
3566; X86-NEXT:    movl 92(%ecx), %ebp
3567; X86-NEXT:    movl %ebp, %eax
3568; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3569; X86-NEXT:    mull %esi
3570; X86-NEXT:    movl %edx, %ecx
3571; X86-NEXT:    movl %eax, %esi
3572; X86-NEXT:    addl %edi, %esi
3573; X86-NEXT:    adcl $0, %ecx
3574; X86-NEXT:    movl %ebx, %eax
3575; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3576; X86-NEXT:    mull %edi
3577; X86-NEXT:    movl %edx, %ebx
3578; X86-NEXT:    addl %esi, %eax
3579; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3580; X86-NEXT:    adcl %ecx, %ebx
3581; X86-NEXT:    setb %cl
3582; X86-NEXT:    movl %ebp, %eax
3583; X86-NEXT:    mull %edi
3584; X86-NEXT:    addl %ebx, %eax
3585; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3586; X86-NEXT:    movzbl %cl, %eax
3587; X86-NEXT:    adcl %eax, %edx
3588; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3589; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3590; X86-NEXT:    movl 80(%ecx), %ebx
3591; X86-NEXT:    movl %ebx, %eax
3592; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3593; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3594; X86-NEXT:    mull %edi
3595; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3596; X86-NEXT:    movl %edx, %esi
3597; X86-NEXT:    movl 84(%ecx), %ebp
3598; X86-NEXT:    movl %ebp, %eax
3599; X86-NEXT:    mull %edi
3600; X86-NEXT:    movl %edx, %ecx
3601; X86-NEXT:    movl %eax, %edi
3602; X86-NEXT:    addl %esi, %edi
3603; X86-NEXT:    adcl $0, %ecx
3604; X86-NEXT:    movl %ebx, %eax
3605; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3606; X86-NEXT:    mull %ebx
3607; X86-NEXT:    movl %edx, %esi
3608; X86-NEXT:    addl %edi, %eax
3609; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3610; X86-NEXT:    adcl %ecx, %esi
3611; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3612; X86-NEXT:    movl %ebp, %eax
3613; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3614; X86-NEXT:    mull %ebx
3615; X86-NEXT:    movl %eax, %ecx
3616; X86-NEXT:    addl %esi, %ecx
3617; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3618; X86-NEXT:    adcl %eax, %edx
3619; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3620; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3621; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3622; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3623; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3624; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3625; X86-NEXT:    movl %ebx, %eax
3626; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3627; X86-NEXT:    mull %esi
3628; X86-NEXT:    movl %edx, %edi
3629; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3630; X86-NEXT:    movl %ebp, %eax
3631; X86-NEXT:    mull %esi
3632; X86-NEXT:    movl %edx, %esi
3633; X86-NEXT:    movl %eax, %ebp
3634; X86-NEXT:    addl %edi, %ebp
3635; X86-NEXT:    adcl $0, %esi
3636; X86-NEXT:    movl %ebx, %eax
3637; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3638; X86-NEXT:    mull %ebx
3639; X86-NEXT:    movl %edx, %edi
3640; X86-NEXT:    addl %ebp, %eax
3641; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3642; X86-NEXT:    adcl %esi, %edi
3643; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3644; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3645; X86-NEXT:    mull %ebx
3646; X86-NEXT:    movl %eax, %ebp
3647; X86-NEXT:    addl %edi, %ebp
3648; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3649; X86-NEXT:    adcl %eax, %edx
3650; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3651; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3652; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3653; X86-NEXT:    adcl $0, %ebp
3654; X86-NEXT:    adcl $0, %edx
3655; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3656; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3657; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3658; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3659; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3660; X86-NEXT:    movl %edi, %eax
3661; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3662; X86-NEXT:    mull %ecx
3663; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3664; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
3665; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3666; X86-NEXT:    mull %ecx
3667; X86-NEXT:    movl %edx, %esi
3668; X86-NEXT:    movl %eax, %ebx
3669; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3670; X86-NEXT:    adcl $0, %esi
3671; X86-NEXT:    movl %edi, %eax
3672; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3673; X86-NEXT:    mull %ecx
3674; X86-NEXT:    movl %edx, %edi
3675; X86-NEXT:    addl %ebx, %eax
3676; X86-NEXT:    movl %eax, %ebx
3677; X86-NEXT:    adcl %esi, %edi
3678; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3679; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3680; X86-NEXT:    mull %ecx
3681; X86-NEXT:    addl %edi, %eax
3682; X86-NEXT:    movl %eax, %edi
3683; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3684; X86-NEXT:    adcl %eax, %edx
3685; X86-NEXT:    addl %ebp, (%esp) # 4-byte Folded Spill
3686; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
3687; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3688; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3689; X86-NEXT:    adcl %eax, %edi
3690; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3691; X86-NEXT:    adcl $0, %edx
3692; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3693; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
3694; X86-NEXT:    movl 72(%ecx), %ebp
3695; X86-NEXT:    movl %ebp, %eax
3696; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3697; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3698; X86-NEXT:    mull %edi
3699; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3700; X86-NEXT:    movl %edx, %ebx
3701; X86-NEXT:    movl 76(%ecx), %esi
3702; X86-NEXT:    movl %esi, %eax
3703; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3704; X86-NEXT:    mull %edi
3705; X86-NEXT:    movl %edx, %ecx
3706; X86-NEXT:    movl %eax, %edi
3707; X86-NEXT:    addl %ebx, %edi
3708; X86-NEXT:    adcl $0, %ecx
3709; X86-NEXT:    movl %ebp, %eax
3710; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3711; X86-NEXT:    mull %ebp
3712; X86-NEXT:    movl %edx, %ebx
3713; X86-NEXT:    addl %edi, %eax
3714; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3715; X86-NEXT:    adcl %ecx, %ebx
3716; X86-NEXT:    setb %cl
3717; X86-NEXT:    movl %esi, %eax
3718; X86-NEXT:    mull %ebp
3719; X86-NEXT:    addl %ebx, %eax
3720; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3721; X86-NEXT:    movzbl %cl, %eax
3722; X86-NEXT:    adcl %eax, %edx
3723; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3724; X86-NEXT:    movl {{[0-9]+}}(%esp), %esi
3725; X86-NEXT:    movl 64(%esi), %ebx
3726; X86-NEXT:    movl %ebx, %eax
3727; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3728; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3729; X86-NEXT:    mull %ecx
3730; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3731; X86-NEXT:    movl %edx, %ebp
3732; X86-NEXT:    movl 68(%esi), %eax
3733; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3734; X86-NEXT:    mull %ecx
3735; X86-NEXT:    movl %edx, %ecx
3736; X86-NEXT:    movl %eax, %edi
3737; X86-NEXT:    addl %ebp, %edi
3738; X86-NEXT:    adcl $0, %ecx
3739; X86-NEXT:    movl %ebx, %eax
3740; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3741; X86-NEXT:    mull %esi
3742; X86-NEXT:    movl %edx, %ebp
3743; X86-NEXT:    addl %edi, %eax
3744; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3745; X86-NEXT:    adcl %ecx, %ebp
3746; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3747; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3748; X86-NEXT:    movl %ebx, %eax
3749; X86-NEXT:    mull %esi
3750; X86-NEXT:    movl %eax, %ecx
3751; X86-NEXT:    addl %ebp, %ecx
3752; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3753; X86-NEXT:    adcl %eax, %edx
3754; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3755; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3756; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3757; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3758; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3759; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3760; X86-NEXT:    movl %edi, %eax
3761; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3762; X86-NEXT:    mull %esi
3763; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3764; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3765; X86-NEXT:    movl %ebx, %eax
3766; X86-NEXT:    mull %esi
3767; X86-NEXT:    movl %edx, %esi
3768; X86-NEXT:    movl %eax, %ebp
3769; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3770; X86-NEXT:    adcl $0, %esi
3771; X86-NEXT:    movl %edi, %eax
3772; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3773; X86-NEXT:    mull %ebx
3774; X86-NEXT:    movl %edx, %edi
3775; X86-NEXT:    addl %ebp, %eax
3776; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3777; X86-NEXT:    adcl %esi, %edi
3778; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3779; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3780; X86-NEXT:    mull %ebx
3781; X86-NEXT:    movl %eax, %ebp
3782; X86-NEXT:    addl %edi, %ebp
3783; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3784; X86-NEXT:    adcl %eax, %edx
3785; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3786; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3787; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3788; X86-NEXT:    adcl $0, %ebp
3789; X86-NEXT:    adcl $0, %edx
3790; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3791; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3792; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3793; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3794; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3795; X86-NEXT:    movl %esi, %eax
3796; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3797; X86-NEXT:    mull %ecx
3798; X86-NEXT:    movl %edx, %edi
3799; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3800; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3801; X86-NEXT:    mull %ecx
3802; X86-NEXT:    movl %edx, %ecx
3803; X86-NEXT:    movl %eax, %ebx
3804; X86-NEXT:    addl %edi, %ebx
3805; X86-NEXT:    adcl $0, %ecx
3806; X86-NEXT:    movl %esi, %eax
3807; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3808; X86-NEXT:    mull %esi
3809; X86-NEXT:    movl %edx, %edi
3810; X86-NEXT:    addl %ebx, %eax
3811; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3812; X86-NEXT:    adcl %ecx, %edi
3813; X86-NEXT:    setb %cl
3814; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3815; X86-NEXT:    movl %ebx, %eax
3816; X86-NEXT:    mull %esi
3817; X86-NEXT:    addl %edi, %eax
3818; X86-NEXT:    movl %eax, %edi
3819; X86-NEXT:    movzbl %cl, %eax
3820; X86-NEXT:    movl %edx, %esi
3821; X86-NEXT:    adcl %eax, %esi
3822; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3823; X86-NEXT:    addl %ebp, %ecx
3824; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Reload
3825; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3826; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
3827; X86-NEXT:    adcl %eax, %edi
3828; X86-NEXT:    adcl $0, %esi
3829; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3830; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3831; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3832; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3833; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3834; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3835; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3836; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3837; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
3838; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3839; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3840; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3841; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3842; X86-NEXT:    movl %ebp, %eax
3843; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3844; X86-NEXT:    mull %ecx
3845; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3846; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3847; X86-NEXT:    movl %ebx, %eax
3848; X86-NEXT:    movl %ebx, %edi
3849; X86-NEXT:    mull %ecx
3850; X86-NEXT:    movl %edx, %esi
3851; X86-NEXT:    movl %eax, %ecx
3852; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
3853; X86-NEXT:    adcl $0, %esi
3854; X86-NEXT:    movl %ebp, %eax
3855; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3856; X86-NEXT:    mull %ebx
3857; X86-NEXT:    movl %edx, %ebp
3858; X86-NEXT:    addl %ecx, %eax
3859; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3860; X86-NEXT:    adcl %esi, %ebp
3861; X86-NEXT:    setb %cl
3862; X86-NEXT:    movl %edi, %eax
3863; X86-NEXT:    mull %ebx
3864; X86-NEXT:    addl %ebp, %eax
3865; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3866; X86-NEXT:    movzbl %cl, %eax
3867; X86-NEXT:    adcl %eax, %edx
3868; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3869; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3870; X86-NEXT:    movl %ebp, %eax
3871; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3872; X86-NEXT:    mull %esi
3873; X86-NEXT:    movl %edx, %ecx
3874; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3875; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
3876; X86-NEXT:    movl %edi, %eax
3877; X86-NEXT:    mull %esi
3878; X86-NEXT:    movl %edx, %esi
3879; X86-NEXT:    movl %eax, %ebx
3880; X86-NEXT:    addl %ecx, %ebx
3881; X86-NEXT:    adcl $0, %esi
3882; X86-NEXT:    movl %ebp, %eax
3883; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3884; X86-NEXT:    mull %ebp
3885; X86-NEXT:    movl %edx, %ecx
3886; X86-NEXT:    addl %ebx, %eax
3887; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3888; X86-NEXT:    adcl %esi, %ecx
3889; X86-NEXT:    setb %bl
3890; X86-NEXT:    movl %edi, %eax
3891; X86-NEXT:    mull %ebp
3892; X86-NEXT:    movl %eax, %esi
3893; X86-NEXT:    addl %ecx, %esi
3894; X86-NEXT:    movzbl %bl, %eax
3895; X86-NEXT:    adcl %eax, %edx
3896; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
3897; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3898; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3899; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3900; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3901; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3902; X86-NEXT:    movl %ebp, %eax
3903; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3904; X86-NEXT:    mull %ecx
3905; X86-NEXT:    movl %edx, %ebx
3906; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3907; X86-NEXT:    movl %edi, %eax
3908; X86-NEXT:    mull %ecx
3909; X86-NEXT:    movl %edx, %ecx
3910; X86-NEXT:    movl %eax, %edi
3911; X86-NEXT:    addl %ebx, %edi
3912; X86-NEXT:    adcl $0, %ecx
3913; X86-NEXT:    movl %ebp, %eax
3914; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3915; X86-NEXT:    mull %ebp
3916; X86-NEXT:    movl %edx, %ebx
3917; X86-NEXT:    addl %edi, %eax
3918; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3919; X86-NEXT:    adcl %ecx, %ebx
3920; X86-NEXT:    setb %cl
3921; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3922; X86-NEXT:    mull %ebp
3923; X86-NEXT:    movl %eax, %edi
3924; X86-NEXT:    addl %ebx, %edi
3925; X86-NEXT:    movzbl %cl, %eax
3926; X86-NEXT:    adcl %eax, %edx
3927; X86-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3928; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3929; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3930; X86-NEXT:    adcl $0, %edi
3931; X86-NEXT:    adcl $0, %edx
3932; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
3933; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3934; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3935; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3936; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3937; X86-NEXT:    movl %ebx, %eax
3938; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3939; X86-NEXT:    mull %ecx
3940; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3941; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3942; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3943; X86-NEXT:    mull %ecx
3944; X86-NEXT:    movl %edx, %esi
3945; X86-NEXT:    movl %eax, %ebp
3946; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3947; X86-NEXT:    adcl $0, %esi
3948; X86-NEXT:    movl %ebx, %eax
3949; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3950; X86-NEXT:    mull %ecx
3951; X86-NEXT:    movl %edx, %ebx
3952; X86-NEXT:    addl %ebp, %eax
3953; X86-NEXT:    movl %eax, %ebp
3954; X86-NEXT:    adcl %esi, %ebx
3955; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3956; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
3957; X86-NEXT:    mull %ecx
3958; X86-NEXT:    addl %ebx, %eax
3959; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 1-byte Folded Reload
3960; X86-NEXT:    adcl %esi, %edx
3961; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
3962; X86-NEXT:    addl %edi, %esi
3963; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3964; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
3965; X86-NEXT:    adcl %ecx, %eax
3966; X86-NEXT:    adcl $0, %edx
3967; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3968; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3969; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3970; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3971; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3972; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3973; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3974; X86-NEXT:    adcl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
3975; X86-NEXT:    movl %esi, %ecx
3976; X86-NEXT:    adcl $0, %ecx
3977; X86-NEXT:    adcl $0, %ebp
3978; X86-NEXT:    adcl $0, %eax
3979; X86-NEXT:    adcl $0, %edx
3980; X86-NEXT:    addl (%esp), %ecx # 4-byte Folded Reload
3981; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3982; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
3983; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3984; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
3985; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3986; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
3987; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3988; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
3989; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
3990; X86-NEXT:    movl %ebx, %eax
3991; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
3992; X86-NEXT:    mull %ecx
3993; X86-NEXT:    movl %edx, %esi
3994; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
3995; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
3996; X86-NEXT:    movl %ebp, %eax
3997; X86-NEXT:    mull %ecx
3998; X86-NEXT:    movl %edx, %ecx
3999; X86-NEXT:    movl %eax, %edi
4000; X86-NEXT:    addl %esi, %edi
4001; X86-NEXT:    adcl $0, %ecx
4002; X86-NEXT:    movl %ebx, %eax
4003; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4004; X86-NEXT:    mull %ebx
4005; X86-NEXT:    movl %edx, %esi
4006; X86-NEXT:    addl %edi, %eax
4007; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4008; X86-NEXT:    adcl %ecx, %esi
4009; X86-NEXT:    setb %cl
4010; X86-NEXT:    movl %ebp, %eax
4011; X86-NEXT:    mull %ebx
4012; X86-NEXT:    addl %esi, %eax
4013; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
4014; X86-NEXT:    movzbl %cl, %eax
4015; X86-NEXT:    adcl %eax, %edx
4016; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4017; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4018; X86-NEXT:    movl %ebx, %eax
4019; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4020; X86-NEXT:    mull %ecx
4021; X86-NEXT:    movl %edx, %esi
4022; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4023; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4024; X86-NEXT:    movl %ebp, %eax
4025; X86-NEXT:    mull %ecx
4026; X86-NEXT:    movl %edx, %ecx
4027; X86-NEXT:    movl %eax, %edi
4028; X86-NEXT:    addl %esi, %edi
4029; X86-NEXT:    adcl $0, %ecx
4030; X86-NEXT:    movl %ebx, %eax
4031; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4032; X86-NEXT:    mull %ebx
4033; X86-NEXT:    movl %edx, %esi
4034; X86-NEXT:    addl %edi, %eax
4035; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4036; X86-NEXT:    adcl %ecx, %esi
4037; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4038; X86-NEXT:    movl %ebp, %eax
4039; X86-NEXT:    mull %ebx
4040; X86-NEXT:    movl %eax, %ecx
4041; X86-NEXT:    addl %esi, %ecx
4042; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4043; X86-NEXT:    adcl %eax, %edx
4044; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4045; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4046; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4047; X86-NEXT:    adcl $0, (%esp) # 4-byte Folded Spill
4048; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4049; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4050; X86-NEXT:    movl %edi, %eax
4051; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4052; X86-NEXT:    mull %esi
4053; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4054; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4055; X86-NEXT:    movl %ebp, %eax
4056; X86-NEXT:    mull %esi
4057; X86-NEXT:    movl %edx, %esi
4058; X86-NEXT:    movl %eax, %ebx
4059; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4060; X86-NEXT:    adcl $0, %esi
4061; X86-NEXT:    movl %edi, %eax
4062; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4063; X86-NEXT:    mull %ebp
4064; X86-NEXT:    movl %edx, %edi
4065; X86-NEXT:    addl %ebx, %eax
4066; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4067; X86-NEXT:    adcl %esi, %edi
4068; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4069; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4070; X86-NEXT:    mull %ebp
4071; X86-NEXT:    movl %eax, %ebx
4072; X86-NEXT:    addl %edi, %ebx
4073; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4074; X86-NEXT:    adcl %eax, %edx
4075; X86-NEXT:    addl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4076; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4077; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4078; X86-NEXT:    adcl $0, %ebx
4079; X86-NEXT:    adcl $0, %edx
4080; X86-NEXT:    addl (%esp), %ebx # 4-byte Folded Reload
4081; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4082; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4083; X86-NEXT:    setb (%esp) # 1-byte Folded Spill
4084; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4085; X86-NEXT:    movl %edi, %eax
4086; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4087; X86-NEXT:    mull %ecx
4088; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4089; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4090; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4091; X86-NEXT:    mull %ecx
4092; X86-NEXT:    movl %edx, %esi
4093; X86-NEXT:    movl %eax, %ebp
4094; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4095; X86-NEXT:    adcl $0, %esi
4096; X86-NEXT:    movl %edi, %eax
4097; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4098; X86-NEXT:    mull %ecx
4099; X86-NEXT:    movl %edx, %edi
4100; X86-NEXT:    addl %ebp, %eax
4101; X86-NEXT:    movl %eax, %ebp
4102; X86-NEXT:    adcl %esi, %edi
4103; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4104; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4105; X86-NEXT:    mull %ecx
4106; X86-NEXT:    addl %edi, %eax
4107; X86-NEXT:    movl %eax, %edi
4108; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4109; X86-NEXT:    adcl %eax, %edx
4110; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4111; X86-NEXT:    addl %ebx, %ecx
4112; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4113; X86-NEXT:    movzbl (%esp), %eax # 1-byte Folded Reload
4114; X86-NEXT:    adcl %eax, %edi
4115; X86-NEXT:    adcl $0, %edx
4116; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4117; X86-NEXT:    addl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4118; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4119; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4120; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4121; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4122; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4123; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4124; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4125; X86-NEXT:    adcl %eax, %ecx
4126; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4127; X86-NEXT:    adcl $0, %ebp
4128; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4129; X86-NEXT:    adcl $0, %edi
4130; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4131; X86-NEXT:    adcl $0, %edx
4132; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4133; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
4134; X86-NEXT:    movl 96(%eax), %ecx
4135; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4136; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4137; X86-NEXT:    movl %ebp, %eax
4138; X86-NEXT:    mull %ecx
4139; X86-NEXT:    movl %edx, %esi
4140; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
4141; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4142; X86-NEXT:    movl %ebx, %eax
4143; X86-NEXT:    mull %ecx
4144; X86-NEXT:    movl %edx, %ecx
4145; X86-NEXT:    movl %eax, %edi
4146; X86-NEXT:    addl %esi, %edi
4147; X86-NEXT:    adcl $0, %ecx
4148; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
4149; X86-NEXT:    movl 100(%eax), %esi
4150; X86-NEXT:    movl %ebp, %eax
4151; X86-NEXT:    mull %esi
4152; X86-NEXT:    movl %esi, %ebp
4153; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4154; X86-NEXT:    movl %edx, %esi
4155; X86-NEXT:    addl %edi, %eax
4156; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4157; X86-NEXT:    adcl %ecx, %esi
4158; X86-NEXT:    setb %cl
4159; X86-NEXT:    movl %ebx, %eax
4160; X86-NEXT:    mull %ebp
4161; X86-NEXT:    addl %esi, %eax
4162; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4163; X86-NEXT:    movzbl %cl, %eax
4164; X86-NEXT:    adcl %eax, %edx
4165; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4166; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4167; X86-NEXT:    movl %ebx, %eax
4168; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4169; X86-NEXT:    mull %ecx
4170; X86-NEXT:    movl %edx, %esi
4171; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4172; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4173; X86-NEXT:    movl %ebp, %eax
4174; X86-NEXT:    mull %ecx
4175; X86-NEXT:    movl %edx, %ecx
4176; X86-NEXT:    movl %eax, %edi
4177; X86-NEXT:    addl %esi, %edi
4178; X86-NEXT:    adcl $0, %ecx
4179; X86-NEXT:    movl %ebx, %eax
4180; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4181; X86-NEXT:    mull %ebx
4182; X86-NEXT:    movl %edx, %esi
4183; X86-NEXT:    addl %edi, %eax
4184; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4185; X86-NEXT:    adcl %ecx, %esi
4186; X86-NEXT:    setb %cl
4187; X86-NEXT:    movl %ebp, %eax
4188; X86-NEXT:    mull %ebx
4189; X86-NEXT:    movl %eax, %edi
4190; X86-NEXT:    addl %esi, %edi
4191; X86-NEXT:    movzbl %cl, %eax
4192; X86-NEXT:    adcl %eax, %edx
4193; X86-NEXT:    addl (%esp), %edi # 4-byte Folded Reload
4194; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4195; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4196; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4197; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4198; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
4199; X86-NEXT:    movl 104(%eax), %ecx
4200; X86-NEXT:    movl %ecx, (%esp) # 4-byte Spill
4201; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4202; X86-NEXT:    movl %ebx, %eax
4203; X86-NEXT:    mull %ecx
4204; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4205; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4206; X86-NEXT:    movl %ebp, %eax
4207; X86-NEXT:    mull %ecx
4208; X86-NEXT:    movl %edx, %esi
4209; X86-NEXT:    movl %eax, %ebp
4210; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4211; X86-NEXT:    adcl $0, %esi
4212; X86-NEXT:    movl {{[0-9]+}}(%esp), %eax
4213; X86-NEXT:    movl 108(%eax), %ecx
4214; X86-NEXT:    movl %ebx, %eax
4215; X86-NEXT:    mull %ecx
4216; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4217; X86-NEXT:    movl %edx, %ebx
4218; X86-NEXT:    addl %ebp, %eax
4219; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4220; X86-NEXT:    adcl %esi, %ebx
4221; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4222; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4223; X86-NEXT:    mull %ecx
4224; X86-NEXT:    movl %eax, %ebp
4225; X86-NEXT:    addl %ebx, %ebp
4226; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4227; X86-NEXT:    adcl %eax, %edx
4228; X86-NEXT:    addl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4229; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4230; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4231; X86-NEXT:    adcl $0, %ebp
4232; X86-NEXT:    adcl $0, %edx
4233; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4234; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4235; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4236; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4237; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4238; X86-NEXT:    movl %edi, %eax
4239; X86-NEXT:    movl (%esp), %ecx # 4-byte Reload
4240; X86-NEXT:    mull %ecx
4241; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4242; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4243; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4244; X86-NEXT:    mull %ecx
4245; X86-NEXT:    movl %edx, %esi
4246; X86-NEXT:    movl %eax, %ebx
4247; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4248; X86-NEXT:    adcl $0, %esi
4249; X86-NEXT:    movl %edi, %eax
4250; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4251; X86-NEXT:    mull %ecx
4252; X86-NEXT:    movl %edx, %edi
4253; X86-NEXT:    addl %ebx, %eax
4254; X86-NEXT:    movl %eax, %ebx
4255; X86-NEXT:    adcl %esi, %edi
4256; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4257; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4258; X86-NEXT:    mull %ecx
4259; X86-NEXT:    addl %edi, %eax
4260; X86-NEXT:    movl %eax, %edi
4261; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4262; X86-NEXT:    adcl %eax, %edx
4263; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4264; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4265; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4266; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4267; X86-NEXT:    adcl %eax, %edi
4268; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4269; X86-NEXT:    adcl $0, %edx
4270; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4271; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4272; X86-NEXT:    imull %eax, %ecx
4273; X86-NEXT:    movl (%esp), %esi # 4-byte Reload
4274; X86-NEXT:    mull %esi
4275; X86-NEXT:    movl %eax, %ebp
4276; X86-NEXT:    addl %ecx, %edx
4277; X86-NEXT:    movl %esi, %eax
4278; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4279; X86-NEXT:    addl %edx, %eax
4280; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
4281; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4282; X86-NEXT:    movl %eax, %esi
4283; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4284; X86-NEXT:    imull %ebx, %esi
4285; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4286; X86-NEXT:    mull %edi
4287; X86-NEXT:    movl %eax, %ecx
4288; X86-NEXT:    addl %esi, %edx
4289; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4290; X86-NEXT:    imull %edi, %esi
4291; X86-NEXT:    addl %edx, %esi
4292; X86-NEXT:    addl %ebp, %ecx
4293; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4294; X86-NEXT:    adcl (%esp), %esi # 4-byte Folded Reload
4295; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4296; X86-NEXT:    movl %edi, %eax
4297; X86-NEXT:    movl %edi, %ebp
4298; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4299; X86-NEXT:    mull %ecx
4300; X86-NEXT:    movl %edx, %esi
4301; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4302; X86-NEXT:    movl %ebx, %eax
4303; X86-NEXT:    mull %ecx
4304; X86-NEXT:    movl %edx, %ecx
4305; X86-NEXT:    movl %eax, %edi
4306; X86-NEXT:    addl %esi, %edi
4307; X86-NEXT:    adcl $0, %ecx
4308; X86-NEXT:    movl %ebp, %eax
4309; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4310; X86-NEXT:    mull %ebx
4311; X86-NEXT:    movl %edx, %esi
4312; X86-NEXT:    addl %edi, %eax
4313; X86-NEXT:    movl %eax, (%esp) # 4-byte Spill
4314; X86-NEXT:    adcl %ecx, %esi
4315; X86-NEXT:    setb %cl
4316; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4317; X86-NEXT:    mull %ebx
4318; X86-NEXT:    addl %esi, %eax
4319; X86-NEXT:    movzbl %cl, %ecx
4320; X86-NEXT:    adcl %ecx, %edx
4321; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4322; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4323; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4324; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4325; X86-NEXT:    movl {{[0-9]+}}(%esp), %ebx
4326; X86-NEXT:    movl 120(%ebx), %esi
4327; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4328; X86-NEXT:    movl %ecx, %eax
4329; X86-NEXT:    mull %esi
4330; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4331; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4332; X86-NEXT:    addl %edx, %esi
4333; X86-NEXT:    movl 124(%ebx), %eax
4334; X86-NEXT:    imull %ecx, %eax
4335; X86-NEXT:    addl %eax, %esi
4336; X86-NEXT:    movl 112(%ebx), %edi
4337; X86-NEXT:    movl 116(%ebx), %ebp
4338; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4339; X86-NEXT:    movl %eax, %ebx
4340; X86-NEXT:    imull %ebp, %ebx
4341; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4342; X86-NEXT:    mull %edi
4343; X86-NEXT:    addl %ebx, %edx
4344; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4345; X86-NEXT:    imull %edi, %ecx
4346; X86-NEXT:    addl %edx, %ecx
4347; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4348; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4349; X86-NEXT:    adcl %esi, %ecx
4350; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4351; X86-NEXT:    movl %edi, %eax
4352; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4353; X86-NEXT:    mull %ecx
4354; X86-NEXT:    movl %edx, %ebx
4355; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4356; X86-NEXT:    movl %ebp, %eax
4357; X86-NEXT:    mull %ecx
4358; X86-NEXT:    movl %edx, %esi
4359; X86-NEXT:    movl %eax, %ebp
4360; X86-NEXT:    addl %ebx, %ebp
4361; X86-NEXT:    adcl $0, %esi
4362; X86-NEXT:    movl %edi, %eax
4363; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4364; X86-NEXT:    mull %ebx
4365; X86-NEXT:    movl %edx, %ecx
4366; X86-NEXT:    movl %eax, %edi
4367; X86-NEXT:    addl %ebp, %edi
4368; X86-NEXT:    adcl %esi, %ecx
4369; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4370; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4371; X86-NEXT:    mull %ebx
4372; X86-NEXT:    addl %ecx, %eax
4373; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
4374; X86-NEXT:    adcl %ecx, %edx
4375; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4376; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4377; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4378; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4379; X86-NEXT:    adcl (%esp), %edi # 4-byte Folded Reload
4380; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4381; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4382; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4383; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4384; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4385; X86-NEXT:    movl %edi, (%esp) # 4-byte Spill
4386; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4387; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4388; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4389; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4390; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4391; X86-NEXT:    movl %ebx, %eax
4392; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4393; X86-NEXT:    mull %ecx
4394; X86-NEXT:    movl %edx, %ebp
4395; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4396; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4397; X86-NEXT:    movl %esi, %eax
4398; X86-NEXT:    mull %ecx
4399; X86-NEXT:    movl %edx, %edi
4400; X86-NEXT:    movl %eax, %ecx
4401; X86-NEXT:    addl %ebp, %ecx
4402; X86-NEXT:    adcl $0, %edi
4403; X86-NEXT:    movl %ebx, %eax
4404; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4405; X86-NEXT:    mull %ebx
4406; X86-NEXT:    movl %edx, %ebp
4407; X86-NEXT:    addl %ecx, %eax
4408; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4409; X86-NEXT:    adcl %edi, %ebp
4410; X86-NEXT:    setb %cl
4411; X86-NEXT:    movl %esi, %eax
4412; X86-NEXT:    mull %ebx
4413; X86-NEXT:    addl %ebp, %eax
4414; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4415; X86-NEXT:    movzbl %cl, %eax
4416; X86-NEXT:    adcl %eax, %edx
4417; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4418; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4419; X86-NEXT:    movl %esi, %eax
4420; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4421; X86-NEXT:    mull %edi
4422; X86-NEXT:    movl %edx, %ecx
4423; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4424; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4425; X86-NEXT:    movl %ebp, %eax
4426; X86-NEXT:    mull %edi
4427; X86-NEXT:    movl %edx, %edi
4428; X86-NEXT:    movl %eax, %ebx
4429; X86-NEXT:    addl %ecx, %ebx
4430; X86-NEXT:    adcl $0, %edi
4431; X86-NEXT:    movl %esi, %eax
4432; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4433; X86-NEXT:    mull %esi
4434; X86-NEXT:    movl %edx, %ecx
4435; X86-NEXT:    addl %ebx, %eax
4436; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4437; X86-NEXT:    adcl %edi, %ecx
4438; X86-NEXT:    setb %bl
4439; X86-NEXT:    movl %ebp, %eax
4440; X86-NEXT:    movl %ebp, %edi
4441; X86-NEXT:    mull %esi
4442; X86-NEXT:    movl %eax, %ebp
4443; X86-NEXT:    addl %ecx, %ebp
4444; X86-NEXT:    movzbl %bl, %eax
4445; X86-NEXT:    adcl %eax, %edx
4446; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4447; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4448; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4449; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4450; X86-NEXT:    adcl $0, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4451; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4452; X86-NEXT:    movl %ebx, %eax
4453; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4454; X86-NEXT:    mull %ecx
4455; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4456; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4457; X86-NEXT:    movl %edi, %eax
4458; X86-NEXT:    mull %ecx
4459; X86-NEXT:    movl %edx, %ecx
4460; X86-NEXT:    movl %eax, %esi
4461; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4462; X86-NEXT:    adcl $0, %ecx
4463; X86-NEXT:    movl %ebx, %eax
4464; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4465; X86-NEXT:    mull %edi
4466; X86-NEXT:    movl %edx, %ebx
4467; X86-NEXT:    addl %esi, %eax
4468; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4469; X86-NEXT:    adcl %ecx, %ebx
4470; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4471; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4472; X86-NEXT:    mull %edi
4473; X86-NEXT:    movl %edx, %ecx
4474; X86-NEXT:    movl %eax, %esi
4475; X86-NEXT:    addl %ebx, %esi
4476; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4477; X86-NEXT:    adcl %eax, %ecx
4478; X86-NEXT:    addl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4479; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4480; X86-NEXT:    adcl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4481; X86-NEXT:    adcl $0, %esi
4482; X86-NEXT:    adcl $0, %ecx
4483; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4484; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4485; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4486; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4487; X86-NEXT:    movl %ebx, %eax
4488; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4489; X86-NEXT:    mull %edi
4490; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4491; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4492; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4493; X86-NEXT:    mull %edi
4494; X86-NEXT:    movl %edx, %edi
4495; X86-NEXT:    movl %eax, %ebp
4496; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4497; X86-NEXT:    adcl $0, %edi
4498; X86-NEXT:    movl %ebx, %eax
4499; X86-NEXT:    mull {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
4500; X86-NEXT:    movl %edx, %ebx
4501; X86-NEXT:    addl %ebp, %eax
4502; X86-NEXT:    movl %eax, %ebp
4503; X86-NEXT:    adcl %edi, %ebx
4504; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4505; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4506; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4507; X86-NEXT:    mull %edi
4508; X86-NEXT:    addl %ebx, %eax
4509; X86-NEXT:    movl %eax, %ebx
4510; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4511; X86-NEXT:    adcl %eax, %edx
4512; X86-NEXT:    addl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
4513; X86-NEXT:    adcl %ecx, %ebp
4514; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4515; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 1-byte Folded Reload
4516; X86-NEXT:    adcl %eax, %ebx
4517; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4518; X86-NEXT:    adcl $0, %edx
4519; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4520; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4521; X86-NEXT:    movl %edi, %esi
4522; X86-NEXT:    imull %eax, %esi
4523; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4524; X86-NEXT:    mull %ebx
4525; X86-NEXT:    movl %eax, %ebp
4526; X86-NEXT:    addl %esi, %edx
4527; X86-NEXT:    movl %ebx, %eax
4528; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4529; X86-NEXT:    addl %edx, %eax
4530; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4531; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4532; X86-NEXT:    movl %eax, %esi
4533; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4534; X86-NEXT:    imull %ebx, %esi
4535; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4536; X86-NEXT:    mull %edi
4537; X86-NEXT:    movl %eax, %ecx
4538; X86-NEXT:    addl %esi, %edx
4539; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4540; X86-NEXT:    imull %edi, %esi
4541; X86-NEXT:    addl %edx, %esi
4542; X86-NEXT:    addl %ebp, %ecx
4543; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4544; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4545; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4546; X86-NEXT:    movl %edi, %eax
4547; X86-NEXT:    movl %edi, %ebp
4548; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4549; X86-NEXT:    mull %ecx
4550; X86-NEXT:    movl %edx, %edi
4551; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4552; X86-NEXT:    movl %ebx, %eax
4553; X86-NEXT:    mull %ecx
4554; X86-NEXT:    movl %edx, %ecx
4555; X86-NEXT:    movl %eax, %esi
4556; X86-NEXT:    addl %edi, %esi
4557; X86-NEXT:    adcl $0, %ecx
4558; X86-NEXT:    movl %ebp, %eax
4559; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4560; X86-NEXT:    mull %edi
4561; X86-NEXT:    movl %edx, %ebx
4562; X86-NEXT:    addl %esi, %eax
4563; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4564; X86-NEXT:    adcl %ecx, %ebx
4565; X86-NEXT:    setb %cl
4566; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4567; X86-NEXT:    mull %edi
4568; X86-NEXT:    addl %ebx, %eax
4569; X86-NEXT:    movzbl %cl, %ecx
4570; X86-NEXT:    adcl %ecx, %edx
4571; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4572; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4573; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4574; X86-NEXT:    movl %edx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4575; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4576; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4577; X86-NEXT:    imull %esi, %ecx
4578; X86-NEXT:    movl %esi, %eax
4579; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4580; X86-NEXT:    mull %ebx
4581; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4582; X86-NEXT:    addl %ecx, %edx
4583; X86-NEXT:    imull {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4584; X86-NEXT:    addl %edx, %ebx
4585; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4586; X86-NEXT:    movl %eax, %ecx
4587; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4588; X86-NEXT:    imull %edi, %ecx
4589; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4590; X86-NEXT:    mull %ebp
4591; X86-NEXT:    addl %ecx, %edx
4592; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4593; X86-NEXT:    imull %ebp, %ecx
4594; X86-NEXT:    addl %edx, %ecx
4595; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4596; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4597; X86-NEXT:    adcl %ebx, %ecx
4598; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4599; X86-NEXT:    movl %ebp, %eax
4600; X86-NEXT:    mull %esi
4601; X86-NEXT:    movl %edx, %ecx
4602; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4603; X86-NEXT:    movl %edi, %eax
4604; X86-NEXT:    mull %esi
4605; X86-NEXT:    movl %edx, %edi
4606; X86-NEXT:    movl %eax, %esi
4607; X86-NEXT:    addl %ecx, %esi
4608; X86-NEXT:    adcl $0, %edi
4609; X86-NEXT:    movl %ebp, %eax
4610; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4611; X86-NEXT:    mull %ebx
4612; X86-NEXT:    movl %edx, %ecx
4613; X86-NEXT:    movl %eax, %ebp
4614; X86-NEXT:    addl %esi, %ebp
4615; X86-NEXT:    adcl %edi, %ecx
4616; X86-NEXT:    setb {{[-0-9]+}}(%e{{[sb]}}p) # 1-byte Folded Spill
4617; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4618; X86-NEXT:    mull %ebx
4619; X86-NEXT:    movl %edx, %esi
4620; X86-NEXT:    movl %eax, %edx
4621; X86-NEXT:    addl %ecx, %edx
4622; X86-NEXT:    movzbl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 1-byte Folded Reload
4623; X86-NEXT:    adcl %ecx, %esi
4624; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4625; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4626; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4627; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4628; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4629; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4630; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4631; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4632; X86-NEXT:    movl %ecx, %eax
4633; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4634; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4635; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4636; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4637; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4638; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4639; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4640; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4641; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4642; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4643; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4644; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4645; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4646; X86-NEXT:    movl %eax, %ebp
4647; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4648; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4649; X86-NEXT:    adcl (%esp), %eax # 4-byte Folded Reload
4650; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4651; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4652; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4653; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4654; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4655; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4656; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4657; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4658; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4659; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4660; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4661; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4662; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4663; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4664; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4665; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4666; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4667; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4668; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4669; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4670; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4671; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4672; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4673; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4674; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4675; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4676; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4677; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4678; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4679; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4680; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4681; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4682; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4683; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4684; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4685; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4686; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4687; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4688; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4689; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4690; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4691; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4692; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4693; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4694; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4695; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4696; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4697; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4698; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4699; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4700; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4701; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4702; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4703; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4704; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4705; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4706; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4707; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4708; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4709; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4710; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4711; X86-NEXT:    addl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4712; X86-NEXT:    movl %edi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4713; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4714; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4715; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Folded Reload
4716; X86-NEXT:    movl %esi, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4717; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4718; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4719; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4720; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4721; X86-NEXT:    movl %ebp, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4722; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4723; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4724; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4725; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Reload
4726; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebp # 4-byte Folded Reload
4727; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4728; X86-NEXT:    movl %ebx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4729; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Reload
4730; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ebx # 4-byte Folded Reload
4731; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Reload
4732; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %ecx # 4-byte Folded Reload
4733; X86-NEXT:    movl %ecx, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4734; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4735; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4736; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4737; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4738; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4739; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4740; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4741; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4742; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4743; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Reload
4744; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edi # 4-byte Folded Reload
4745; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %edx # 4-byte Folded Reload
4746; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4747; X86-NEXT:    adcl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Folded Reload
4748; X86-NEXT:    movl %eax, {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Spill
4749; X86-NEXT:    movl {{[0-9]+}}(%esp), %ecx
4750; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4751; X86-NEXT:    movl %esi, (%ecx)
4752; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4753; X86-NEXT:    movl %esi, 4(%ecx)
4754; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4755; X86-NEXT:    movl %esi, 8(%ecx)
4756; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4757; X86-NEXT:    movl %esi, 12(%ecx)
4758; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4759; X86-NEXT:    movl %esi, 16(%ecx)
4760; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4761; X86-NEXT:    movl %esi, 20(%ecx)
4762; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4763; X86-NEXT:    movl %esi, 24(%ecx)
4764; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4765; X86-NEXT:    movl %esi, 28(%ecx)
4766; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4767; X86-NEXT:    movl %esi, 32(%ecx)
4768; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4769; X86-NEXT:    movl %esi, 36(%ecx)
4770; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4771; X86-NEXT:    movl %esi, 40(%ecx)
4772; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4773; X86-NEXT:    movl %esi, 44(%ecx)
4774; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4775; X86-NEXT:    movl %esi, 48(%ecx)
4776; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4777; X86-NEXT:    movl %esi, 52(%ecx)
4778; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4779; X86-NEXT:    movl %esi, 56(%ecx)
4780; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %esi # 4-byte Reload
4781; X86-NEXT:    movl %esi, 60(%ecx)
4782; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4783; X86-NEXT:    movl %eax, 64(%ecx)
4784; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4785; X86-NEXT:    movl %eax, 68(%ecx)
4786; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4787; X86-NEXT:    movl %eax, 72(%ecx)
4788; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4789; X86-NEXT:    movl %eax, 76(%ecx)
4790; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4791; X86-NEXT:    movl %eax, 80(%ecx)
4792; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4793; X86-NEXT:    movl %eax, 84(%ecx)
4794; X86-NEXT:    movl %ebp, 88(%ecx)
4795; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4796; X86-NEXT:    movl %eax, 92(%ecx)
4797; X86-NEXT:    movl %ebx, 96(%ecx)
4798; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4799; X86-NEXT:    movl %eax, 100(%ecx)
4800; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4801; X86-NEXT:    movl %eax, 104(%ecx)
4802; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4803; X86-NEXT:    movl %eax, 108(%ecx)
4804; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4805; X86-NEXT:    movl %eax, 112(%ecx)
4806; X86-NEXT:    movl %edi, 116(%ecx)
4807; X86-NEXT:    movl %edx, 120(%ecx)
4808; X86-NEXT:    movl {{[-0-9]+}}(%e{{[sb]}}p), %eax # 4-byte Reload
4809; X86-NEXT:    movl %eax, 124(%ecx)
4810; X86-NEXT:    addl $400, %esp # imm = 0x190
4811; X86-NEXT:    popl %esi
4812; X86-NEXT:    popl %edi
4813; X86-NEXT:    popl %ebx
4814; X86-NEXT:    popl %ebp
4815; X86-NEXT:    retl
4816;
4817; X64-LABEL: test_1024:
4818; X64:       # %bb.0:
4819; X64-NEXT:    pushq %rbp
4820; X64-NEXT:    pushq %r15
4821; X64-NEXT:    pushq %r14
4822; X64-NEXT:    pushq %r13
4823; X64-NEXT:    pushq %r12
4824; X64-NEXT:    pushq %rbx
4825; X64-NEXT:    subq $240, %rsp
4826; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4827; X64-NEXT:    movq %rdi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4828; X64-NEXT:    movq 40(%rdi), %rbx
4829; X64-NEXT:    movq 32(%rdi), %r12
4830; X64-NEXT:    movq 56(%rdi), %r15
4831; X64-NEXT:    movq 48(%rdi), %r10
4832; X64-NEXT:    movq (%rsi), %r11
4833; X64-NEXT:    movq 8(%rsi), %r14
4834; X64-NEXT:    movq %rsi, %r13
4835; X64-NEXT:    movq %r10, %rax
4836; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4837; X64-NEXT:    mulq %r11
4838; X64-NEXT:    movq %rdx, %rcx
4839; X64-NEXT:    movq %rax, %rdi
4840; X64-NEXT:    movq %r15, %rax
4841; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4842; X64-NEXT:    mulq %r11
4843; X64-NEXT:    movq %rdx, %rsi
4844; X64-NEXT:    movq %rax, %r9
4845; X64-NEXT:    addq %rcx, %r9
4846; X64-NEXT:    adcq $0, %rsi
4847; X64-NEXT:    movq %r10, %rax
4848; X64-NEXT:    mulq %r14
4849; X64-NEXT:    movq %rdx, %r10
4850; X64-NEXT:    movq %rax, %r8
4851; X64-NEXT:    addq %r9, %r8
4852; X64-NEXT:    adcq %rsi, %r10
4853; X64-NEXT:    setb %al
4854; X64-NEXT:    movzbl %al, %r9d
4855; X64-NEXT:    movq %r15, %rax
4856; X64-NEXT:    mulq %r14
4857; X64-NEXT:    movq %r14, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4858; X64-NEXT:    movq %rdx, %rcx
4859; X64-NEXT:    movq %rax, %rsi
4860; X64-NEXT:    addq %r10, %rsi
4861; X64-NEXT:    adcq %r9, %rcx
4862; X64-NEXT:    movq %r12, %rax
4863; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4864; X64-NEXT:    mulq %r11
4865; X64-NEXT:    movq %rdx, %r9
4866; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4867; X64-NEXT:    movq %rbx, %rax
4868; X64-NEXT:    mulq %r11
4869; X64-NEXT:    movq %rdx, %r10
4870; X64-NEXT:    movq %rax, %r11
4871; X64-NEXT:    addq %r9, %r11
4872; X64-NEXT:    adcq $0, %r10
4873; X64-NEXT:    movq %r12, %rax
4874; X64-NEXT:    mulq %r14
4875; X64-NEXT:    movq %rdx, %r9
4876; X64-NEXT:    addq %r11, %rax
4877; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4878; X64-NEXT:    adcq %r10, %r9
4879; X64-NEXT:    setb %r10b
4880; X64-NEXT:    movq %rbx, %r11
4881; X64-NEXT:    movq %rbx, %rax
4882; X64-NEXT:    mulq %r14
4883; X64-NEXT:    movq %rdx, %rbx
4884; X64-NEXT:    movq %rax, %r15
4885; X64-NEXT:    addq %r9, %r15
4886; X64-NEXT:    movzbl %r10b, %eax
4887; X64-NEXT:    adcq %rax, %rbx
4888; X64-NEXT:    addq %rdi, %r15
4889; X64-NEXT:    adcq %r8, %rbx
4890; X64-NEXT:    adcq $0, %rsi
4891; X64-NEXT:    adcq $0, %rcx
4892; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4893; X64-NEXT:    movq 16(%r13), %r8
4894; X64-NEXT:    movq %r12, %r10
4895; X64-NEXT:    movq %r12, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4896; X64-NEXT:    movq %r12, %rax
4897; X64-NEXT:    mulq %r8
4898; X64-NEXT:    movq %rdx, %rdi
4899; X64-NEXT:    movq %rax, %r14
4900; X64-NEXT:    movq %r11, %rax
4901; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4902; X64-NEXT:    mulq %r8
4903; X64-NEXT:    movq %rdx, %r9
4904; X64-NEXT:    movq %rax, %r12
4905; X64-NEXT:    addq %rdi, %r12
4906; X64-NEXT:    adcq $0, %r9
4907; X64-NEXT:    movq 24(%r13), %rbp
4908; X64-NEXT:    movq %r10, %rax
4909; X64-NEXT:    mulq %rbp
4910; X64-NEXT:    movq %rdx, %r13
4911; X64-NEXT:    addq %r12, %rax
4912; X64-NEXT:    movq %rax, %r12
4913; X64-NEXT:    adcq %r9, %r13
4914; X64-NEXT:    setb %r10b
4915; X64-NEXT:    movq %r11, %rax
4916; X64-NEXT:    mulq %rbp
4917; X64-NEXT:    movq %rdx, %rdi
4918; X64-NEXT:    movq %rax, %r9
4919; X64-NEXT:    addq %r13, %r9
4920; X64-NEXT:    movzbl %r10b, %eax
4921; X64-NEXT:    adcq %rax, %rdi
4922; X64-NEXT:    addq %r15, %r14
4923; X64-NEXT:    movq %r14, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4924; X64-NEXT:    adcq %rbx, %r12
4925; X64-NEXT:    movq %r12, (%rsp) # 8-byte Spill
4926; X64-NEXT:    adcq $0, %r9
4927; X64-NEXT:    adcq $0, %rdi
4928; X64-NEXT:    addq %rsi, %r9
4929; X64-NEXT:    adcq %rcx, %rdi
4930; X64-NEXT:    setb %r10b
4931; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Reload
4932; X64-NEXT:    movq %r15, %rax
4933; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4934; X64-NEXT:    mulq %r8
4935; X64-NEXT:    movq %rdx, %rcx
4936; X64-NEXT:    movq %rax, %r11
4937; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
4938; X64-NEXT:    movq %r14, %rax
4939; X64-NEXT:    mulq %r8
4940; X64-NEXT:    movq %rdx, %rsi
4941; X64-NEXT:    movq %rax, %rbx
4942; X64-NEXT:    addq %rcx, %rbx
4943; X64-NEXT:    adcq $0, %rsi
4944; X64-NEXT:    movq %r15, %rax
4945; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4946; X64-NEXT:    mulq %rbp
4947; X64-NEXT:    movq %rdx, %rcx
4948; X64-NEXT:    addq %rbx, %rax
4949; X64-NEXT:    movq %rax, %rbx
4950; X64-NEXT:    adcq %rsi, %rcx
4951; X64-NEXT:    setb %sil
4952; X64-NEXT:    movq %r14, %rax
4953; X64-NEXT:    mulq %rbp
4954; X64-NEXT:    addq %rcx, %rax
4955; X64-NEXT:    movq %rax, %rcx
4956; X64-NEXT:    movzbl %sil, %eax
4957; X64-NEXT:    adcq %rax, %rdx
4958; X64-NEXT:    addq %r9, %r11
4959; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4960; X64-NEXT:    adcq %rdi, %rbx
4961; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4962; X64-NEXT:    movzbl %r10b, %eax
4963; X64-NEXT:    adcq %rax, %rcx
4964; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4965; X64-NEXT:    adcq $0, %rdx
4966; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4967; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
4968; X64-NEXT:    movq 16(%r14), %r11
4969; X64-NEXT:    movq %r11, %rax
4970; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
4971; X64-NEXT:    mulq %r10
4972; X64-NEXT:    movq %rax, %r9
4973; X64-NEXT:    movq %rdx, %rcx
4974; X64-NEXT:    movq 24(%r14), %r8
4975; X64-NEXT:    movq %r8, %rax
4976; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
4977; X64-NEXT:    mulq %r10
4978; X64-NEXT:    movq %rdx, %rsi
4979; X64-NEXT:    movq %rax, %rdi
4980; X64-NEXT:    addq %rcx, %rdi
4981; X64-NEXT:    adcq $0, %rsi
4982; X64-NEXT:    movq %r11, %rax
4983; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Reload
4984; X64-NEXT:    mulq %r13
4985; X64-NEXT:    movq %rdx, %r15
4986; X64-NEXT:    movq %rax, %rbx
4987; X64-NEXT:    addq %rdi, %rbx
4988; X64-NEXT:    adcq %rsi, %r15
4989; X64-NEXT:    setb %sil
4990; X64-NEXT:    movq %r8, %rax
4991; X64-NEXT:    mulq %r13
4992; X64-NEXT:    movq %rdx, %rcx
4993; X64-NEXT:    movq %rax, %rdi
4994; X64-NEXT:    addq %r15, %rdi
4995; X64-NEXT:    movzbl %sil, %eax
4996; X64-NEXT:    adcq %rax, %rcx
4997; X64-NEXT:    movq (%r14), %rbp
4998; X64-NEXT:    movq %rbp, %rax
4999; X64-NEXT:    mulq %r10
5000; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5001; X64-NEXT:    movq %rdx, %rsi
5002; X64-NEXT:    movq 8(%r14), %r14
5003; X64-NEXT:    movq %r14, %rax
5004; X64-NEXT:    mulq %r10
5005; X64-NEXT:    movq %rdx, %r15
5006; X64-NEXT:    movq %rax, %r12
5007; X64-NEXT:    addq %rsi, %r12
5008; X64-NEXT:    adcq $0, %r15
5009; X64-NEXT:    movq %rbp, %rax
5010; X64-NEXT:    mulq %r13
5011; X64-NEXT:    movq %rdx, %rsi
5012; X64-NEXT:    addq %r12, %rax
5013; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5014; X64-NEXT:    adcq %r15, %rsi
5015; X64-NEXT:    setb %r10b
5016; X64-NEXT:    movq %r14, %r15
5017; X64-NEXT:    movq %r14, %rax
5018; X64-NEXT:    mulq %r13
5019; X64-NEXT:    movq %rdx, %r12
5020; X64-NEXT:    movq %rax, %r13
5021; X64-NEXT:    addq %rsi, %r13
5022; X64-NEXT:    movzbl %r10b, %eax
5023; X64-NEXT:    adcq %rax, %r12
5024; X64-NEXT:    addq %r9, %r13
5025; X64-NEXT:    adcq %rbx, %r12
5026; X64-NEXT:    adcq $0, %rdi
5027; X64-NEXT:    adcq $0, %rcx
5028; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5029; X64-NEXT:    movq %rbp, %rax
5030; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5031; X64-NEXT:    mulq %r8
5032; X64-NEXT:    movq %rdx, %rsi
5033; X64-NEXT:    movq %rax, %r10
5034; X64-NEXT:    movq %r14, %rax
5035; X64-NEXT:    movq %r14, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5036; X64-NEXT:    mulq %r8
5037; X64-NEXT:    movq %rdx, %r9
5038; X64-NEXT:    movq %rax, %rbx
5039; X64-NEXT:    addq %rsi, %rbx
5040; X64-NEXT:    adcq $0, %r9
5041; X64-NEXT:    movq %rbp, %rax
5042; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5043; X64-NEXT:    mulq %r14
5044; X64-NEXT:    movq %rdx, %rbp
5045; X64-NEXT:    addq %rbx, %rax
5046; X64-NEXT:    movq %rax, %rbx
5047; X64-NEXT:    adcq %r9, %rbp
5048; X64-NEXT:    setb %r9b
5049; X64-NEXT:    movq %r15, %rax
5050; X64-NEXT:    mulq %r14
5051; X64-NEXT:    movq %rdx, %r15
5052; X64-NEXT:    movq %rax, %rsi
5053; X64-NEXT:    addq %rbp, %rsi
5054; X64-NEXT:    movzbl %r9b, %eax
5055; X64-NEXT:    adcq %rax, %r15
5056; X64-NEXT:    addq %r13, %r10
5057; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5058; X64-NEXT:    adcq %r12, %rbx
5059; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5060; X64-NEXT:    adcq $0, %rsi
5061; X64-NEXT:    adcq $0, %r15
5062; X64-NEXT:    addq %rdi, %rsi
5063; X64-NEXT:    adcq %rcx, %r15
5064; X64-NEXT:    setb %r10b
5065; X64-NEXT:    movq %r11, %rax
5066; X64-NEXT:    movq %r8, %rdi
5067; X64-NEXT:    mulq %r8
5068; X64-NEXT:    movq %rdx, %rcx
5069; X64-NEXT:    movq %rax, %rbx
5070; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5071; X64-NEXT:    movq %r8, %rax
5072; X64-NEXT:    mulq %rdi
5073; X64-NEXT:    movq %rdx, %rdi
5074; X64-NEXT:    movq %rax, %r12
5075; X64-NEXT:    addq %rcx, %r12
5076; X64-NEXT:    adcq $0, %rdi
5077; X64-NEXT:    movq %r11, %rax
5078; X64-NEXT:    movq %r11, %rbp
5079; X64-NEXT:    mulq %r14
5080; X64-NEXT:    movq %rdx, %r13
5081; X64-NEXT:    movq %rax, %r11
5082; X64-NEXT:    addq %r12, %r11
5083; X64-NEXT:    adcq %rdi, %r13
5084; X64-NEXT:    setb %dil
5085; X64-NEXT:    movq %r8, %rax
5086; X64-NEXT:    movq %r8, %r9
5087; X64-NEXT:    mulq %r14
5088; X64-NEXT:    addq %r13, %rax
5089; X64-NEXT:    movzbl %dil, %ecx
5090; X64-NEXT:    adcq %rcx, %rdx
5091; X64-NEXT:    addq %rsi, %rbx
5092; X64-NEXT:    adcq %r15, %r11
5093; X64-NEXT:    movzbl %r10b, %ecx
5094; X64-NEXT:    adcq %rcx, %rax
5095; X64-NEXT:    adcq $0, %rdx
5096; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Folded Reload
5097; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5098; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Folded Reload
5099; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5100; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5101; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5102; X64-NEXT:    adcq (%rsp), %rdx # 8-byte Folded Reload
5103; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5104; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5105; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5106; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5107; X64-NEXT:    adcq $0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5108; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5109; X64-NEXT:    movq 32(%r8), %rcx
5110; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5111; X64-NEXT:    movq %rbp, %rax
5112; X64-NEXT:    mulq %rcx
5113; X64-NEXT:    movq %rdx, %rsi
5114; X64-NEXT:    movq %rax, %r12
5115; X64-NEXT:    movq %r9, %rax
5116; X64-NEXT:    mulq %rcx
5117; X64-NEXT:    movq %rdx, %rdi
5118; X64-NEXT:    movq %rax, %r11
5119; X64-NEXT:    addq %rsi, %r11
5120; X64-NEXT:    adcq $0, %rdi
5121; X64-NEXT:    movq 40(%r8), %rbx
5122; X64-NEXT:    movq %rbp, %rax
5123; X64-NEXT:    mulq %rbx
5124; X64-NEXT:    movq %rdx, %r15
5125; X64-NEXT:    movq %rax, %rsi
5126; X64-NEXT:    addq %r11, %rsi
5127; X64-NEXT:    adcq %rdi, %r15
5128; X64-NEXT:    setb %r10b
5129; X64-NEXT:    movq %r9, %rax
5130; X64-NEXT:    mulq %rbx
5131; X64-NEXT:    movq %rdx, %rdi
5132; X64-NEXT:    movq %rax, %r11
5133; X64-NEXT:    addq %r15, %r11
5134; X64-NEXT:    movzbl %r10b, %eax
5135; X64-NEXT:    adcq %rax, %rdi
5136; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5137; X64-NEXT:    movq %r9, %rax
5138; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5139; X64-NEXT:    mulq %rcx
5140; X64-NEXT:    movq %rdx, %r15
5141; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5142; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5143; X64-NEXT:    movq %r14, %rax
5144; X64-NEXT:    mulq %rcx
5145; X64-NEXT:    movq %rdx, %r13
5146; X64-NEXT:    movq %rax, %rbp
5147; X64-NEXT:    addq %r15, %rbp
5148; X64-NEXT:    adcq $0, %r13
5149; X64-NEXT:    movq %r9, %rax
5150; X64-NEXT:    movq %rbx, %rcx
5151; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5152; X64-NEXT:    mulq %rbx
5153; X64-NEXT:    movq %rdx, %r10
5154; X64-NEXT:    addq %rbp, %rax
5155; X64-NEXT:    movq %rax, (%rsp) # 8-byte Spill
5156; X64-NEXT:    adcq %r13, %r10
5157; X64-NEXT:    setb %bl
5158; X64-NEXT:    movq %r14, %rax
5159; X64-NEXT:    mulq %rcx
5160; X64-NEXT:    movq %rdx, %r15
5161; X64-NEXT:    movq %rax, %rbp
5162; X64-NEXT:    addq %r10, %rbp
5163; X64-NEXT:    movzbl %bl, %eax
5164; X64-NEXT:    adcq %rax, %r15
5165; X64-NEXT:    addq %r12, %rbp
5166; X64-NEXT:    adcq %rsi, %r15
5167; X64-NEXT:    adcq $0, %r11
5168; X64-NEXT:    adcq $0, %rdi
5169; X64-NEXT:    movq 48(%r8), %rcx
5170; X64-NEXT:    movq %r9, %rax
5171; X64-NEXT:    mulq %rcx
5172; X64-NEXT:    movq %rdx, %rsi
5173; X64-NEXT:    movq %rax, %rbx
5174; X64-NEXT:    movq %r14, %rax
5175; X64-NEXT:    movq %r14, %r12
5176; X64-NEXT:    mulq %rcx
5177; X64-NEXT:    movq %rdx, %r10
5178; X64-NEXT:    movq %rax, %r13
5179; X64-NEXT:    addq %rsi, %r13
5180; X64-NEXT:    adcq $0, %r10
5181; X64-NEXT:    movq 56(%r8), %rsi
5182; X64-NEXT:    movq %r9, %rax
5183; X64-NEXT:    mulq %rsi
5184; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5185; X64-NEXT:    movq %rdx, %r14
5186; X64-NEXT:    movq %rax, %r9
5187; X64-NEXT:    addq %r13, %r9
5188; X64-NEXT:    adcq %r10, %r14
5189; X64-NEXT:    setb %r8b
5190; X64-NEXT:    movq %r12, %rax
5191; X64-NEXT:    mulq %rsi
5192; X64-NEXT:    movq %rdx, %rsi
5193; X64-NEXT:    movq %rax, %r13
5194; X64-NEXT:    addq %r14, %r13
5195; X64-NEXT:    movzbl %r8b, %eax
5196; X64-NEXT:    adcq %rax, %rsi
5197; X64-NEXT:    addq %rbp, %rbx
5198; X64-NEXT:    adcq %r15, %r9
5199; X64-NEXT:    adcq $0, %r13
5200; X64-NEXT:    adcq $0, %rsi
5201; X64-NEXT:    addq %r11, %r13
5202; X64-NEXT:    adcq %rdi, %rsi
5203; X64-NEXT:    setb %r11b
5204; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5205; X64-NEXT:    movq %r8, %rax
5206; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5207; X64-NEXT:    mulq %rcx
5208; X64-NEXT:    movq %rdx, %rdi
5209; X64-NEXT:    movq %rax, %r12
5210; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Reload
5211; X64-NEXT:    movq %r15, %rax
5212; X64-NEXT:    mulq %rcx
5213; X64-NEXT:    movq %rdx, %r10
5214; X64-NEXT:    movq %rax, %r14
5215; X64-NEXT:    addq %rdi, %r14
5216; X64-NEXT:    adcq $0, %r10
5217; X64-NEXT:    movq %r8, %rax
5218; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5219; X64-NEXT:    mulq %rcx
5220; X64-NEXT:    movq %rdx, %r8
5221; X64-NEXT:    movq %rax, %rbp
5222; X64-NEXT:    addq %r14, %rbp
5223; X64-NEXT:    adcq %r10, %r8
5224; X64-NEXT:    setb %r10b
5225; X64-NEXT:    movq %r15, %rax
5226; X64-NEXT:    mulq %rcx
5227; X64-NEXT:    movq %rdx, %r15
5228; X64-NEXT:    movq %rax, %rdi
5229; X64-NEXT:    addq %r8, %rdi
5230; X64-NEXT:    movzbl %r10b, %eax
5231; X64-NEXT:    adcq %rax, %r15
5232; X64-NEXT:    addq %r13, %r12
5233; X64-NEXT:    adcq %rsi, %rbp
5234; X64-NEXT:    movzbl %r11b, %eax
5235; X64-NEXT:    adcq %rax, %rdi
5236; X64-NEXT:    adcq $0, %r15
5237; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5238; X64-NEXT:    addq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5239; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5240; X64-NEXT:    adcq %rax, (%rsp) # 8-byte Folded Spill
5241; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Folded Reload
5242; X64-NEXT:    movq %rbx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5243; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Folded Reload
5244; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5245; X64-NEXT:    adcq $0, %r12
5246; X64-NEXT:    adcq $0, %rbp
5247; X64-NEXT:    adcq $0, %rdi
5248; X64-NEXT:    adcq $0, %r15
5249; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r12 # 8-byte Folded Reload
5250; X64-NEXT:    movq %r12, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5251; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Folded Reload
5252; X64-NEXT:    movq %rbp, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5253; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Folded Reload
5254; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Folded Reload
5255; X64-NEXT:    setb {{[-0-9]+}}(%r{{[sb]}}p) # 1-byte Folded Spill
5256; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5257; X64-NEXT:    movq %r10, %rax
5258; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5259; X64-NEXT:    mulq %r14
5260; X64-NEXT:    movq %rdx, %rcx
5261; X64-NEXT:    movq %rax, %rbp
5262; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5263; X64-NEXT:    movq %r9, %rax
5264; X64-NEXT:    mulq %r14
5265; X64-NEXT:    movq %rdx, %rsi
5266; X64-NEXT:    movq %rax, %r8
5267; X64-NEXT:    addq %rcx, %r8
5268; X64-NEXT:    adcq $0, %rsi
5269; X64-NEXT:    movq %r10, %rax
5270; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Reload
5271; X64-NEXT:    mulq %r11
5272; X64-NEXT:    movq %rdx, %r10
5273; X64-NEXT:    movq %rax, %rbx
5274; X64-NEXT:    addq %r8, %rbx
5275; X64-NEXT:    adcq %rsi, %r10
5276; X64-NEXT:    setb %r8b
5277; X64-NEXT:    movq %r9, %rax
5278; X64-NEXT:    mulq %r11
5279; X64-NEXT:    movq %rdx, %rcx
5280; X64-NEXT:    movq %rax, %rsi
5281; X64-NEXT:    addq %r10, %rsi
5282; X64-NEXT:    movzbl %r8b, %eax
5283; X64-NEXT:    adcq %rax, %rcx
5284; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5285; X64-NEXT:    movq %r9, %rax
5286; X64-NEXT:    mulq %r14
5287; X64-NEXT:    movq %rdx, %r8
5288; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5289; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r12 # 8-byte Reload
5290; X64-NEXT:    movq %r12, %rax
5291; X64-NEXT:    mulq %r14
5292; X64-NEXT:    movq %rdx, %r10
5293; X64-NEXT:    movq %rax, %r14
5294; X64-NEXT:    addq %r8, %r14
5295; X64-NEXT:    adcq $0, %r10
5296; X64-NEXT:    movq %r9, %rax
5297; X64-NEXT:    movq %r11, %r13
5298; X64-NEXT:    mulq %r11
5299; X64-NEXT:    movq %rdx, %r8
5300; X64-NEXT:    addq %r14, %rax
5301; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5302; X64-NEXT:    adcq %r10, %r8
5303; X64-NEXT:    setb %r10b
5304; X64-NEXT:    movq %r12, %rax
5305; X64-NEXT:    movq %r12, %r11
5306; X64-NEXT:    mulq %r13
5307; X64-NEXT:    movq %rdx, %r12
5308; X64-NEXT:    movq %rax, %r13
5309; X64-NEXT:    addq %r8, %r13
5310; X64-NEXT:    movzbl %r10b, %eax
5311; X64-NEXT:    adcq %rax, %r12
5312; X64-NEXT:    addq %rbp, %r13
5313; X64-NEXT:    adcq %rbx, %r12
5314; X64-NEXT:    adcq $0, %rsi
5315; X64-NEXT:    adcq $0, %rcx
5316; X64-NEXT:    movq %r9, %rax
5317; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5318; X64-NEXT:    mulq %r10
5319; X64-NEXT:    movq %rdx, %r8
5320; X64-NEXT:    movq %rax, %r14
5321; X64-NEXT:    movq %r11, %rax
5322; X64-NEXT:    movq %r11, %rbx
5323; X64-NEXT:    mulq %r10
5324; X64-NEXT:    movq %rdx, %rbp
5325; X64-NEXT:    movq %rax, %r10
5326; X64-NEXT:    addq %r8, %r10
5327; X64-NEXT:    adcq $0, %rbp
5328; X64-NEXT:    movq %r9, %rax
5329; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5330; X64-NEXT:    mulq %r9
5331; X64-NEXT:    movq %rdx, %r8
5332; X64-NEXT:    movq %rax, %r11
5333; X64-NEXT:    addq %r10, %r11
5334; X64-NEXT:    adcq %rbp, %r8
5335; X64-NEXT:    setb %r10b
5336; X64-NEXT:    movq %rbx, %rax
5337; X64-NEXT:    mulq %r9
5338; X64-NEXT:    movq %r9, %rbp
5339; X64-NEXT:    movq %rdx, %r9
5340; X64-NEXT:    movq %rax, %rbx
5341; X64-NEXT:    addq %r8, %rbx
5342; X64-NEXT:    movzbl %r10b, %eax
5343; X64-NEXT:    adcq %rax, %r9
5344; X64-NEXT:    addq %r13, %r14
5345; X64-NEXT:    movq %r14, %r13
5346; X64-NEXT:    adcq %r12, %r11
5347; X64-NEXT:    adcq $0, %rbx
5348; X64-NEXT:    adcq $0, %r9
5349; X64-NEXT:    addq %rsi, %rbx
5350; X64-NEXT:    adcq %rcx, %r9
5351; X64-NEXT:    setb {{[-0-9]+}}(%r{{[sb]}}p) # 1-byte Folded Spill
5352; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5353; X64-NEXT:    movq %r14, %rax
5354; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5355; X64-NEXT:    mulq %rsi
5356; X64-NEXT:    movq %rdx, %rcx
5357; X64-NEXT:    movq %rax, %r10
5358; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r12 # 8-byte Reload
5359; X64-NEXT:    movq %r12, %rax
5360; X64-NEXT:    mulq %rsi
5361; X64-NEXT:    movq %rdx, %rsi
5362; X64-NEXT:    movq %rax, %r8
5363; X64-NEXT:    addq %rcx, %r8
5364; X64-NEXT:    adcq $0, %rsi
5365; X64-NEXT:    movq %r14, %rax
5366; X64-NEXT:    mulq %rbp
5367; X64-NEXT:    movq %rdx, %rcx
5368; X64-NEXT:    addq %r8, %rax
5369; X64-NEXT:    movq %rax, %r8
5370; X64-NEXT:    adcq %rsi, %rcx
5371; X64-NEXT:    setb %sil
5372; X64-NEXT:    movq %r12, %rax
5373; X64-NEXT:    mulq %rbp
5374; X64-NEXT:    addq %rcx, %rax
5375; X64-NEXT:    movq %rax, %rcx
5376; X64-NEXT:    movzbl %sil, %eax
5377; X64-NEXT:    adcq %rax, %rdx
5378; X64-NEXT:    addq %rbx, %r10
5379; X64-NEXT:    adcq %r9, %r8
5380; X64-NEXT:    movzbl {{[-0-9]+}}(%r{{[sb]}}p), %eax # 1-byte Folded Reload
5381; X64-NEXT:    adcq %rax, %rcx
5382; X64-NEXT:    adcq $0, %rdx
5383; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5384; X64-NEXT:    addq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5385; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5386; X64-NEXT:    adcq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Folded Spill
5387; X64-NEXT:    adcq %rdi, %r13
5388; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5389; X64-NEXT:    adcq %r15, %r11
5390; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5391; X64-NEXT:    movzbl {{[-0-9]+}}(%r{{[sb]}}p), %eax # 1-byte Folded Reload
5392; X64-NEXT:    adcq %rax, %r10
5393; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5394; X64-NEXT:    adcq $0, %r8
5395; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5396; X64-NEXT:    adcq $0, %rcx
5397; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5398; X64-NEXT:    adcq $0, %rdx
5399; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5400; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Reload
5401; X64-NEXT:    movq 64(%r13), %r15
5402; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5403; X64-NEXT:    movq %rcx, %rax
5404; X64-NEXT:    mulq %r15
5405; X64-NEXT:    movq %rdx, %rsi
5406; X64-NEXT:    movq %rax, %r11
5407; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5408; X64-NEXT:    movq %r14, %rax
5409; X64-NEXT:    mulq %r15
5410; X64-NEXT:    movq %rdx, %rdi
5411; X64-NEXT:    movq %rax, %r8
5412; X64-NEXT:    addq %rsi, %r8
5413; X64-NEXT:    adcq $0, %rdi
5414; X64-NEXT:    movq 72(%r13), %rsi
5415; X64-NEXT:    movq %rcx, %rax
5416; X64-NEXT:    mulq %rsi
5417; X64-NEXT:    movq %rdx, %r10
5418; X64-NEXT:    movq %rax, %rbx
5419; X64-NEXT:    addq %r8, %rbx
5420; X64-NEXT:    adcq %rdi, %r10
5421; X64-NEXT:    setb %r8b
5422; X64-NEXT:    movq %r14, %rax
5423; X64-NEXT:    mulq %rsi
5424; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5425; X64-NEXT:    movq %rdx, %rdi
5426; X64-NEXT:    movq %rax, %r9
5427; X64-NEXT:    addq %r10, %r9
5428; X64-NEXT:    movzbl %r8b, %eax
5429; X64-NEXT:    adcq %rax, %rdi
5430; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r12 # 8-byte Reload
5431; X64-NEXT:    movq %r12, %rax
5432; X64-NEXT:    movq %r15, %rcx
5433; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5434; X64-NEXT:    mulq %r15
5435; X64-NEXT:    movq %rdx, %r8
5436; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5437; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r15 # 8-byte Reload
5438; X64-NEXT:    movq %r15, %rax
5439; X64-NEXT:    mulq %rcx
5440; X64-NEXT:    movq %rdx, %r10
5441; X64-NEXT:    movq %rax, %r14
5442; X64-NEXT:    addq %r8, %r14
5443; X64-NEXT:    adcq $0, %r10
5444; X64-NEXT:    movq %r12, %rax
5445; X64-NEXT:    movq %r12, %rcx
5446; X64-NEXT:    mulq %rsi
5447; X64-NEXT:    movq %rdx, %r8
5448; X64-NEXT:    addq %r14, %rax
5449; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5450; X64-NEXT:    adcq %r10, %r8
5451; X64-NEXT:    setb %r10b
5452; X64-NEXT:    movq %r15, %rax
5453; X64-NEXT:    movq %r15, %r12
5454; X64-NEXT:    mulq %rsi
5455; X64-NEXT:    movq %rdx, %r15
5456; X64-NEXT:    movq %rax, %rbp
5457; X64-NEXT:    addq %r8, %rbp
5458; X64-NEXT:    movzbl %r10b, %eax
5459; X64-NEXT:    adcq %rax, %r15
5460; X64-NEXT:    addq %r11, %rbp
5461; X64-NEXT:    adcq %rbx, %r15
5462; X64-NEXT:    adcq $0, %r9
5463; X64-NEXT:    adcq $0, %rdi
5464; X64-NEXT:    movq 80(%r13), %r14
5465; X64-NEXT:    movq %rcx, %rax
5466; X64-NEXT:    mulq %r14
5467; X64-NEXT:    movq %rdx, %r8
5468; X64-NEXT:    movq %rax, %rsi
5469; X64-NEXT:    movq %r12, %rax
5470; X64-NEXT:    mulq %r14
5471; X64-NEXT:    movq %rdx, %r10
5472; X64-NEXT:    movq %rax, %r11
5473; X64-NEXT:    addq %r8, %r11
5474; X64-NEXT:    adcq $0, %r10
5475; X64-NEXT:    movq 88(%r13), %rbx
5476; X64-NEXT:    movq %rcx, %rax
5477; X64-NEXT:    mulq %rbx
5478; X64-NEXT:    movq %rdx, %r8
5479; X64-NEXT:    addq %r11, %rax
5480; X64-NEXT:    movq %rax, %r11
5481; X64-NEXT:    adcq %r10, %r8
5482; X64-NEXT:    setb %r10b
5483; X64-NEXT:    movq %r12, %rax
5484; X64-NEXT:    mulq %rbx
5485; X64-NEXT:    movq %rdx, %r12
5486; X64-NEXT:    movq %rax, %r13
5487; X64-NEXT:    addq %r8, %r13
5488; X64-NEXT:    movzbl %r10b, %eax
5489; X64-NEXT:    adcq %rax, %r12
5490; X64-NEXT:    addq %rbp, %rsi
5491; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5492; X64-NEXT:    adcq %r15, %r11
5493; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5494; X64-NEXT:    adcq $0, %r13
5495; X64-NEXT:    adcq $0, %r12
5496; X64-NEXT:    addq %r9, %r13
5497; X64-NEXT:    adcq %rdi, %r12
5498; X64-NEXT:    setb %bpl
5499; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Reload
5500; X64-NEXT:    movq %r9, %rax
5501; X64-NEXT:    mulq %r14
5502; X64-NEXT:    movq %rdx, %rdi
5503; X64-NEXT:    movq %rax, %rsi
5504; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5505; X64-NEXT:    movq %rcx, %rax
5506; X64-NEXT:    mulq %r14
5507; X64-NEXT:    movq %rdx, %r8
5508; X64-NEXT:    movq %rax, %r10
5509; X64-NEXT:    addq %rdi, %r10
5510; X64-NEXT:    adcq $0, %r8
5511; X64-NEXT:    movq %r9, %rax
5512; X64-NEXT:    movq %r9, %r15
5513; X64-NEXT:    mulq %rbx
5514; X64-NEXT:    movq %rdx, %rdi
5515; X64-NEXT:    addq %r10, %rax
5516; X64-NEXT:    movq %rax, %r10
5517; X64-NEXT:    adcq %r8, %rdi
5518; X64-NEXT:    setb %r8b
5519; X64-NEXT:    movq %rcx, %rax
5520; X64-NEXT:    movq %rcx, %r9
5521; X64-NEXT:    mulq %rbx
5522; X64-NEXT:    addq %rdi, %rax
5523; X64-NEXT:    movq %rax, %rcx
5524; X64-NEXT:    movzbl %r8b, %eax
5525; X64-NEXT:    adcq %rax, %rdx
5526; X64-NEXT:    addq %r13, %rsi
5527; X64-NEXT:    movq %rsi, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5528; X64-NEXT:    adcq %r12, %r10
5529; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5530; X64-NEXT:    movzbl %bpl, %eax
5531; X64-NEXT:    adcq %rax, %rcx
5532; X64-NEXT:    movq %rcx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5533; X64-NEXT:    adcq $0, %rdx
5534; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5535; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5536; X64-NEXT:    imulq %rax, %rbx
5537; X64-NEXT:    movq %rax, %r12
5538; X64-NEXT:    mulq %r14
5539; X64-NEXT:    movq %rax, %r8
5540; X64-NEXT:    addq %rbx, %rdx
5541; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5542; X64-NEXT:    imulq %rcx, %r14
5543; X64-NEXT:    addq %rdx, %r14
5544; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5545; X64-NEXT:    movq %rax, %r10
5546; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5547; X64-NEXT:    imulq %rsi, %r10
5548; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Reload
5549; X64-NEXT:    mulq %r11
5550; X64-NEXT:    movq %rax, %rdi
5551; X64-NEXT:    addq %r10, %rdx
5552; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5553; X64-NEXT:    imulq %r11, %rbx
5554; X64-NEXT:    addq %rdx, %rbx
5555; X64-NEXT:    addq %r8, %rdi
5556; X64-NEXT:    adcq %r14, %rbx
5557; X64-NEXT:    movq %r11, %rax
5558; X64-NEXT:    mulq %r12
5559; X64-NEXT:    movq %rdx, %r8
5560; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5561; X64-NEXT:    movq %rsi, %rax
5562; X64-NEXT:    mulq %r12
5563; X64-NEXT:    movq %rdx, %r10
5564; X64-NEXT:    movq %rax, %r14
5565; X64-NEXT:    addq %r8, %r14
5566; X64-NEXT:    adcq $0, %r10
5567; X64-NEXT:    movq %r11, %rax
5568; X64-NEXT:    mulq %rcx
5569; X64-NEXT:    movq %rdx, %r8
5570; X64-NEXT:    addq %r14, %rax
5571; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5572; X64-NEXT:    adcq %r10, %r8
5573; X64-NEXT:    setb %r10b
5574; X64-NEXT:    movq %rsi, %rax
5575; X64-NEXT:    mulq %rcx
5576; X64-NEXT:    movq %rdx, %rsi
5577; X64-NEXT:    movq %rax, %r14
5578; X64-NEXT:    addq %r8, %r14
5579; X64-NEXT:    movzbl %r10b, %eax
5580; X64-NEXT:    adcq %rax, %rsi
5581; X64-NEXT:    addq %rdi, %r14
5582; X64-NEXT:    adcq %rbx, %rsi
5583; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5584; X64-NEXT:    movq 112(%rcx), %r10
5585; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5586; X64-NEXT:    movq %rdi, %rax
5587; X64-NEXT:    mulq %r10
5588; X64-NEXT:    movq %rax, %rbp
5589; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Reload
5590; X64-NEXT:    imulq %r11, %r10
5591; X64-NEXT:    addq %rdx, %r10
5592; X64-NEXT:    movq 120(%rcx), %rax
5593; X64-NEXT:    imulq %rdi, %rax
5594; X64-NEXT:    movq %rdi, %r12
5595; X64-NEXT:    addq %rax, %r10
5596; X64-NEXT:    movq 96(%rcx), %r13
5597; X64-NEXT:    movq 104(%rcx), %r8
5598; X64-NEXT:    movq %r15, %rax
5599; X64-NEXT:    movq %r15, %rbx
5600; X64-NEXT:    imulq %r8, %rbx
5601; X64-NEXT:    mulq %r13
5602; X64-NEXT:    movq %rax, %rdi
5603; X64-NEXT:    addq %rbx, %rdx
5604; X64-NEXT:    imulq %r13, %r9
5605; X64-NEXT:    addq %rdx, %r9
5606; X64-NEXT:    addq %rbp, %rdi
5607; X64-NEXT:    adcq %r10, %r9
5608; X64-NEXT:    movq %r9, %r15
5609; X64-NEXT:    movq %r13, %rax
5610; X64-NEXT:    mulq %r12
5611; X64-NEXT:    movq %rdx, %r10
5612; X64-NEXT:    movq %rax, %r9
5613; X64-NEXT:    movq %r8, %rax
5614; X64-NEXT:    mulq %r12
5615; X64-NEXT:    movq %rdx, %rbp
5616; X64-NEXT:    movq %rax, %r12
5617; X64-NEXT:    addq %r10, %r12
5618; X64-NEXT:    adcq $0, %rbp
5619; X64-NEXT:    movq %r13, %rax
5620; X64-NEXT:    mulq %r11
5621; X64-NEXT:    movq %rdx, %r10
5622; X64-NEXT:    movq %rax, %r13
5623; X64-NEXT:    addq %r12, %r13
5624; X64-NEXT:    adcq %rbp, %r10
5625; X64-NEXT:    setb %bl
5626; X64-NEXT:    movq %r8, %rax
5627; X64-NEXT:    mulq %r11
5628; X64-NEXT:    addq %r10, %rax
5629; X64-NEXT:    movzbl %bl, %r8d
5630; X64-NEXT:    adcq %r8, %rdx
5631; X64-NEXT:    addq %rdi, %rax
5632; X64-NEXT:    adcq %r15, %rdx
5633; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Folded Reload
5634; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5635; X64-NEXT:    adcq %r14, %rax
5636; X64-NEXT:    adcq %rsi, %rdx
5637; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r9 # 8-byte Folded Reload
5638; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5639; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5640; X64-NEXT:    movq %r13, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5641; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5642; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5643; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5644; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5645; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5646; X64-NEXT:    movq 80(%r14), %r10
5647; X64-NEXT:    movq %r10, %rax
5648; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5649; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5650; X64-NEXT:    mulq %rbx
5651; X64-NEXT:    movq %rax, %rsi
5652; X64-NEXT:    movq %rdx, %rcx
5653; X64-NEXT:    movq 88(%r14), %r15
5654; X64-NEXT:    movq %r15, %rax
5655; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5656; X64-NEXT:    mulq %rbx
5657; X64-NEXT:    movq %rdx, %r8
5658; X64-NEXT:    movq %rax, %r9
5659; X64-NEXT:    addq %rcx, %r9
5660; X64-NEXT:    adcq $0, %r8
5661; X64-NEXT:    movq %r10, %rax
5662; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5663; X64-NEXT:    mulq %r10
5664; X64-NEXT:    movq %rdx, %rcx
5665; X64-NEXT:    movq %rax, %rdi
5666; X64-NEXT:    addq %r9, %rdi
5667; X64-NEXT:    adcq %r8, %rcx
5668; X64-NEXT:    setb %r8b
5669; X64-NEXT:    movq %r15, %rax
5670; X64-NEXT:    mulq %r10
5671; X64-NEXT:    movq %rdx, %r15
5672; X64-NEXT:    movq %rax, %r12
5673; X64-NEXT:    addq %rcx, %r12
5674; X64-NEXT:    movzbl %r8b, %eax
5675; X64-NEXT:    adcq %rax, %r15
5676; X64-NEXT:    movq 64(%r14), %rcx
5677; X64-NEXT:    movq %rcx, %rax
5678; X64-NEXT:    mulq %rbx
5679; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5680; X64-NEXT:    movq %rdx, %r11
5681; X64-NEXT:    movq 72(%r14), %r8
5682; X64-NEXT:    movq %r8, %rax
5683; X64-NEXT:    mulq %rbx
5684; X64-NEXT:    movq %rdx, %rbx
5685; X64-NEXT:    movq %rax, %r14
5686; X64-NEXT:    addq %r11, %r14
5687; X64-NEXT:    adcq $0, %rbx
5688; X64-NEXT:    movq %rcx, %rax
5689; X64-NEXT:    movq %rcx, %r9
5690; X64-NEXT:    mulq %r10
5691; X64-NEXT:    movq %rdx, %r11
5692; X64-NEXT:    addq %r14, %rax
5693; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5694; X64-NEXT:    adcq %rbx, %r11
5695; X64-NEXT:    setb %cl
5696; X64-NEXT:    movq %r8, %rax
5697; X64-NEXT:    mulq %r10
5698; X64-NEXT:    movq %rdx, %rbx
5699; X64-NEXT:    movq %rax, %rbp
5700; X64-NEXT:    addq %r11, %rbp
5701; X64-NEXT:    movzbl %cl, %eax
5702; X64-NEXT:    adcq %rax, %rbx
5703; X64-NEXT:    addq %rsi, %rbp
5704; X64-NEXT:    adcq %rdi, %rbx
5705; X64-NEXT:    adcq $0, %r12
5706; X64-NEXT:    adcq $0, %r15
5707; X64-NEXT:    movq %r9, %rcx
5708; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5709; X64-NEXT:    movq %r9, %rax
5710; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5711; X64-NEXT:    mulq %r14
5712; X64-NEXT:    movq %rdx, %rsi
5713; X64-NEXT:    movq %rax, %r9
5714; X64-NEXT:    movq %r8, %rax
5715; X64-NEXT:    movq %r8, %r10
5716; X64-NEXT:    movq %r8, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5717; X64-NEXT:    mulq %r14
5718; X64-NEXT:    movq %rdx, %rdi
5719; X64-NEXT:    movq %rax, %r11
5720; X64-NEXT:    addq %rsi, %r11
5721; X64-NEXT:    adcq $0, %rdi
5722; X64-NEXT:    movq %rcx, %rax
5723; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5724; X64-NEXT:    mulq %r8
5725; X64-NEXT:    movq %rdx, %r13
5726; X64-NEXT:    addq %r11, %rax
5727; X64-NEXT:    movq %rax, %r11
5728; X64-NEXT:    adcq %rdi, %r13
5729; X64-NEXT:    setb %cl
5730; X64-NEXT:    movq %r10, %rax
5731; X64-NEXT:    mulq %r8
5732; X64-NEXT:    movq %rdx, %rsi
5733; X64-NEXT:    movq %rax, %rdi
5734; X64-NEXT:    addq %r13, %rdi
5735; X64-NEXT:    movzbl %cl, %eax
5736; X64-NEXT:    adcq %rax, %rsi
5737; X64-NEXT:    addq %rbp, %r9
5738; X64-NEXT:    movq %r9, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5739; X64-NEXT:    adcq %rbx, %r11
5740; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5741; X64-NEXT:    adcq $0, %rdi
5742; X64-NEXT:    adcq $0, %rsi
5743; X64-NEXT:    addq %r12, %rdi
5744; X64-NEXT:    adcq %r15, %rsi
5745; X64-NEXT:    setb %cl
5746; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5747; X64-NEXT:    movq %r10, %rax
5748; X64-NEXT:    mulq %r14
5749; X64-NEXT:    movq %rdx, %r9
5750; X64-NEXT:    movq %rax, %r15
5751; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbp # 8-byte Reload
5752; X64-NEXT:    movq %rbp, %rax
5753; X64-NEXT:    mulq %r14
5754; X64-NEXT:    movq %rdx, %r11
5755; X64-NEXT:    movq %rax, %rbx
5756; X64-NEXT:    addq %r9, %rbx
5757; X64-NEXT:    adcq $0, %r11
5758; X64-NEXT:    movq %r10, %rax
5759; X64-NEXT:    movq %r8, %r9
5760; X64-NEXT:    mulq %r8
5761; X64-NEXT:    movq %rdx, %r13
5762; X64-NEXT:    addq %rbx, %rax
5763; X64-NEXT:    movq %rax, %r10
5764; X64-NEXT:    adcq %r11, %r13
5765; X64-NEXT:    setb %r8b
5766; X64-NEXT:    movq %rbp, %rax
5767; X64-NEXT:    mulq %r9
5768; X64-NEXT:    addq %r13, %rax
5769; X64-NEXT:    movq %rax, %r11
5770; X64-NEXT:    movzbl %r8b, %eax
5771; X64-NEXT:    adcq %rax, %rdx
5772; X64-NEXT:    addq %rdi, %r15
5773; X64-NEXT:    movq %r15, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5774; X64-NEXT:    adcq %rsi, %r10
5775; X64-NEXT:    movq %r10, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5776; X64-NEXT:    movzbl %cl, %eax
5777; X64-NEXT:    adcq %rax, %r11
5778; X64-NEXT:    movq %r11, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5779; X64-NEXT:    adcq $0, %rdx
5780; X64-NEXT:    movq %rdx, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5781; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Reload
5782; X64-NEXT:    movq 96(%rcx), %rsi
5783; X64-NEXT:    imulq %rsi, %r9
5784; X64-NEXT:    movq %rsi, %rax
5785; X64-NEXT:    mulq %r14
5786; X64-NEXT:    movq %rax, %rdi
5787; X64-NEXT:    addq %r9, %rdx
5788; X64-NEXT:    movq 104(%rcx), %r9
5789; X64-NEXT:    movq %r14, %rax
5790; X64-NEXT:    imulq %r9, %rax
5791; X64-NEXT:    addq %rdx, %rax
5792; X64-NEXT:    movq %rax, %r11
5793; X64-NEXT:    movq 112(%rcx), %rax
5794; X64-NEXT:    movq %rcx, %r14
5795; X64-NEXT:    movq %rax, %rcx
5796; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5797; X64-NEXT:    imulq %r10, %rcx
5798; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rbx # 8-byte Reload
5799; X64-NEXT:    mulq %rbx
5800; X64-NEXT:    movq %rax, %r8
5801; X64-NEXT:    addq %rcx, %rdx
5802; X64-NEXT:    movq 120(%r14), %r13
5803; X64-NEXT:    imulq %rbx, %r13
5804; X64-NEXT:    addq %rdx, %r13
5805; X64-NEXT:    addq %rdi, %r8
5806; X64-NEXT:    adcq %r11, %r13
5807; X64-NEXT:    movq %rbx, %rax
5808; X64-NEXT:    movq %rbx, %rcx
5809; X64-NEXT:    mulq %rsi
5810; X64-NEXT:    movq %rdx, %rdi
5811; X64-NEXT:    movq %rax, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
5812; X64-NEXT:    movq %r10, %rax
5813; X64-NEXT:    mulq %rsi
5814; X64-NEXT:    movq %rdx, %r11
5815; X64-NEXT:    movq %rax, %rbx
5816; X64-NEXT:    addq %rdi, %rbx
5817; X64-NEXT:    adcq $0, %r11
5818; X64-NEXT:    movq %rcx, %rax
5819; X64-NEXT:    mulq %r9
5820; X64-NEXT:    movq %rdx, %rcx
5821; X64-NEXT:    movq %rax, %r12
5822; X64-NEXT:    addq %rbx, %r12
5823; X64-NEXT:    adcq %r11, %rcx
5824; X64-NEXT:    setb %sil
5825; X64-NEXT:    movq %r10, %rax
5826; X64-NEXT:    mulq %r9
5827; X64-NEXT:    movq %rdx, %rbx
5828; X64-NEXT:    movq %rax, %r9
5829; X64-NEXT:    addq %rcx, %r9
5830; X64-NEXT:    movzbl %sil, %eax
5831; X64-NEXT:    adcq %rax, %rbx
5832; X64-NEXT:    addq %r8, %r9
5833; X64-NEXT:    adcq %r13, %rbx
5834; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5835; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5836; X64-NEXT:    imulq %r10, %rdi
5837; X64-NEXT:    movq %r10, %rax
5838; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5839; X64-NEXT:    mulq %rsi
5840; X64-NEXT:    movq %rax, %rcx
5841; X64-NEXT:    addq %rdi, %rdx
5842; X64-NEXT:    movq %rsi, %rax
5843; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r14 # 8-byte Reload
5844; X64-NEXT:    imulq %r14, %rax
5845; X64-NEXT:    addq %rdx, %rax
5846; X64-NEXT:    movq %rax, %r13
5847; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Reload
5848; X64-NEXT:    movq %rax, %rsi
5849; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r8 # 8-byte Reload
5850; X64-NEXT:    imulq %r8, %rsi
5851; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5852; X64-NEXT:    mulq %rdi
5853; X64-NEXT:    movq %rax, %r11
5854; X64-NEXT:    addq %rsi, %rdx
5855; X64-NEXT:    imulq %rdi, %rbp
5856; X64-NEXT:    addq %rdx, %rbp
5857; X64-NEXT:    addq %rcx, %r11
5858; X64-NEXT:    adcq %r13, %rbp
5859; X64-NEXT:    movq %rdi, %rax
5860; X64-NEXT:    mulq %r10
5861; X64-NEXT:    movq %rdx, %rcx
5862; X64-NEXT:    movq %rax, %r13
5863; X64-NEXT:    movq %r8, %rax
5864; X64-NEXT:    movq %r8, %r15
5865; X64-NEXT:    mulq %r10
5866; X64-NEXT:    movq %rdx, %r8
5867; X64-NEXT:    movq %rax, %rsi
5868; X64-NEXT:    addq %rcx, %rsi
5869; X64-NEXT:    adcq $0, %r8
5870; X64-NEXT:    movq %rdi, %rax
5871; X64-NEXT:    mulq %r14
5872; X64-NEXT:    movq %rdx, %rdi
5873; X64-NEXT:    movq %rax, %rcx
5874; X64-NEXT:    addq %rsi, %rcx
5875; X64-NEXT:    adcq %r8, %rdi
5876; X64-NEXT:    setb %sil
5877; X64-NEXT:    movq %r15, %rax
5878; X64-NEXT:    mulq %r14
5879; X64-NEXT:    addq %rdi, %rax
5880; X64-NEXT:    movzbl %sil, %esi
5881; X64-NEXT:    adcq %rsi, %rdx
5882; X64-NEXT:    addq %r11, %rax
5883; X64-NEXT:    adcq %rbp, %rdx
5884; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5885; X64-NEXT:    adcq %r12, %rcx
5886; X64-NEXT:    adcq %r9, %rax
5887; X64-NEXT:    adcq %rbx, %rdx
5888; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5889; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5890; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5891; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5892; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5893; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5894; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5895; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Folded Reload
5896; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Reload
5897; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Folded Reload
5898; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Reload
5899; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Folded Reload
5900; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5901; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5902; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5903; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5904; X64-NEXT:    addq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Folded Reload
5905; X64-NEXT:    movq %rsi, %r8
5906; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Folded Reload
5907; X64-NEXT:    movq %rdi, %r9
5908; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r10 # 8-byte Folded Reload
5909; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r11 # 8-byte Folded Reload
5910; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %r13 # 8-byte Folded Reload
5911; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rcx # 8-byte Folded Reload
5912; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rax # 8-byte Folded Reload
5913; X64-NEXT:    adcq {{[-0-9]+}}(%r{{[sb]}}p), %rdx # 8-byte Folded Reload
5914; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rsi # 8-byte Reload
5915; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5916; X64-NEXT:    movq %rdi, (%rsi)
5917; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5918; X64-NEXT:    movq %rdi, 8(%rsi)
5919; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5920; X64-NEXT:    movq %rdi, 16(%rsi)
5921; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5922; X64-NEXT:    movq %rdi, 24(%rsi)
5923; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5924; X64-NEXT:    movq %rdi, 32(%rsi)
5925; X64-NEXT:    movq (%rsp), %rdi # 8-byte Reload
5926; X64-NEXT:    movq %rdi, 40(%rsi)
5927; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5928; X64-NEXT:    movq %rdi, 48(%rsi)
5929; X64-NEXT:    movq {{[-0-9]+}}(%r{{[sb]}}p), %rdi # 8-byte Reload
5930; X64-NEXT:    movq %rdi, 56(%rsi)
5931; X64-NEXT:    movq %r8, 64(%rsi)
5932; X64-NEXT:    movq %r9, 72(%rsi)
5933; X64-NEXT:    movq %r10, 80(%rsi)
5934; X64-NEXT:    movq %r11, 88(%rsi)
5935; X64-NEXT:    movq %r13, 96(%rsi)
5936; X64-NEXT:    movq %rcx, 104(%rsi)
5937; X64-NEXT:    movq %rax, 112(%rsi)
5938; X64-NEXT:    movq %rdx, 120(%rsi)
5939; X64-NEXT:    addq $240, %rsp
5940; X64-NEXT:    popq %rbx
5941; X64-NEXT:    popq %r12
5942; X64-NEXT:    popq %r13
5943; X64-NEXT:    popq %r14
5944; X64-NEXT:    popq %r15
5945; X64-NEXT:    popq %rbp
5946; X64-NEXT:    retq
5947  %av = load i1024, ptr %a
5948  %bv = load i1024, ptr %b
5949  %r = mul i1024 %av, %bv
5950  store i1024 %r, ptr %out
5951  ret void
5952}
5953