xref: /freebsd/sys/crypto/openssl/i386/co-586.S (revision c0855eaa3ee9614804b6bd6a255aa9f71e095f43)
1bc3d5698SJohn Baldwin/* Do not modify. This file is auto-generated from co-586.pl. */
2bc3d5698SJohn Baldwin#ifdef PIC
3bc3d5698SJohn Baldwin.text
4bc3d5698SJohn Baldwin.globl	bn_mul_comba8
5bc3d5698SJohn Baldwin.type	bn_mul_comba8,@function
6bc3d5698SJohn Baldwin.align	16
7bc3d5698SJohn Baldwinbn_mul_comba8:
8bc3d5698SJohn Baldwin.L_bn_mul_comba8_begin:
9*c0855eaaSJohn Baldwin	#ifdef __CET__
10*c0855eaaSJohn Baldwin
11*c0855eaaSJohn Baldwin.byte	243,15,30,251
12*c0855eaaSJohn Baldwin	#endif
13*c0855eaaSJohn Baldwin
14bc3d5698SJohn Baldwin	pushl	%esi
15bc3d5698SJohn Baldwin	movl	12(%esp),%esi
16bc3d5698SJohn Baldwin	pushl	%edi
17bc3d5698SJohn Baldwin	movl	20(%esp),%edi
18bc3d5698SJohn Baldwin	pushl	%ebp
19bc3d5698SJohn Baldwin	pushl	%ebx
20bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
21bc3d5698SJohn Baldwin	movl	(%esi),%eax
22bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
23bc3d5698SJohn Baldwin	movl	(%edi),%edx
24bc3d5698SJohn Baldwin
25bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
26bc3d5698SJohn Baldwin
27bc3d5698SJohn Baldwin	mull	%edx
28bc3d5698SJohn Baldwin	addl	%eax,%ebx
29bc3d5698SJohn Baldwin	movl	20(%esp),%eax
30bc3d5698SJohn Baldwin	adcl	%edx,%ecx
31bc3d5698SJohn Baldwin	movl	(%edi),%edx
32bc3d5698SJohn Baldwin	adcl	$0,%ebp
33bc3d5698SJohn Baldwin	movl	%ebx,(%eax)
34bc3d5698SJohn Baldwin	movl	4(%esi),%eax
35bc3d5698SJohn Baldwin
36bc3d5698SJohn Baldwin
37bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
38bc3d5698SJohn Baldwin
39bc3d5698SJohn Baldwin	mull	%edx
40bc3d5698SJohn Baldwin	addl	%eax,%ecx
41bc3d5698SJohn Baldwin	movl	(%esi),%eax
42bc3d5698SJohn Baldwin	adcl	%edx,%ebp
43bc3d5698SJohn Baldwin	movl	4(%edi),%edx
44bc3d5698SJohn Baldwin	adcl	$0,%ebx
45bc3d5698SJohn Baldwin
46bc3d5698SJohn Baldwin	mull	%edx
47bc3d5698SJohn Baldwin	addl	%eax,%ecx
48bc3d5698SJohn Baldwin	movl	20(%esp),%eax
49bc3d5698SJohn Baldwin	adcl	%edx,%ebp
50bc3d5698SJohn Baldwin	movl	(%edi),%edx
51bc3d5698SJohn Baldwin	adcl	$0,%ebx
52bc3d5698SJohn Baldwin	movl	%ecx,4(%eax)
53bc3d5698SJohn Baldwin	movl	8(%esi),%eax
54bc3d5698SJohn Baldwin
55bc3d5698SJohn Baldwin
56bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
57bc3d5698SJohn Baldwin
58bc3d5698SJohn Baldwin	mull	%edx
59bc3d5698SJohn Baldwin	addl	%eax,%ebp
60bc3d5698SJohn Baldwin	movl	4(%esi),%eax
61bc3d5698SJohn Baldwin	adcl	%edx,%ebx
62bc3d5698SJohn Baldwin	movl	4(%edi),%edx
63bc3d5698SJohn Baldwin	adcl	$0,%ecx
64bc3d5698SJohn Baldwin
65bc3d5698SJohn Baldwin	mull	%edx
66bc3d5698SJohn Baldwin	addl	%eax,%ebp
67bc3d5698SJohn Baldwin	movl	(%esi),%eax
68bc3d5698SJohn Baldwin	adcl	%edx,%ebx
69bc3d5698SJohn Baldwin	movl	8(%edi),%edx
70bc3d5698SJohn Baldwin	adcl	$0,%ecx
71bc3d5698SJohn Baldwin
72bc3d5698SJohn Baldwin	mull	%edx
73bc3d5698SJohn Baldwin	addl	%eax,%ebp
74bc3d5698SJohn Baldwin	movl	20(%esp),%eax
75bc3d5698SJohn Baldwin	adcl	%edx,%ebx
76bc3d5698SJohn Baldwin	movl	(%edi),%edx
77bc3d5698SJohn Baldwin	adcl	$0,%ecx
78bc3d5698SJohn Baldwin	movl	%ebp,8(%eax)
79bc3d5698SJohn Baldwin	movl	12(%esi),%eax
80bc3d5698SJohn Baldwin
81bc3d5698SJohn Baldwin
82bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
83bc3d5698SJohn Baldwin
84bc3d5698SJohn Baldwin	mull	%edx
85bc3d5698SJohn Baldwin	addl	%eax,%ebx
86bc3d5698SJohn Baldwin	movl	8(%esi),%eax
87bc3d5698SJohn Baldwin	adcl	%edx,%ecx
88bc3d5698SJohn Baldwin	movl	4(%edi),%edx
89bc3d5698SJohn Baldwin	adcl	$0,%ebp
90bc3d5698SJohn Baldwin
91bc3d5698SJohn Baldwin	mull	%edx
92bc3d5698SJohn Baldwin	addl	%eax,%ebx
93bc3d5698SJohn Baldwin	movl	4(%esi),%eax
94bc3d5698SJohn Baldwin	adcl	%edx,%ecx
95bc3d5698SJohn Baldwin	movl	8(%edi),%edx
96bc3d5698SJohn Baldwin	adcl	$0,%ebp
97bc3d5698SJohn Baldwin
98bc3d5698SJohn Baldwin	mull	%edx
99bc3d5698SJohn Baldwin	addl	%eax,%ebx
100bc3d5698SJohn Baldwin	movl	(%esi),%eax
101bc3d5698SJohn Baldwin	adcl	%edx,%ecx
102bc3d5698SJohn Baldwin	movl	12(%edi),%edx
103bc3d5698SJohn Baldwin	adcl	$0,%ebp
104bc3d5698SJohn Baldwin
105bc3d5698SJohn Baldwin	mull	%edx
106bc3d5698SJohn Baldwin	addl	%eax,%ebx
107bc3d5698SJohn Baldwin	movl	20(%esp),%eax
108bc3d5698SJohn Baldwin	adcl	%edx,%ecx
109bc3d5698SJohn Baldwin	movl	(%edi),%edx
110bc3d5698SJohn Baldwin	adcl	$0,%ebp
111bc3d5698SJohn Baldwin	movl	%ebx,12(%eax)
112bc3d5698SJohn Baldwin	movl	16(%esi),%eax
113bc3d5698SJohn Baldwin
114bc3d5698SJohn Baldwin
115bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
116bc3d5698SJohn Baldwin
117bc3d5698SJohn Baldwin	mull	%edx
118bc3d5698SJohn Baldwin	addl	%eax,%ecx
119bc3d5698SJohn Baldwin	movl	12(%esi),%eax
120bc3d5698SJohn Baldwin	adcl	%edx,%ebp
121bc3d5698SJohn Baldwin	movl	4(%edi),%edx
122bc3d5698SJohn Baldwin	adcl	$0,%ebx
123bc3d5698SJohn Baldwin
124bc3d5698SJohn Baldwin	mull	%edx
125bc3d5698SJohn Baldwin	addl	%eax,%ecx
126bc3d5698SJohn Baldwin	movl	8(%esi),%eax
127bc3d5698SJohn Baldwin	adcl	%edx,%ebp
128bc3d5698SJohn Baldwin	movl	8(%edi),%edx
129bc3d5698SJohn Baldwin	adcl	$0,%ebx
130bc3d5698SJohn Baldwin
131bc3d5698SJohn Baldwin	mull	%edx
132bc3d5698SJohn Baldwin	addl	%eax,%ecx
133bc3d5698SJohn Baldwin	movl	4(%esi),%eax
134bc3d5698SJohn Baldwin	adcl	%edx,%ebp
135bc3d5698SJohn Baldwin	movl	12(%edi),%edx
136bc3d5698SJohn Baldwin	adcl	$0,%ebx
137bc3d5698SJohn Baldwin
138bc3d5698SJohn Baldwin	mull	%edx
139bc3d5698SJohn Baldwin	addl	%eax,%ecx
140bc3d5698SJohn Baldwin	movl	(%esi),%eax
141bc3d5698SJohn Baldwin	adcl	%edx,%ebp
142bc3d5698SJohn Baldwin	movl	16(%edi),%edx
143bc3d5698SJohn Baldwin	adcl	$0,%ebx
144bc3d5698SJohn Baldwin
145bc3d5698SJohn Baldwin	mull	%edx
146bc3d5698SJohn Baldwin	addl	%eax,%ecx
147bc3d5698SJohn Baldwin	movl	20(%esp),%eax
148bc3d5698SJohn Baldwin	adcl	%edx,%ebp
149bc3d5698SJohn Baldwin	movl	(%edi),%edx
150bc3d5698SJohn Baldwin	adcl	$0,%ebx
151bc3d5698SJohn Baldwin	movl	%ecx,16(%eax)
152bc3d5698SJohn Baldwin	movl	20(%esi),%eax
153bc3d5698SJohn Baldwin
154bc3d5698SJohn Baldwin
155bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
156bc3d5698SJohn Baldwin
157bc3d5698SJohn Baldwin	mull	%edx
158bc3d5698SJohn Baldwin	addl	%eax,%ebp
159bc3d5698SJohn Baldwin	movl	16(%esi),%eax
160bc3d5698SJohn Baldwin	adcl	%edx,%ebx
161bc3d5698SJohn Baldwin	movl	4(%edi),%edx
162bc3d5698SJohn Baldwin	adcl	$0,%ecx
163bc3d5698SJohn Baldwin
164bc3d5698SJohn Baldwin	mull	%edx
165bc3d5698SJohn Baldwin	addl	%eax,%ebp
166bc3d5698SJohn Baldwin	movl	12(%esi),%eax
167bc3d5698SJohn Baldwin	adcl	%edx,%ebx
168bc3d5698SJohn Baldwin	movl	8(%edi),%edx
169bc3d5698SJohn Baldwin	adcl	$0,%ecx
170bc3d5698SJohn Baldwin
171bc3d5698SJohn Baldwin	mull	%edx
172bc3d5698SJohn Baldwin	addl	%eax,%ebp
173bc3d5698SJohn Baldwin	movl	8(%esi),%eax
174bc3d5698SJohn Baldwin	adcl	%edx,%ebx
175bc3d5698SJohn Baldwin	movl	12(%edi),%edx
176bc3d5698SJohn Baldwin	adcl	$0,%ecx
177bc3d5698SJohn Baldwin
178bc3d5698SJohn Baldwin	mull	%edx
179bc3d5698SJohn Baldwin	addl	%eax,%ebp
180bc3d5698SJohn Baldwin	movl	4(%esi),%eax
181bc3d5698SJohn Baldwin	adcl	%edx,%ebx
182bc3d5698SJohn Baldwin	movl	16(%edi),%edx
183bc3d5698SJohn Baldwin	adcl	$0,%ecx
184bc3d5698SJohn Baldwin
185bc3d5698SJohn Baldwin	mull	%edx
186bc3d5698SJohn Baldwin	addl	%eax,%ebp
187bc3d5698SJohn Baldwin	movl	(%esi),%eax
188bc3d5698SJohn Baldwin	adcl	%edx,%ebx
189bc3d5698SJohn Baldwin	movl	20(%edi),%edx
190bc3d5698SJohn Baldwin	adcl	$0,%ecx
191bc3d5698SJohn Baldwin
192bc3d5698SJohn Baldwin	mull	%edx
193bc3d5698SJohn Baldwin	addl	%eax,%ebp
194bc3d5698SJohn Baldwin	movl	20(%esp),%eax
195bc3d5698SJohn Baldwin	adcl	%edx,%ebx
196bc3d5698SJohn Baldwin	movl	(%edi),%edx
197bc3d5698SJohn Baldwin	adcl	$0,%ecx
198bc3d5698SJohn Baldwin	movl	%ebp,20(%eax)
199bc3d5698SJohn Baldwin	movl	24(%esi),%eax
200bc3d5698SJohn Baldwin
201bc3d5698SJohn Baldwin
202bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
203bc3d5698SJohn Baldwin
204bc3d5698SJohn Baldwin	mull	%edx
205bc3d5698SJohn Baldwin	addl	%eax,%ebx
206bc3d5698SJohn Baldwin	movl	20(%esi),%eax
207bc3d5698SJohn Baldwin	adcl	%edx,%ecx
208bc3d5698SJohn Baldwin	movl	4(%edi),%edx
209bc3d5698SJohn Baldwin	adcl	$0,%ebp
210bc3d5698SJohn Baldwin
211bc3d5698SJohn Baldwin	mull	%edx
212bc3d5698SJohn Baldwin	addl	%eax,%ebx
213bc3d5698SJohn Baldwin	movl	16(%esi),%eax
214bc3d5698SJohn Baldwin	adcl	%edx,%ecx
215bc3d5698SJohn Baldwin	movl	8(%edi),%edx
216bc3d5698SJohn Baldwin	adcl	$0,%ebp
217bc3d5698SJohn Baldwin
218bc3d5698SJohn Baldwin	mull	%edx
219bc3d5698SJohn Baldwin	addl	%eax,%ebx
220bc3d5698SJohn Baldwin	movl	12(%esi),%eax
221bc3d5698SJohn Baldwin	adcl	%edx,%ecx
222bc3d5698SJohn Baldwin	movl	12(%edi),%edx
223bc3d5698SJohn Baldwin	adcl	$0,%ebp
224bc3d5698SJohn Baldwin
225bc3d5698SJohn Baldwin	mull	%edx
226bc3d5698SJohn Baldwin	addl	%eax,%ebx
227bc3d5698SJohn Baldwin	movl	8(%esi),%eax
228bc3d5698SJohn Baldwin	adcl	%edx,%ecx
229bc3d5698SJohn Baldwin	movl	16(%edi),%edx
230bc3d5698SJohn Baldwin	adcl	$0,%ebp
231bc3d5698SJohn Baldwin
232bc3d5698SJohn Baldwin	mull	%edx
233bc3d5698SJohn Baldwin	addl	%eax,%ebx
234bc3d5698SJohn Baldwin	movl	4(%esi),%eax
235bc3d5698SJohn Baldwin	adcl	%edx,%ecx
236bc3d5698SJohn Baldwin	movl	20(%edi),%edx
237bc3d5698SJohn Baldwin	adcl	$0,%ebp
238bc3d5698SJohn Baldwin
239bc3d5698SJohn Baldwin	mull	%edx
240bc3d5698SJohn Baldwin	addl	%eax,%ebx
241bc3d5698SJohn Baldwin	movl	(%esi),%eax
242bc3d5698SJohn Baldwin	adcl	%edx,%ecx
243bc3d5698SJohn Baldwin	movl	24(%edi),%edx
244bc3d5698SJohn Baldwin	adcl	$0,%ebp
245bc3d5698SJohn Baldwin
246bc3d5698SJohn Baldwin	mull	%edx
247bc3d5698SJohn Baldwin	addl	%eax,%ebx
248bc3d5698SJohn Baldwin	movl	20(%esp),%eax
249bc3d5698SJohn Baldwin	adcl	%edx,%ecx
250bc3d5698SJohn Baldwin	movl	(%edi),%edx
251bc3d5698SJohn Baldwin	adcl	$0,%ebp
252bc3d5698SJohn Baldwin	movl	%ebx,24(%eax)
253bc3d5698SJohn Baldwin	movl	28(%esi),%eax
254bc3d5698SJohn Baldwin
255bc3d5698SJohn Baldwin
256bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
257bc3d5698SJohn Baldwin
258bc3d5698SJohn Baldwin	mull	%edx
259bc3d5698SJohn Baldwin	addl	%eax,%ecx
260bc3d5698SJohn Baldwin	movl	24(%esi),%eax
261bc3d5698SJohn Baldwin	adcl	%edx,%ebp
262bc3d5698SJohn Baldwin	movl	4(%edi),%edx
263bc3d5698SJohn Baldwin	adcl	$0,%ebx
264bc3d5698SJohn Baldwin
265bc3d5698SJohn Baldwin	mull	%edx
266bc3d5698SJohn Baldwin	addl	%eax,%ecx
267bc3d5698SJohn Baldwin	movl	20(%esi),%eax
268bc3d5698SJohn Baldwin	adcl	%edx,%ebp
269bc3d5698SJohn Baldwin	movl	8(%edi),%edx
270bc3d5698SJohn Baldwin	adcl	$0,%ebx
271bc3d5698SJohn Baldwin
272bc3d5698SJohn Baldwin	mull	%edx
273bc3d5698SJohn Baldwin	addl	%eax,%ecx
274bc3d5698SJohn Baldwin	movl	16(%esi),%eax
275bc3d5698SJohn Baldwin	adcl	%edx,%ebp
276bc3d5698SJohn Baldwin	movl	12(%edi),%edx
277bc3d5698SJohn Baldwin	adcl	$0,%ebx
278bc3d5698SJohn Baldwin
279bc3d5698SJohn Baldwin	mull	%edx
280bc3d5698SJohn Baldwin	addl	%eax,%ecx
281bc3d5698SJohn Baldwin	movl	12(%esi),%eax
282bc3d5698SJohn Baldwin	adcl	%edx,%ebp
283bc3d5698SJohn Baldwin	movl	16(%edi),%edx
284bc3d5698SJohn Baldwin	adcl	$0,%ebx
285bc3d5698SJohn Baldwin
286bc3d5698SJohn Baldwin	mull	%edx
287bc3d5698SJohn Baldwin	addl	%eax,%ecx
288bc3d5698SJohn Baldwin	movl	8(%esi),%eax
289bc3d5698SJohn Baldwin	adcl	%edx,%ebp
290bc3d5698SJohn Baldwin	movl	20(%edi),%edx
291bc3d5698SJohn Baldwin	adcl	$0,%ebx
292bc3d5698SJohn Baldwin
293bc3d5698SJohn Baldwin	mull	%edx
294bc3d5698SJohn Baldwin	addl	%eax,%ecx
295bc3d5698SJohn Baldwin	movl	4(%esi),%eax
296bc3d5698SJohn Baldwin	adcl	%edx,%ebp
297bc3d5698SJohn Baldwin	movl	24(%edi),%edx
298bc3d5698SJohn Baldwin	adcl	$0,%ebx
299bc3d5698SJohn Baldwin
300bc3d5698SJohn Baldwin	mull	%edx
301bc3d5698SJohn Baldwin	addl	%eax,%ecx
302bc3d5698SJohn Baldwin	movl	(%esi),%eax
303bc3d5698SJohn Baldwin	adcl	%edx,%ebp
304bc3d5698SJohn Baldwin	movl	28(%edi),%edx
305bc3d5698SJohn Baldwin	adcl	$0,%ebx
306bc3d5698SJohn Baldwin
307bc3d5698SJohn Baldwin	mull	%edx
308bc3d5698SJohn Baldwin	addl	%eax,%ecx
309bc3d5698SJohn Baldwin	movl	20(%esp),%eax
310bc3d5698SJohn Baldwin	adcl	%edx,%ebp
311bc3d5698SJohn Baldwin	movl	4(%edi),%edx
312bc3d5698SJohn Baldwin	adcl	$0,%ebx
313bc3d5698SJohn Baldwin	movl	%ecx,28(%eax)
314bc3d5698SJohn Baldwin	movl	28(%esi),%eax
315bc3d5698SJohn Baldwin
316bc3d5698SJohn Baldwin
317bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
318bc3d5698SJohn Baldwin
319bc3d5698SJohn Baldwin	mull	%edx
320bc3d5698SJohn Baldwin	addl	%eax,%ebp
321bc3d5698SJohn Baldwin	movl	24(%esi),%eax
322bc3d5698SJohn Baldwin	adcl	%edx,%ebx
323bc3d5698SJohn Baldwin	movl	8(%edi),%edx
324bc3d5698SJohn Baldwin	adcl	$0,%ecx
325bc3d5698SJohn Baldwin
326bc3d5698SJohn Baldwin	mull	%edx
327bc3d5698SJohn Baldwin	addl	%eax,%ebp
328bc3d5698SJohn Baldwin	movl	20(%esi),%eax
329bc3d5698SJohn Baldwin	adcl	%edx,%ebx
330bc3d5698SJohn Baldwin	movl	12(%edi),%edx
331bc3d5698SJohn Baldwin	adcl	$0,%ecx
332bc3d5698SJohn Baldwin
333bc3d5698SJohn Baldwin	mull	%edx
334bc3d5698SJohn Baldwin	addl	%eax,%ebp
335bc3d5698SJohn Baldwin	movl	16(%esi),%eax
336bc3d5698SJohn Baldwin	adcl	%edx,%ebx
337bc3d5698SJohn Baldwin	movl	16(%edi),%edx
338bc3d5698SJohn Baldwin	adcl	$0,%ecx
339bc3d5698SJohn Baldwin
340bc3d5698SJohn Baldwin	mull	%edx
341bc3d5698SJohn Baldwin	addl	%eax,%ebp
342bc3d5698SJohn Baldwin	movl	12(%esi),%eax
343bc3d5698SJohn Baldwin	adcl	%edx,%ebx
344bc3d5698SJohn Baldwin	movl	20(%edi),%edx
345bc3d5698SJohn Baldwin	adcl	$0,%ecx
346bc3d5698SJohn Baldwin
347bc3d5698SJohn Baldwin	mull	%edx
348bc3d5698SJohn Baldwin	addl	%eax,%ebp
349bc3d5698SJohn Baldwin	movl	8(%esi),%eax
350bc3d5698SJohn Baldwin	adcl	%edx,%ebx
351bc3d5698SJohn Baldwin	movl	24(%edi),%edx
352bc3d5698SJohn Baldwin	adcl	$0,%ecx
353bc3d5698SJohn Baldwin
354bc3d5698SJohn Baldwin	mull	%edx
355bc3d5698SJohn Baldwin	addl	%eax,%ebp
356bc3d5698SJohn Baldwin	movl	4(%esi),%eax
357bc3d5698SJohn Baldwin	adcl	%edx,%ebx
358bc3d5698SJohn Baldwin	movl	28(%edi),%edx
359bc3d5698SJohn Baldwin	adcl	$0,%ecx
360bc3d5698SJohn Baldwin
361bc3d5698SJohn Baldwin	mull	%edx
362bc3d5698SJohn Baldwin	addl	%eax,%ebp
363bc3d5698SJohn Baldwin	movl	20(%esp),%eax
364bc3d5698SJohn Baldwin	adcl	%edx,%ebx
365bc3d5698SJohn Baldwin	movl	8(%edi),%edx
366bc3d5698SJohn Baldwin	adcl	$0,%ecx
367bc3d5698SJohn Baldwin	movl	%ebp,32(%eax)
368bc3d5698SJohn Baldwin	movl	28(%esi),%eax
369bc3d5698SJohn Baldwin
370bc3d5698SJohn Baldwin
371bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
372bc3d5698SJohn Baldwin
373bc3d5698SJohn Baldwin	mull	%edx
374bc3d5698SJohn Baldwin	addl	%eax,%ebx
375bc3d5698SJohn Baldwin	movl	24(%esi),%eax
376bc3d5698SJohn Baldwin	adcl	%edx,%ecx
377bc3d5698SJohn Baldwin	movl	12(%edi),%edx
378bc3d5698SJohn Baldwin	adcl	$0,%ebp
379bc3d5698SJohn Baldwin
380bc3d5698SJohn Baldwin	mull	%edx
381bc3d5698SJohn Baldwin	addl	%eax,%ebx
382bc3d5698SJohn Baldwin	movl	20(%esi),%eax
383bc3d5698SJohn Baldwin	adcl	%edx,%ecx
384bc3d5698SJohn Baldwin	movl	16(%edi),%edx
385bc3d5698SJohn Baldwin	adcl	$0,%ebp
386bc3d5698SJohn Baldwin
387bc3d5698SJohn Baldwin	mull	%edx
388bc3d5698SJohn Baldwin	addl	%eax,%ebx
389bc3d5698SJohn Baldwin	movl	16(%esi),%eax
390bc3d5698SJohn Baldwin	adcl	%edx,%ecx
391bc3d5698SJohn Baldwin	movl	20(%edi),%edx
392bc3d5698SJohn Baldwin	adcl	$0,%ebp
393bc3d5698SJohn Baldwin
394bc3d5698SJohn Baldwin	mull	%edx
395bc3d5698SJohn Baldwin	addl	%eax,%ebx
396bc3d5698SJohn Baldwin	movl	12(%esi),%eax
397bc3d5698SJohn Baldwin	adcl	%edx,%ecx
398bc3d5698SJohn Baldwin	movl	24(%edi),%edx
399bc3d5698SJohn Baldwin	adcl	$0,%ebp
400bc3d5698SJohn Baldwin
401bc3d5698SJohn Baldwin	mull	%edx
402bc3d5698SJohn Baldwin	addl	%eax,%ebx
403bc3d5698SJohn Baldwin	movl	8(%esi),%eax
404bc3d5698SJohn Baldwin	adcl	%edx,%ecx
405bc3d5698SJohn Baldwin	movl	28(%edi),%edx
406bc3d5698SJohn Baldwin	adcl	$0,%ebp
407bc3d5698SJohn Baldwin
408bc3d5698SJohn Baldwin	mull	%edx
409bc3d5698SJohn Baldwin	addl	%eax,%ebx
410bc3d5698SJohn Baldwin	movl	20(%esp),%eax
411bc3d5698SJohn Baldwin	adcl	%edx,%ecx
412bc3d5698SJohn Baldwin	movl	12(%edi),%edx
413bc3d5698SJohn Baldwin	adcl	$0,%ebp
414bc3d5698SJohn Baldwin	movl	%ebx,36(%eax)
415bc3d5698SJohn Baldwin	movl	28(%esi),%eax
416bc3d5698SJohn Baldwin
417bc3d5698SJohn Baldwin
418bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
419bc3d5698SJohn Baldwin
420bc3d5698SJohn Baldwin	mull	%edx
421bc3d5698SJohn Baldwin	addl	%eax,%ecx
422bc3d5698SJohn Baldwin	movl	24(%esi),%eax
423bc3d5698SJohn Baldwin	adcl	%edx,%ebp
424bc3d5698SJohn Baldwin	movl	16(%edi),%edx
425bc3d5698SJohn Baldwin	adcl	$0,%ebx
426bc3d5698SJohn Baldwin
427bc3d5698SJohn Baldwin	mull	%edx
428bc3d5698SJohn Baldwin	addl	%eax,%ecx
429bc3d5698SJohn Baldwin	movl	20(%esi),%eax
430bc3d5698SJohn Baldwin	adcl	%edx,%ebp
431bc3d5698SJohn Baldwin	movl	20(%edi),%edx
432bc3d5698SJohn Baldwin	adcl	$0,%ebx
433bc3d5698SJohn Baldwin
434bc3d5698SJohn Baldwin	mull	%edx
435bc3d5698SJohn Baldwin	addl	%eax,%ecx
436bc3d5698SJohn Baldwin	movl	16(%esi),%eax
437bc3d5698SJohn Baldwin	adcl	%edx,%ebp
438bc3d5698SJohn Baldwin	movl	24(%edi),%edx
439bc3d5698SJohn Baldwin	adcl	$0,%ebx
440bc3d5698SJohn Baldwin
441bc3d5698SJohn Baldwin	mull	%edx
442bc3d5698SJohn Baldwin	addl	%eax,%ecx
443bc3d5698SJohn Baldwin	movl	12(%esi),%eax
444bc3d5698SJohn Baldwin	adcl	%edx,%ebp
445bc3d5698SJohn Baldwin	movl	28(%edi),%edx
446bc3d5698SJohn Baldwin	adcl	$0,%ebx
447bc3d5698SJohn Baldwin
448bc3d5698SJohn Baldwin	mull	%edx
449bc3d5698SJohn Baldwin	addl	%eax,%ecx
450bc3d5698SJohn Baldwin	movl	20(%esp),%eax
451bc3d5698SJohn Baldwin	adcl	%edx,%ebp
452bc3d5698SJohn Baldwin	movl	16(%edi),%edx
453bc3d5698SJohn Baldwin	adcl	$0,%ebx
454bc3d5698SJohn Baldwin	movl	%ecx,40(%eax)
455bc3d5698SJohn Baldwin	movl	28(%esi),%eax
456bc3d5698SJohn Baldwin
457bc3d5698SJohn Baldwin
458bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
459bc3d5698SJohn Baldwin
460bc3d5698SJohn Baldwin	mull	%edx
461bc3d5698SJohn Baldwin	addl	%eax,%ebp
462bc3d5698SJohn Baldwin	movl	24(%esi),%eax
463bc3d5698SJohn Baldwin	adcl	%edx,%ebx
464bc3d5698SJohn Baldwin	movl	20(%edi),%edx
465bc3d5698SJohn Baldwin	adcl	$0,%ecx
466bc3d5698SJohn Baldwin
467bc3d5698SJohn Baldwin	mull	%edx
468bc3d5698SJohn Baldwin	addl	%eax,%ebp
469bc3d5698SJohn Baldwin	movl	20(%esi),%eax
470bc3d5698SJohn Baldwin	adcl	%edx,%ebx
471bc3d5698SJohn Baldwin	movl	24(%edi),%edx
472bc3d5698SJohn Baldwin	adcl	$0,%ecx
473bc3d5698SJohn Baldwin
474bc3d5698SJohn Baldwin	mull	%edx
475bc3d5698SJohn Baldwin	addl	%eax,%ebp
476bc3d5698SJohn Baldwin	movl	16(%esi),%eax
477bc3d5698SJohn Baldwin	adcl	%edx,%ebx
478bc3d5698SJohn Baldwin	movl	28(%edi),%edx
479bc3d5698SJohn Baldwin	adcl	$0,%ecx
480bc3d5698SJohn Baldwin
481bc3d5698SJohn Baldwin	mull	%edx
482bc3d5698SJohn Baldwin	addl	%eax,%ebp
483bc3d5698SJohn Baldwin	movl	20(%esp),%eax
484bc3d5698SJohn Baldwin	adcl	%edx,%ebx
485bc3d5698SJohn Baldwin	movl	20(%edi),%edx
486bc3d5698SJohn Baldwin	adcl	$0,%ecx
487bc3d5698SJohn Baldwin	movl	%ebp,44(%eax)
488bc3d5698SJohn Baldwin	movl	28(%esi),%eax
489bc3d5698SJohn Baldwin
490bc3d5698SJohn Baldwin
491bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
492bc3d5698SJohn Baldwin
493bc3d5698SJohn Baldwin	mull	%edx
494bc3d5698SJohn Baldwin	addl	%eax,%ebx
495bc3d5698SJohn Baldwin	movl	24(%esi),%eax
496bc3d5698SJohn Baldwin	adcl	%edx,%ecx
497bc3d5698SJohn Baldwin	movl	24(%edi),%edx
498bc3d5698SJohn Baldwin	adcl	$0,%ebp
499bc3d5698SJohn Baldwin
500bc3d5698SJohn Baldwin	mull	%edx
501bc3d5698SJohn Baldwin	addl	%eax,%ebx
502bc3d5698SJohn Baldwin	movl	20(%esi),%eax
503bc3d5698SJohn Baldwin	adcl	%edx,%ecx
504bc3d5698SJohn Baldwin	movl	28(%edi),%edx
505bc3d5698SJohn Baldwin	adcl	$0,%ebp
506bc3d5698SJohn Baldwin
507bc3d5698SJohn Baldwin	mull	%edx
508bc3d5698SJohn Baldwin	addl	%eax,%ebx
509bc3d5698SJohn Baldwin	movl	20(%esp),%eax
510bc3d5698SJohn Baldwin	adcl	%edx,%ecx
511bc3d5698SJohn Baldwin	movl	24(%edi),%edx
512bc3d5698SJohn Baldwin	adcl	$0,%ebp
513bc3d5698SJohn Baldwin	movl	%ebx,48(%eax)
514bc3d5698SJohn Baldwin	movl	28(%esi),%eax
515bc3d5698SJohn Baldwin
516bc3d5698SJohn Baldwin
517bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
518bc3d5698SJohn Baldwin
519bc3d5698SJohn Baldwin	mull	%edx
520bc3d5698SJohn Baldwin	addl	%eax,%ecx
521bc3d5698SJohn Baldwin	movl	24(%esi),%eax
522bc3d5698SJohn Baldwin	adcl	%edx,%ebp
523bc3d5698SJohn Baldwin	movl	28(%edi),%edx
524bc3d5698SJohn Baldwin	adcl	$0,%ebx
525bc3d5698SJohn Baldwin
526bc3d5698SJohn Baldwin	mull	%edx
527bc3d5698SJohn Baldwin	addl	%eax,%ecx
528bc3d5698SJohn Baldwin	movl	20(%esp),%eax
529bc3d5698SJohn Baldwin	adcl	%edx,%ebp
530bc3d5698SJohn Baldwin	movl	28(%edi),%edx
531bc3d5698SJohn Baldwin	adcl	$0,%ebx
532bc3d5698SJohn Baldwin	movl	%ecx,52(%eax)
533bc3d5698SJohn Baldwin	movl	28(%esi),%eax
534bc3d5698SJohn Baldwin
535bc3d5698SJohn Baldwin
536bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
537bc3d5698SJohn Baldwin
538bc3d5698SJohn Baldwin	mull	%edx
539bc3d5698SJohn Baldwin	addl	%eax,%ebp
540bc3d5698SJohn Baldwin	movl	20(%esp),%eax
541bc3d5698SJohn Baldwin	adcl	%edx,%ebx
542bc3d5698SJohn Baldwin	adcl	$0,%ecx
543bc3d5698SJohn Baldwin	movl	%ebp,56(%eax)
544bc3d5698SJohn Baldwin
545bc3d5698SJohn Baldwin
546bc3d5698SJohn Baldwin	movl	%ebx,60(%eax)
547bc3d5698SJohn Baldwin	popl	%ebx
548bc3d5698SJohn Baldwin	popl	%ebp
549bc3d5698SJohn Baldwin	popl	%edi
550bc3d5698SJohn Baldwin	popl	%esi
551bc3d5698SJohn Baldwin	ret
552bc3d5698SJohn Baldwin.size	bn_mul_comba8,.-.L_bn_mul_comba8_begin
553bc3d5698SJohn Baldwin.globl	bn_mul_comba4
554bc3d5698SJohn Baldwin.type	bn_mul_comba4,@function
555bc3d5698SJohn Baldwin.align	16
556bc3d5698SJohn Baldwinbn_mul_comba4:
557bc3d5698SJohn Baldwin.L_bn_mul_comba4_begin:
558*c0855eaaSJohn Baldwin	#ifdef __CET__
559*c0855eaaSJohn Baldwin
560*c0855eaaSJohn Baldwin.byte	243,15,30,251
561*c0855eaaSJohn Baldwin	#endif
562*c0855eaaSJohn Baldwin
563bc3d5698SJohn Baldwin	pushl	%esi
564bc3d5698SJohn Baldwin	movl	12(%esp),%esi
565bc3d5698SJohn Baldwin	pushl	%edi
566bc3d5698SJohn Baldwin	movl	20(%esp),%edi
567bc3d5698SJohn Baldwin	pushl	%ebp
568bc3d5698SJohn Baldwin	pushl	%ebx
569bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
570bc3d5698SJohn Baldwin	movl	(%esi),%eax
571bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
572bc3d5698SJohn Baldwin	movl	(%edi),%edx
573bc3d5698SJohn Baldwin
574bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
575bc3d5698SJohn Baldwin
576bc3d5698SJohn Baldwin	mull	%edx
577bc3d5698SJohn Baldwin	addl	%eax,%ebx
578bc3d5698SJohn Baldwin	movl	20(%esp),%eax
579bc3d5698SJohn Baldwin	adcl	%edx,%ecx
580bc3d5698SJohn Baldwin	movl	(%edi),%edx
581bc3d5698SJohn Baldwin	adcl	$0,%ebp
582bc3d5698SJohn Baldwin	movl	%ebx,(%eax)
583bc3d5698SJohn Baldwin	movl	4(%esi),%eax
584bc3d5698SJohn Baldwin
585bc3d5698SJohn Baldwin
586bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
587bc3d5698SJohn Baldwin
588bc3d5698SJohn Baldwin	mull	%edx
589bc3d5698SJohn Baldwin	addl	%eax,%ecx
590bc3d5698SJohn Baldwin	movl	(%esi),%eax
591bc3d5698SJohn Baldwin	adcl	%edx,%ebp
592bc3d5698SJohn Baldwin	movl	4(%edi),%edx
593bc3d5698SJohn Baldwin	adcl	$0,%ebx
594bc3d5698SJohn Baldwin
595bc3d5698SJohn Baldwin	mull	%edx
596bc3d5698SJohn Baldwin	addl	%eax,%ecx
597bc3d5698SJohn Baldwin	movl	20(%esp),%eax
598bc3d5698SJohn Baldwin	adcl	%edx,%ebp
599bc3d5698SJohn Baldwin	movl	(%edi),%edx
600bc3d5698SJohn Baldwin	adcl	$0,%ebx
601bc3d5698SJohn Baldwin	movl	%ecx,4(%eax)
602bc3d5698SJohn Baldwin	movl	8(%esi),%eax
603bc3d5698SJohn Baldwin
604bc3d5698SJohn Baldwin
605bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
606bc3d5698SJohn Baldwin
607bc3d5698SJohn Baldwin	mull	%edx
608bc3d5698SJohn Baldwin	addl	%eax,%ebp
609bc3d5698SJohn Baldwin	movl	4(%esi),%eax
610bc3d5698SJohn Baldwin	adcl	%edx,%ebx
611bc3d5698SJohn Baldwin	movl	4(%edi),%edx
612bc3d5698SJohn Baldwin	adcl	$0,%ecx
613bc3d5698SJohn Baldwin
614bc3d5698SJohn Baldwin	mull	%edx
615bc3d5698SJohn Baldwin	addl	%eax,%ebp
616bc3d5698SJohn Baldwin	movl	(%esi),%eax
617bc3d5698SJohn Baldwin	adcl	%edx,%ebx
618bc3d5698SJohn Baldwin	movl	8(%edi),%edx
619bc3d5698SJohn Baldwin	adcl	$0,%ecx
620bc3d5698SJohn Baldwin
621bc3d5698SJohn Baldwin	mull	%edx
622bc3d5698SJohn Baldwin	addl	%eax,%ebp
623bc3d5698SJohn Baldwin	movl	20(%esp),%eax
624bc3d5698SJohn Baldwin	adcl	%edx,%ebx
625bc3d5698SJohn Baldwin	movl	(%edi),%edx
626bc3d5698SJohn Baldwin	adcl	$0,%ecx
627bc3d5698SJohn Baldwin	movl	%ebp,8(%eax)
628bc3d5698SJohn Baldwin	movl	12(%esi),%eax
629bc3d5698SJohn Baldwin
630bc3d5698SJohn Baldwin
631bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
632bc3d5698SJohn Baldwin
633bc3d5698SJohn Baldwin	mull	%edx
634bc3d5698SJohn Baldwin	addl	%eax,%ebx
635bc3d5698SJohn Baldwin	movl	8(%esi),%eax
636bc3d5698SJohn Baldwin	adcl	%edx,%ecx
637bc3d5698SJohn Baldwin	movl	4(%edi),%edx
638bc3d5698SJohn Baldwin	adcl	$0,%ebp
639bc3d5698SJohn Baldwin
640bc3d5698SJohn Baldwin	mull	%edx
641bc3d5698SJohn Baldwin	addl	%eax,%ebx
642bc3d5698SJohn Baldwin	movl	4(%esi),%eax
643bc3d5698SJohn Baldwin	adcl	%edx,%ecx
644bc3d5698SJohn Baldwin	movl	8(%edi),%edx
645bc3d5698SJohn Baldwin	adcl	$0,%ebp
646bc3d5698SJohn Baldwin
647bc3d5698SJohn Baldwin	mull	%edx
648bc3d5698SJohn Baldwin	addl	%eax,%ebx
649bc3d5698SJohn Baldwin	movl	(%esi),%eax
650bc3d5698SJohn Baldwin	adcl	%edx,%ecx
651bc3d5698SJohn Baldwin	movl	12(%edi),%edx
652bc3d5698SJohn Baldwin	adcl	$0,%ebp
653bc3d5698SJohn Baldwin
654bc3d5698SJohn Baldwin	mull	%edx
655bc3d5698SJohn Baldwin	addl	%eax,%ebx
656bc3d5698SJohn Baldwin	movl	20(%esp),%eax
657bc3d5698SJohn Baldwin	adcl	%edx,%ecx
658bc3d5698SJohn Baldwin	movl	4(%edi),%edx
659bc3d5698SJohn Baldwin	adcl	$0,%ebp
660bc3d5698SJohn Baldwin	movl	%ebx,12(%eax)
661bc3d5698SJohn Baldwin	movl	12(%esi),%eax
662bc3d5698SJohn Baldwin
663bc3d5698SJohn Baldwin
664bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
665bc3d5698SJohn Baldwin
666bc3d5698SJohn Baldwin	mull	%edx
667bc3d5698SJohn Baldwin	addl	%eax,%ecx
668bc3d5698SJohn Baldwin	movl	8(%esi),%eax
669bc3d5698SJohn Baldwin	adcl	%edx,%ebp
670bc3d5698SJohn Baldwin	movl	8(%edi),%edx
671bc3d5698SJohn Baldwin	adcl	$0,%ebx
672bc3d5698SJohn Baldwin
673bc3d5698SJohn Baldwin	mull	%edx
674bc3d5698SJohn Baldwin	addl	%eax,%ecx
675bc3d5698SJohn Baldwin	movl	4(%esi),%eax
676bc3d5698SJohn Baldwin	adcl	%edx,%ebp
677bc3d5698SJohn Baldwin	movl	12(%edi),%edx
678bc3d5698SJohn Baldwin	adcl	$0,%ebx
679bc3d5698SJohn Baldwin
680bc3d5698SJohn Baldwin	mull	%edx
681bc3d5698SJohn Baldwin	addl	%eax,%ecx
682bc3d5698SJohn Baldwin	movl	20(%esp),%eax
683bc3d5698SJohn Baldwin	adcl	%edx,%ebp
684bc3d5698SJohn Baldwin	movl	8(%edi),%edx
685bc3d5698SJohn Baldwin	adcl	$0,%ebx
686bc3d5698SJohn Baldwin	movl	%ecx,16(%eax)
687bc3d5698SJohn Baldwin	movl	12(%esi),%eax
688bc3d5698SJohn Baldwin
689bc3d5698SJohn Baldwin
690bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
691bc3d5698SJohn Baldwin
692bc3d5698SJohn Baldwin	mull	%edx
693bc3d5698SJohn Baldwin	addl	%eax,%ebp
694bc3d5698SJohn Baldwin	movl	8(%esi),%eax
695bc3d5698SJohn Baldwin	adcl	%edx,%ebx
696bc3d5698SJohn Baldwin	movl	12(%edi),%edx
697bc3d5698SJohn Baldwin	adcl	$0,%ecx
698bc3d5698SJohn Baldwin
699bc3d5698SJohn Baldwin	mull	%edx
700bc3d5698SJohn Baldwin	addl	%eax,%ebp
701bc3d5698SJohn Baldwin	movl	20(%esp),%eax
702bc3d5698SJohn Baldwin	adcl	%edx,%ebx
703bc3d5698SJohn Baldwin	movl	12(%edi),%edx
704bc3d5698SJohn Baldwin	adcl	$0,%ecx
705bc3d5698SJohn Baldwin	movl	%ebp,20(%eax)
706bc3d5698SJohn Baldwin	movl	12(%esi),%eax
707bc3d5698SJohn Baldwin
708bc3d5698SJohn Baldwin
709bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
710bc3d5698SJohn Baldwin
711bc3d5698SJohn Baldwin	mull	%edx
712bc3d5698SJohn Baldwin	addl	%eax,%ebx
713bc3d5698SJohn Baldwin	movl	20(%esp),%eax
714bc3d5698SJohn Baldwin	adcl	%edx,%ecx
715bc3d5698SJohn Baldwin	adcl	$0,%ebp
716bc3d5698SJohn Baldwin	movl	%ebx,24(%eax)
717bc3d5698SJohn Baldwin
718bc3d5698SJohn Baldwin
719bc3d5698SJohn Baldwin	movl	%ecx,28(%eax)
720bc3d5698SJohn Baldwin	popl	%ebx
721bc3d5698SJohn Baldwin	popl	%ebp
722bc3d5698SJohn Baldwin	popl	%edi
723bc3d5698SJohn Baldwin	popl	%esi
724bc3d5698SJohn Baldwin	ret
725bc3d5698SJohn Baldwin.size	bn_mul_comba4,.-.L_bn_mul_comba4_begin
726bc3d5698SJohn Baldwin.globl	bn_sqr_comba8
727bc3d5698SJohn Baldwin.type	bn_sqr_comba8,@function
728bc3d5698SJohn Baldwin.align	16
729bc3d5698SJohn Baldwinbn_sqr_comba8:
730bc3d5698SJohn Baldwin.L_bn_sqr_comba8_begin:
731*c0855eaaSJohn Baldwin	#ifdef __CET__
732*c0855eaaSJohn Baldwin
733*c0855eaaSJohn Baldwin.byte	243,15,30,251
734*c0855eaaSJohn Baldwin	#endif
735*c0855eaaSJohn Baldwin
736bc3d5698SJohn Baldwin	pushl	%esi
737bc3d5698SJohn Baldwin	pushl	%edi
738bc3d5698SJohn Baldwin	pushl	%ebp
739bc3d5698SJohn Baldwin	pushl	%ebx
740bc3d5698SJohn Baldwin	movl	20(%esp),%edi
741bc3d5698SJohn Baldwin	movl	24(%esp),%esi
742bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
743bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
744bc3d5698SJohn Baldwin	movl	(%esi),%eax
745bc3d5698SJohn Baldwin
746bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
747bc3d5698SJohn Baldwin
748bc3d5698SJohn Baldwin	mull	%eax
749bc3d5698SJohn Baldwin	addl	%eax,%ebx
750bc3d5698SJohn Baldwin	adcl	%edx,%ecx
751bc3d5698SJohn Baldwin	movl	(%esi),%edx
752bc3d5698SJohn Baldwin	adcl	$0,%ebp
753bc3d5698SJohn Baldwin	movl	%ebx,(%edi)
754bc3d5698SJohn Baldwin	movl	4(%esi),%eax
755bc3d5698SJohn Baldwin
756bc3d5698SJohn Baldwin
757bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
758bc3d5698SJohn Baldwin
759bc3d5698SJohn Baldwin	mull	%edx
760bc3d5698SJohn Baldwin	addl	%eax,%eax
761bc3d5698SJohn Baldwin	adcl	%edx,%edx
762bc3d5698SJohn Baldwin	adcl	$0,%ebx
763bc3d5698SJohn Baldwin	addl	%eax,%ecx
764bc3d5698SJohn Baldwin	adcl	%edx,%ebp
765bc3d5698SJohn Baldwin	movl	8(%esi),%eax
766bc3d5698SJohn Baldwin	adcl	$0,%ebx
767bc3d5698SJohn Baldwin	movl	%ecx,4(%edi)
768bc3d5698SJohn Baldwin	movl	(%esi),%edx
769bc3d5698SJohn Baldwin
770bc3d5698SJohn Baldwin
771bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
772bc3d5698SJohn Baldwin
773bc3d5698SJohn Baldwin	mull	%edx
774bc3d5698SJohn Baldwin	addl	%eax,%eax
775bc3d5698SJohn Baldwin	adcl	%edx,%edx
776bc3d5698SJohn Baldwin	adcl	$0,%ecx
777bc3d5698SJohn Baldwin	addl	%eax,%ebp
778bc3d5698SJohn Baldwin	adcl	%edx,%ebx
779bc3d5698SJohn Baldwin	movl	4(%esi),%eax
780bc3d5698SJohn Baldwin	adcl	$0,%ecx
781bc3d5698SJohn Baldwin
782bc3d5698SJohn Baldwin	mull	%eax
783bc3d5698SJohn Baldwin	addl	%eax,%ebp
784bc3d5698SJohn Baldwin	adcl	%edx,%ebx
785bc3d5698SJohn Baldwin	movl	(%esi),%edx
786bc3d5698SJohn Baldwin	adcl	$0,%ecx
787bc3d5698SJohn Baldwin	movl	%ebp,8(%edi)
788bc3d5698SJohn Baldwin	movl	12(%esi),%eax
789bc3d5698SJohn Baldwin
790bc3d5698SJohn Baldwin
791bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
792bc3d5698SJohn Baldwin
793bc3d5698SJohn Baldwin	mull	%edx
794bc3d5698SJohn Baldwin	addl	%eax,%eax
795bc3d5698SJohn Baldwin	adcl	%edx,%edx
796bc3d5698SJohn Baldwin	adcl	$0,%ebp
797bc3d5698SJohn Baldwin	addl	%eax,%ebx
798bc3d5698SJohn Baldwin	adcl	%edx,%ecx
799bc3d5698SJohn Baldwin	movl	8(%esi),%eax
800bc3d5698SJohn Baldwin	adcl	$0,%ebp
801bc3d5698SJohn Baldwin	movl	4(%esi),%edx
802bc3d5698SJohn Baldwin
803bc3d5698SJohn Baldwin	mull	%edx
804bc3d5698SJohn Baldwin	addl	%eax,%eax
805bc3d5698SJohn Baldwin	adcl	%edx,%edx
806bc3d5698SJohn Baldwin	adcl	$0,%ebp
807bc3d5698SJohn Baldwin	addl	%eax,%ebx
808bc3d5698SJohn Baldwin	adcl	%edx,%ecx
809bc3d5698SJohn Baldwin	movl	16(%esi),%eax
810bc3d5698SJohn Baldwin	adcl	$0,%ebp
811bc3d5698SJohn Baldwin	movl	%ebx,12(%edi)
812bc3d5698SJohn Baldwin	movl	(%esi),%edx
813bc3d5698SJohn Baldwin
814bc3d5698SJohn Baldwin
815bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
816bc3d5698SJohn Baldwin
817bc3d5698SJohn Baldwin	mull	%edx
818bc3d5698SJohn Baldwin	addl	%eax,%eax
819bc3d5698SJohn Baldwin	adcl	%edx,%edx
820bc3d5698SJohn Baldwin	adcl	$0,%ebx
821bc3d5698SJohn Baldwin	addl	%eax,%ecx
822bc3d5698SJohn Baldwin	adcl	%edx,%ebp
823bc3d5698SJohn Baldwin	movl	12(%esi),%eax
824bc3d5698SJohn Baldwin	adcl	$0,%ebx
825bc3d5698SJohn Baldwin	movl	4(%esi),%edx
826bc3d5698SJohn Baldwin
827bc3d5698SJohn Baldwin	mull	%edx
828bc3d5698SJohn Baldwin	addl	%eax,%eax
829bc3d5698SJohn Baldwin	adcl	%edx,%edx
830bc3d5698SJohn Baldwin	adcl	$0,%ebx
831bc3d5698SJohn Baldwin	addl	%eax,%ecx
832bc3d5698SJohn Baldwin	adcl	%edx,%ebp
833bc3d5698SJohn Baldwin	movl	8(%esi),%eax
834bc3d5698SJohn Baldwin	adcl	$0,%ebx
835bc3d5698SJohn Baldwin
836bc3d5698SJohn Baldwin	mull	%eax
837bc3d5698SJohn Baldwin	addl	%eax,%ecx
838bc3d5698SJohn Baldwin	adcl	%edx,%ebp
839bc3d5698SJohn Baldwin	movl	(%esi),%edx
840bc3d5698SJohn Baldwin	adcl	$0,%ebx
841bc3d5698SJohn Baldwin	movl	%ecx,16(%edi)
842bc3d5698SJohn Baldwin	movl	20(%esi),%eax
843bc3d5698SJohn Baldwin
844bc3d5698SJohn Baldwin
845bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
846bc3d5698SJohn Baldwin
847bc3d5698SJohn Baldwin	mull	%edx
848bc3d5698SJohn Baldwin	addl	%eax,%eax
849bc3d5698SJohn Baldwin	adcl	%edx,%edx
850bc3d5698SJohn Baldwin	adcl	$0,%ecx
851bc3d5698SJohn Baldwin	addl	%eax,%ebp
852bc3d5698SJohn Baldwin	adcl	%edx,%ebx
853bc3d5698SJohn Baldwin	movl	16(%esi),%eax
854bc3d5698SJohn Baldwin	adcl	$0,%ecx
855bc3d5698SJohn Baldwin	movl	4(%esi),%edx
856bc3d5698SJohn Baldwin
857bc3d5698SJohn Baldwin	mull	%edx
858bc3d5698SJohn Baldwin	addl	%eax,%eax
859bc3d5698SJohn Baldwin	adcl	%edx,%edx
860bc3d5698SJohn Baldwin	adcl	$0,%ecx
861bc3d5698SJohn Baldwin	addl	%eax,%ebp
862bc3d5698SJohn Baldwin	adcl	%edx,%ebx
863bc3d5698SJohn Baldwin	movl	12(%esi),%eax
864bc3d5698SJohn Baldwin	adcl	$0,%ecx
865bc3d5698SJohn Baldwin	movl	8(%esi),%edx
866bc3d5698SJohn Baldwin
867bc3d5698SJohn Baldwin	mull	%edx
868bc3d5698SJohn Baldwin	addl	%eax,%eax
869bc3d5698SJohn Baldwin	adcl	%edx,%edx
870bc3d5698SJohn Baldwin	adcl	$0,%ecx
871bc3d5698SJohn Baldwin	addl	%eax,%ebp
872bc3d5698SJohn Baldwin	adcl	%edx,%ebx
873bc3d5698SJohn Baldwin	movl	24(%esi),%eax
874bc3d5698SJohn Baldwin	adcl	$0,%ecx
875bc3d5698SJohn Baldwin	movl	%ebp,20(%edi)
876bc3d5698SJohn Baldwin	movl	(%esi),%edx
877bc3d5698SJohn Baldwin
878bc3d5698SJohn Baldwin
879bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
880bc3d5698SJohn Baldwin
881bc3d5698SJohn Baldwin	mull	%edx
882bc3d5698SJohn Baldwin	addl	%eax,%eax
883bc3d5698SJohn Baldwin	adcl	%edx,%edx
884bc3d5698SJohn Baldwin	adcl	$0,%ebp
885bc3d5698SJohn Baldwin	addl	%eax,%ebx
886bc3d5698SJohn Baldwin	adcl	%edx,%ecx
887bc3d5698SJohn Baldwin	movl	20(%esi),%eax
888bc3d5698SJohn Baldwin	adcl	$0,%ebp
889bc3d5698SJohn Baldwin	movl	4(%esi),%edx
890bc3d5698SJohn Baldwin
891bc3d5698SJohn Baldwin	mull	%edx
892bc3d5698SJohn Baldwin	addl	%eax,%eax
893bc3d5698SJohn Baldwin	adcl	%edx,%edx
894bc3d5698SJohn Baldwin	adcl	$0,%ebp
895bc3d5698SJohn Baldwin	addl	%eax,%ebx
896bc3d5698SJohn Baldwin	adcl	%edx,%ecx
897bc3d5698SJohn Baldwin	movl	16(%esi),%eax
898bc3d5698SJohn Baldwin	adcl	$0,%ebp
899bc3d5698SJohn Baldwin	movl	8(%esi),%edx
900bc3d5698SJohn Baldwin
901bc3d5698SJohn Baldwin	mull	%edx
902bc3d5698SJohn Baldwin	addl	%eax,%eax
903bc3d5698SJohn Baldwin	adcl	%edx,%edx
904bc3d5698SJohn Baldwin	adcl	$0,%ebp
905bc3d5698SJohn Baldwin	addl	%eax,%ebx
906bc3d5698SJohn Baldwin	adcl	%edx,%ecx
907bc3d5698SJohn Baldwin	movl	12(%esi),%eax
908bc3d5698SJohn Baldwin	adcl	$0,%ebp
909bc3d5698SJohn Baldwin
910bc3d5698SJohn Baldwin	mull	%eax
911bc3d5698SJohn Baldwin	addl	%eax,%ebx
912bc3d5698SJohn Baldwin	adcl	%edx,%ecx
913bc3d5698SJohn Baldwin	movl	(%esi),%edx
914bc3d5698SJohn Baldwin	adcl	$0,%ebp
915bc3d5698SJohn Baldwin	movl	%ebx,24(%edi)
916bc3d5698SJohn Baldwin	movl	28(%esi),%eax
917bc3d5698SJohn Baldwin
918bc3d5698SJohn Baldwin
919bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
920bc3d5698SJohn Baldwin
921bc3d5698SJohn Baldwin	mull	%edx
922bc3d5698SJohn Baldwin	addl	%eax,%eax
923bc3d5698SJohn Baldwin	adcl	%edx,%edx
924bc3d5698SJohn Baldwin	adcl	$0,%ebx
925bc3d5698SJohn Baldwin	addl	%eax,%ecx
926bc3d5698SJohn Baldwin	adcl	%edx,%ebp
927bc3d5698SJohn Baldwin	movl	24(%esi),%eax
928bc3d5698SJohn Baldwin	adcl	$0,%ebx
929bc3d5698SJohn Baldwin	movl	4(%esi),%edx
930bc3d5698SJohn Baldwin
931bc3d5698SJohn Baldwin	mull	%edx
932bc3d5698SJohn Baldwin	addl	%eax,%eax
933bc3d5698SJohn Baldwin	adcl	%edx,%edx
934bc3d5698SJohn Baldwin	adcl	$0,%ebx
935bc3d5698SJohn Baldwin	addl	%eax,%ecx
936bc3d5698SJohn Baldwin	adcl	%edx,%ebp
937bc3d5698SJohn Baldwin	movl	20(%esi),%eax
938bc3d5698SJohn Baldwin	adcl	$0,%ebx
939bc3d5698SJohn Baldwin	movl	8(%esi),%edx
940bc3d5698SJohn Baldwin
941bc3d5698SJohn Baldwin	mull	%edx
942bc3d5698SJohn Baldwin	addl	%eax,%eax
943bc3d5698SJohn Baldwin	adcl	%edx,%edx
944bc3d5698SJohn Baldwin	adcl	$0,%ebx
945bc3d5698SJohn Baldwin	addl	%eax,%ecx
946bc3d5698SJohn Baldwin	adcl	%edx,%ebp
947bc3d5698SJohn Baldwin	movl	16(%esi),%eax
948bc3d5698SJohn Baldwin	adcl	$0,%ebx
949bc3d5698SJohn Baldwin	movl	12(%esi),%edx
950bc3d5698SJohn Baldwin
951bc3d5698SJohn Baldwin	mull	%edx
952bc3d5698SJohn Baldwin	addl	%eax,%eax
953bc3d5698SJohn Baldwin	adcl	%edx,%edx
954bc3d5698SJohn Baldwin	adcl	$0,%ebx
955bc3d5698SJohn Baldwin	addl	%eax,%ecx
956bc3d5698SJohn Baldwin	adcl	%edx,%ebp
957bc3d5698SJohn Baldwin	movl	28(%esi),%eax
958bc3d5698SJohn Baldwin	adcl	$0,%ebx
959bc3d5698SJohn Baldwin	movl	%ecx,28(%edi)
960bc3d5698SJohn Baldwin	movl	4(%esi),%edx
961bc3d5698SJohn Baldwin
962bc3d5698SJohn Baldwin
963bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
964bc3d5698SJohn Baldwin
965bc3d5698SJohn Baldwin	mull	%edx
966bc3d5698SJohn Baldwin	addl	%eax,%eax
967bc3d5698SJohn Baldwin	adcl	%edx,%edx
968bc3d5698SJohn Baldwin	adcl	$0,%ecx
969bc3d5698SJohn Baldwin	addl	%eax,%ebp
970bc3d5698SJohn Baldwin	adcl	%edx,%ebx
971bc3d5698SJohn Baldwin	movl	24(%esi),%eax
972bc3d5698SJohn Baldwin	adcl	$0,%ecx
973bc3d5698SJohn Baldwin	movl	8(%esi),%edx
974bc3d5698SJohn Baldwin
975bc3d5698SJohn Baldwin	mull	%edx
976bc3d5698SJohn Baldwin	addl	%eax,%eax
977bc3d5698SJohn Baldwin	adcl	%edx,%edx
978bc3d5698SJohn Baldwin	adcl	$0,%ecx
979bc3d5698SJohn Baldwin	addl	%eax,%ebp
980bc3d5698SJohn Baldwin	adcl	%edx,%ebx
981bc3d5698SJohn Baldwin	movl	20(%esi),%eax
982bc3d5698SJohn Baldwin	adcl	$0,%ecx
983bc3d5698SJohn Baldwin	movl	12(%esi),%edx
984bc3d5698SJohn Baldwin
985bc3d5698SJohn Baldwin	mull	%edx
986bc3d5698SJohn Baldwin	addl	%eax,%eax
987bc3d5698SJohn Baldwin	adcl	%edx,%edx
988bc3d5698SJohn Baldwin	adcl	$0,%ecx
989bc3d5698SJohn Baldwin	addl	%eax,%ebp
990bc3d5698SJohn Baldwin	adcl	%edx,%ebx
991bc3d5698SJohn Baldwin	movl	16(%esi),%eax
992bc3d5698SJohn Baldwin	adcl	$0,%ecx
993bc3d5698SJohn Baldwin
994bc3d5698SJohn Baldwin	mull	%eax
995bc3d5698SJohn Baldwin	addl	%eax,%ebp
996bc3d5698SJohn Baldwin	adcl	%edx,%ebx
997bc3d5698SJohn Baldwin	movl	8(%esi),%edx
998bc3d5698SJohn Baldwin	adcl	$0,%ecx
999bc3d5698SJohn Baldwin	movl	%ebp,32(%edi)
1000bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1001bc3d5698SJohn Baldwin
1002bc3d5698SJohn Baldwin
1003bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1004bc3d5698SJohn Baldwin
1005bc3d5698SJohn Baldwin	mull	%edx
1006bc3d5698SJohn Baldwin	addl	%eax,%eax
1007bc3d5698SJohn Baldwin	adcl	%edx,%edx
1008bc3d5698SJohn Baldwin	adcl	$0,%ebp
1009bc3d5698SJohn Baldwin	addl	%eax,%ebx
1010bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1011bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1012bc3d5698SJohn Baldwin	adcl	$0,%ebp
1013bc3d5698SJohn Baldwin	movl	12(%esi),%edx
1014bc3d5698SJohn Baldwin
1015bc3d5698SJohn Baldwin	mull	%edx
1016bc3d5698SJohn Baldwin	addl	%eax,%eax
1017bc3d5698SJohn Baldwin	adcl	%edx,%edx
1018bc3d5698SJohn Baldwin	adcl	$0,%ebp
1019bc3d5698SJohn Baldwin	addl	%eax,%ebx
1020bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1021bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1022bc3d5698SJohn Baldwin	adcl	$0,%ebp
1023bc3d5698SJohn Baldwin	movl	16(%esi),%edx
1024bc3d5698SJohn Baldwin
1025bc3d5698SJohn Baldwin	mull	%edx
1026bc3d5698SJohn Baldwin	addl	%eax,%eax
1027bc3d5698SJohn Baldwin	adcl	%edx,%edx
1028bc3d5698SJohn Baldwin	adcl	$0,%ebp
1029bc3d5698SJohn Baldwin	addl	%eax,%ebx
1030bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1031bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1032bc3d5698SJohn Baldwin	adcl	$0,%ebp
1033bc3d5698SJohn Baldwin	movl	%ebx,36(%edi)
1034bc3d5698SJohn Baldwin	movl	12(%esi),%edx
1035bc3d5698SJohn Baldwin
1036bc3d5698SJohn Baldwin
1037bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1038bc3d5698SJohn Baldwin
1039bc3d5698SJohn Baldwin	mull	%edx
1040bc3d5698SJohn Baldwin	addl	%eax,%eax
1041bc3d5698SJohn Baldwin	adcl	%edx,%edx
1042bc3d5698SJohn Baldwin	adcl	$0,%ebx
1043bc3d5698SJohn Baldwin	addl	%eax,%ecx
1044bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1045bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1046bc3d5698SJohn Baldwin	adcl	$0,%ebx
1047bc3d5698SJohn Baldwin	movl	16(%esi),%edx
1048bc3d5698SJohn Baldwin
1049bc3d5698SJohn Baldwin	mull	%edx
1050bc3d5698SJohn Baldwin	addl	%eax,%eax
1051bc3d5698SJohn Baldwin	adcl	%edx,%edx
1052bc3d5698SJohn Baldwin	adcl	$0,%ebx
1053bc3d5698SJohn Baldwin	addl	%eax,%ecx
1054bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1055bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1056bc3d5698SJohn Baldwin	adcl	$0,%ebx
1057bc3d5698SJohn Baldwin
1058bc3d5698SJohn Baldwin	mull	%eax
1059bc3d5698SJohn Baldwin	addl	%eax,%ecx
1060bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1061bc3d5698SJohn Baldwin	movl	16(%esi),%edx
1062bc3d5698SJohn Baldwin	adcl	$0,%ebx
1063bc3d5698SJohn Baldwin	movl	%ecx,40(%edi)
1064bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1065bc3d5698SJohn Baldwin
1066bc3d5698SJohn Baldwin
1067bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1068bc3d5698SJohn Baldwin
1069bc3d5698SJohn Baldwin	mull	%edx
1070bc3d5698SJohn Baldwin	addl	%eax,%eax
1071bc3d5698SJohn Baldwin	adcl	%edx,%edx
1072bc3d5698SJohn Baldwin	adcl	$0,%ecx
1073bc3d5698SJohn Baldwin	addl	%eax,%ebp
1074bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1075bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1076bc3d5698SJohn Baldwin	adcl	$0,%ecx
1077bc3d5698SJohn Baldwin	movl	20(%esi),%edx
1078bc3d5698SJohn Baldwin
1079bc3d5698SJohn Baldwin	mull	%edx
1080bc3d5698SJohn Baldwin	addl	%eax,%eax
1081bc3d5698SJohn Baldwin	adcl	%edx,%edx
1082bc3d5698SJohn Baldwin	adcl	$0,%ecx
1083bc3d5698SJohn Baldwin	addl	%eax,%ebp
1084bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1085bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1086bc3d5698SJohn Baldwin	adcl	$0,%ecx
1087bc3d5698SJohn Baldwin	movl	%ebp,44(%edi)
1088bc3d5698SJohn Baldwin	movl	20(%esi),%edx
1089bc3d5698SJohn Baldwin
1090bc3d5698SJohn Baldwin
1091bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1092bc3d5698SJohn Baldwin
1093bc3d5698SJohn Baldwin	mull	%edx
1094bc3d5698SJohn Baldwin	addl	%eax,%eax
1095bc3d5698SJohn Baldwin	adcl	%edx,%edx
1096bc3d5698SJohn Baldwin	adcl	$0,%ebp
1097bc3d5698SJohn Baldwin	addl	%eax,%ebx
1098bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1099bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1100bc3d5698SJohn Baldwin	adcl	$0,%ebp
1101bc3d5698SJohn Baldwin
1102bc3d5698SJohn Baldwin	mull	%eax
1103bc3d5698SJohn Baldwin	addl	%eax,%ebx
1104bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1105bc3d5698SJohn Baldwin	movl	24(%esi),%edx
1106bc3d5698SJohn Baldwin	adcl	$0,%ebp
1107bc3d5698SJohn Baldwin	movl	%ebx,48(%edi)
1108bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1109bc3d5698SJohn Baldwin
1110bc3d5698SJohn Baldwin
1111bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1112bc3d5698SJohn Baldwin
1113bc3d5698SJohn Baldwin	mull	%edx
1114bc3d5698SJohn Baldwin	addl	%eax,%eax
1115bc3d5698SJohn Baldwin	adcl	%edx,%edx
1116bc3d5698SJohn Baldwin	adcl	$0,%ebx
1117bc3d5698SJohn Baldwin	addl	%eax,%ecx
1118bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1119bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1120bc3d5698SJohn Baldwin	adcl	$0,%ebx
1121bc3d5698SJohn Baldwin	movl	%ecx,52(%edi)
1122bc3d5698SJohn Baldwin
1123bc3d5698SJohn Baldwin
1124bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1125bc3d5698SJohn Baldwin
1126bc3d5698SJohn Baldwin	mull	%eax
1127bc3d5698SJohn Baldwin	addl	%eax,%ebp
1128bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1129bc3d5698SJohn Baldwin	adcl	$0,%ecx
1130bc3d5698SJohn Baldwin	movl	%ebp,56(%edi)
1131bc3d5698SJohn Baldwin
1132bc3d5698SJohn Baldwin	movl	%ebx,60(%edi)
1133bc3d5698SJohn Baldwin	popl	%ebx
1134bc3d5698SJohn Baldwin	popl	%ebp
1135bc3d5698SJohn Baldwin	popl	%edi
1136bc3d5698SJohn Baldwin	popl	%esi
1137bc3d5698SJohn Baldwin	ret
1138bc3d5698SJohn Baldwin.size	bn_sqr_comba8,.-.L_bn_sqr_comba8_begin
1139bc3d5698SJohn Baldwin.globl	bn_sqr_comba4
1140bc3d5698SJohn Baldwin.type	bn_sqr_comba4,@function
1141bc3d5698SJohn Baldwin.align	16
1142bc3d5698SJohn Baldwinbn_sqr_comba4:
1143bc3d5698SJohn Baldwin.L_bn_sqr_comba4_begin:
1144*c0855eaaSJohn Baldwin	#ifdef __CET__
1145*c0855eaaSJohn Baldwin
1146*c0855eaaSJohn Baldwin.byte	243,15,30,251
1147*c0855eaaSJohn Baldwin	#endif
1148*c0855eaaSJohn Baldwin
1149bc3d5698SJohn Baldwin	pushl	%esi
1150bc3d5698SJohn Baldwin	pushl	%edi
1151bc3d5698SJohn Baldwin	pushl	%ebp
1152bc3d5698SJohn Baldwin	pushl	%ebx
1153bc3d5698SJohn Baldwin	movl	20(%esp),%edi
1154bc3d5698SJohn Baldwin	movl	24(%esp),%esi
1155bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1156bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1157bc3d5698SJohn Baldwin	movl	(%esi),%eax
1158bc3d5698SJohn Baldwin
1159bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1160bc3d5698SJohn Baldwin
1161bc3d5698SJohn Baldwin	mull	%eax
1162bc3d5698SJohn Baldwin	addl	%eax,%ebx
1163bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1164bc3d5698SJohn Baldwin	movl	(%esi),%edx
1165bc3d5698SJohn Baldwin	adcl	$0,%ebp
1166bc3d5698SJohn Baldwin	movl	%ebx,(%edi)
1167bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1168bc3d5698SJohn Baldwin
1169bc3d5698SJohn Baldwin
1170bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1171bc3d5698SJohn Baldwin
1172bc3d5698SJohn Baldwin	mull	%edx
1173bc3d5698SJohn Baldwin	addl	%eax,%eax
1174bc3d5698SJohn Baldwin	adcl	%edx,%edx
1175bc3d5698SJohn Baldwin	adcl	$0,%ebx
1176bc3d5698SJohn Baldwin	addl	%eax,%ecx
1177bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1178bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1179bc3d5698SJohn Baldwin	adcl	$0,%ebx
1180bc3d5698SJohn Baldwin	movl	%ecx,4(%edi)
1181bc3d5698SJohn Baldwin	movl	(%esi),%edx
1182bc3d5698SJohn Baldwin
1183bc3d5698SJohn Baldwin
1184bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1185bc3d5698SJohn Baldwin
1186bc3d5698SJohn Baldwin	mull	%edx
1187bc3d5698SJohn Baldwin	addl	%eax,%eax
1188bc3d5698SJohn Baldwin	adcl	%edx,%edx
1189bc3d5698SJohn Baldwin	adcl	$0,%ecx
1190bc3d5698SJohn Baldwin	addl	%eax,%ebp
1191bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1192bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1193bc3d5698SJohn Baldwin	adcl	$0,%ecx
1194bc3d5698SJohn Baldwin
1195bc3d5698SJohn Baldwin	mull	%eax
1196bc3d5698SJohn Baldwin	addl	%eax,%ebp
1197bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1198bc3d5698SJohn Baldwin	movl	(%esi),%edx
1199bc3d5698SJohn Baldwin	adcl	$0,%ecx
1200bc3d5698SJohn Baldwin	movl	%ebp,8(%edi)
1201bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1202bc3d5698SJohn Baldwin
1203bc3d5698SJohn Baldwin
1204bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1205bc3d5698SJohn Baldwin
1206bc3d5698SJohn Baldwin	mull	%edx
1207bc3d5698SJohn Baldwin	addl	%eax,%eax
1208bc3d5698SJohn Baldwin	adcl	%edx,%edx
1209bc3d5698SJohn Baldwin	adcl	$0,%ebp
1210bc3d5698SJohn Baldwin	addl	%eax,%ebx
1211bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1212bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1213bc3d5698SJohn Baldwin	adcl	$0,%ebp
1214bc3d5698SJohn Baldwin	movl	4(%esi),%edx
1215bc3d5698SJohn Baldwin
1216bc3d5698SJohn Baldwin	mull	%edx
1217bc3d5698SJohn Baldwin	addl	%eax,%eax
1218bc3d5698SJohn Baldwin	adcl	%edx,%edx
1219bc3d5698SJohn Baldwin	adcl	$0,%ebp
1220bc3d5698SJohn Baldwin	addl	%eax,%ebx
1221bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1222bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1223bc3d5698SJohn Baldwin	adcl	$0,%ebp
1224bc3d5698SJohn Baldwin	movl	%ebx,12(%edi)
1225bc3d5698SJohn Baldwin	movl	4(%esi),%edx
1226bc3d5698SJohn Baldwin
1227bc3d5698SJohn Baldwin
1228bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1229bc3d5698SJohn Baldwin
1230bc3d5698SJohn Baldwin	mull	%edx
1231bc3d5698SJohn Baldwin	addl	%eax,%eax
1232bc3d5698SJohn Baldwin	adcl	%edx,%edx
1233bc3d5698SJohn Baldwin	adcl	$0,%ebx
1234bc3d5698SJohn Baldwin	addl	%eax,%ecx
1235bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1236bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1237bc3d5698SJohn Baldwin	adcl	$0,%ebx
1238bc3d5698SJohn Baldwin
1239bc3d5698SJohn Baldwin	mull	%eax
1240bc3d5698SJohn Baldwin	addl	%eax,%ecx
1241bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1242bc3d5698SJohn Baldwin	movl	8(%esi),%edx
1243bc3d5698SJohn Baldwin	adcl	$0,%ebx
1244bc3d5698SJohn Baldwin	movl	%ecx,16(%edi)
1245bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1246bc3d5698SJohn Baldwin
1247bc3d5698SJohn Baldwin
1248bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1249bc3d5698SJohn Baldwin
1250bc3d5698SJohn Baldwin	mull	%edx
1251bc3d5698SJohn Baldwin	addl	%eax,%eax
1252bc3d5698SJohn Baldwin	adcl	%edx,%edx
1253bc3d5698SJohn Baldwin	adcl	$0,%ecx
1254bc3d5698SJohn Baldwin	addl	%eax,%ebp
1255bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1256bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1257bc3d5698SJohn Baldwin	adcl	$0,%ecx
1258bc3d5698SJohn Baldwin	movl	%ebp,20(%edi)
1259bc3d5698SJohn Baldwin
1260bc3d5698SJohn Baldwin
1261bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1262bc3d5698SJohn Baldwin
1263bc3d5698SJohn Baldwin	mull	%eax
1264bc3d5698SJohn Baldwin	addl	%eax,%ebx
1265bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1266bc3d5698SJohn Baldwin	adcl	$0,%ebp
1267bc3d5698SJohn Baldwin	movl	%ebx,24(%edi)
1268bc3d5698SJohn Baldwin
1269bc3d5698SJohn Baldwin	movl	%ecx,28(%edi)
1270bc3d5698SJohn Baldwin	popl	%ebx
1271bc3d5698SJohn Baldwin	popl	%ebp
1272bc3d5698SJohn Baldwin	popl	%edi
1273bc3d5698SJohn Baldwin	popl	%esi
1274bc3d5698SJohn Baldwin	ret
1275bc3d5698SJohn Baldwin.size	bn_sqr_comba4,.-.L_bn_sqr_comba4_begin
1276*c0855eaaSJohn Baldwin
1277*c0855eaaSJohn Baldwin	.section ".note.gnu.property", "a"
1278*c0855eaaSJohn Baldwin	.p2align 2
1279*c0855eaaSJohn Baldwin	.long 1f - 0f
1280*c0855eaaSJohn Baldwin	.long 4f - 1f
1281*c0855eaaSJohn Baldwin	.long 5
1282*c0855eaaSJohn Baldwin0:
1283*c0855eaaSJohn Baldwin	.asciz "GNU"
1284*c0855eaaSJohn Baldwin1:
1285*c0855eaaSJohn Baldwin	.p2align 2
1286*c0855eaaSJohn Baldwin	.long 0xc0000002
1287*c0855eaaSJohn Baldwin	.long 3f - 2f
1288*c0855eaaSJohn Baldwin2:
1289*c0855eaaSJohn Baldwin	.long 3
1290*c0855eaaSJohn Baldwin3:
1291*c0855eaaSJohn Baldwin	.p2align 2
1292*c0855eaaSJohn Baldwin4:
1293bc3d5698SJohn Baldwin#else
1294bc3d5698SJohn Baldwin.text
1295bc3d5698SJohn Baldwin.globl	bn_mul_comba8
1296bc3d5698SJohn Baldwin.type	bn_mul_comba8,@function
1297bc3d5698SJohn Baldwin.align	16
1298bc3d5698SJohn Baldwinbn_mul_comba8:
1299bc3d5698SJohn Baldwin.L_bn_mul_comba8_begin:
1300*c0855eaaSJohn Baldwin	#ifdef __CET__
1301*c0855eaaSJohn Baldwin
1302*c0855eaaSJohn Baldwin.byte	243,15,30,251
1303*c0855eaaSJohn Baldwin	#endif
1304*c0855eaaSJohn Baldwin
1305bc3d5698SJohn Baldwin	pushl	%esi
1306bc3d5698SJohn Baldwin	movl	12(%esp),%esi
1307bc3d5698SJohn Baldwin	pushl	%edi
1308bc3d5698SJohn Baldwin	movl	20(%esp),%edi
1309bc3d5698SJohn Baldwin	pushl	%ebp
1310bc3d5698SJohn Baldwin	pushl	%ebx
1311bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1312bc3d5698SJohn Baldwin	movl	(%esi),%eax
1313bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1314bc3d5698SJohn Baldwin	movl	(%edi),%edx
1315bc3d5698SJohn Baldwin
1316bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1317bc3d5698SJohn Baldwin
1318bc3d5698SJohn Baldwin	mull	%edx
1319bc3d5698SJohn Baldwin	addl	%eax,%ebx
1320bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1321bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1322bc3d5698SJohn Baldwin	movl	(%edi),%edx
1323bc3d5698SJohn Baldwin	adcl	$0,%ebp
1324bc3d5698SJohn Baldwin	movl	%ebx,(%eax)
1325bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1326bc3d5698SJohn Baldwin
1327bc3d5698SJohn Baldwin
1328bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1329bc3d5698SJohn Baldwin
1330bc3d5698SJohn Baldwin	mull	%edx
1331bc3d5698SJohn Baldwin	addl	%eax,%ecx
1332bc3d5698SJohn Baldwin	movl	(%esi),%eax
1333bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1334bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1335bc3d5698SJohn Baldwin	adcl	$0,%ebx
1336bc3d5698SJohn Baldwin
1337bc3d5698SJohn Baldwin	mull	%edx
1338bc3d5698SJohn Baldwin	addl	%eax,%ecx
1339bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1340bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1341bc3d5698SJohn Baldwin	movl	(%edi),%edx
1342bc3d5698SJohn Baldwin	adcl	$0,%ebx
1343bc3d5698SJohn Baldwin	movl	%ecx,4(%eax)
1344bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1345bc3d5698SJohn Baldwin
1346bc3d5698SJohn Baldwin
1347bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1348bc3d5698SJohn Baldwin
1349bc3d5698SJohn Baldwin	mull	%edx
1350bc3d5698SJohn Baldwin	addl	%eax,%ebp
1351bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1352bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1353bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1354bc3d5698SJohn Baldwin	adcl	$0,%ecx
1355bc3d5698SJohn Baldwin
1356bc3d5698SJohn Baldwin	mull	%edx
1357bc3d5698SJohn Baldwin	addl	%eax,%ebp
1358bc3d5698SJohn Baldwin	movl	(%esi),%eax
1359bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1360bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1361bc3d5698SJohn Baldwin	adcl	$0,%ecx
1362bc3d5698SJohn Baldwin
1363bc3d5698SJohn Baldwin	mull	%edx
1364bc3d5698SJohn Baldwin	addl	%eax,%ebp
1365bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1366bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1367bc3d5698SJohn Baldwin	movl	(%edi),%edx
1368bc3d5698SJohn Baldwin	adcl	$0,%ecx
1369bc3d5698SJohn Baldwin	movl	%ebp,8(%eax)
1370bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1371bc3d5698SJohn Baldwin
1372bc3d5698SJohn Baldwin
1373bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1374bc3d5698SJohn Baldwin
1375bc3d5698SJohn Baldwin	mull	%edx
1376bc3d5698SJohn Baldwin	addl	%eax,%ebx
1377bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1378bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1379bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1380bc3d5698SJohn Baldwin	adcl	$0,%ebp
1381bc3d5698SJohn Baldwin
1382bc3d5698SJohn Baldwin	mull	%edx
1383bc3d5698SJohn Baldwin	addl	%eax,%ebx
1384bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1385bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1386bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1387bc3d5698SJohn Baldwin	adcl	$0,%ebp
1388bc3d5698SJohn Baldwin
1389bc3d5698SJohn Baldwin	mull	%edx
1390bc3d5698SJohn Baldwin	addl	%eax,%ebx
1391bc3d5698SJohn Baldwin	movl	(%esi),%eax
1392bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1393bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1394bc3d5698SJohn Baldwin	adcl	$0,%ebp
1395bc3d5698SJohn Baldwin
1396bc3d5698SJohn Baldwin	mull	%edx
1397bc3d5698SJohn Baldwin	addl	%eax,%ebx
1398bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1399bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1400bc3d5698SJohn Baldwin	movl	(%edi),%edx
1401bc3d5698SJohn Baldwin	adcl	$0,%ebp
1402bc3d5698SJohn Baldwin	movl	%ebx,12(%eax)
1403bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1404bc3d5698SJohn Baldwin
1405bc3d5698SJohn Baldwin
1406bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1407bc3d5698SJohn Baldwin
1408bc3d5698SJohn Baldwin	mull	%edx
1409bc3d5698SJohn Baldwin	addl	%eax,%ecx
1410bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1411bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1412bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1413bc3d5698SJohn Baldwin	adcl	$0,%ebx
1414bc3d5698SJohn Baldwin
1415bc3d5698SJohn Baldwin	mull	%edx
1416bc3d5698SJohn Baldwin	addl	%eax,%ecx
1417bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1418bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1419bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1420bc3d5698SJohn Baldwin	adcl	$0,%ebx
1421bc3d5698SJohn Baldwin
1422bc3d5698SJohn Baldwin	mull	%edx
1423bc3d5698SJohn Baldwin	addl	%eax,%ecx
1424bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1425bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1426bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1427bc3d5698SJohn Baldwin	adcl	$0,%ebx
1428bc3d5698SJohn Baldwin
1429bc3d5698SJohn Baldwin	mull	%edx
1430bc3d5698SJohn Baldwin	addl	%eax,%ecx
1431bc3d5698SJohn Baldwin	movl	(%esi),%eax
1432bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1433bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1434bc3d5698SJohn Baldwin	adcl	$0,%ebx
1435bc3d5698SJohn Baldwin
1436bc3d5698SJohn Baldwin	mull	%edx
1437bc3d5698SJohn Baldwin	addl	%eax,%ecx
1438bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1439bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1440bc3d5698SJohn Baldwin	movl	(%edi),%edx
1441bc3d5698SJohn Baldwin	adcl	$0,%ebx
1442bc3d5698SJohn Baldwin	movl	%ecx,16(%eax)
1443bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1444bc3d5698SJohn Baldwin
1445bc3d5698SJohn Baldwin
1446bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1447bc3d5698SJohn Baldwin
1448bc3d5698SJohn Baldwin	mull	%edx
1449bc3d5698SJohn Baldwin	addl	%eax,%ebp
1450bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1451bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1452bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1453bc3d5698SJohn Baldwin	adcl	$0,%ecx
1454bc3d5698SJohn Baldwin
1455bc3d5698SJohn Baldwin	mull	%edx
1456bc3d5698SJohn Baldwin	addl	%eax,%ebp
1457bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1458bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1459bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1460bc3d5698SJohn Baldwin	adcl	$0,%ecx
1461bc3d5698SJohn Baldwin
1462bc3d5698SJohn Baldwin	mull	%edx
1463bc3d5698SJohn Baldwin	addl	%eax,%ebp
1464bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1465bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1466bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1467bc3d5698SJohn Baldwin	adcl	$0,%ecx
1468bc3d5698SJohn Baldwin
1469bc3d5698SJohn Baldwin	mull	%edx
1470bc3d5698SJohn Baldwin	addl	%eax,%ebp
1471bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1472bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1473bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1474bc3d5698SJohn Baldwin	adcl	$0,%ecx
1475bc3d5698SJohn Baldwin
1476bc3d5698SJohn Baldwin	mull	%edx
1477bc3d5698SJohn Baldwin	addl	%eax,%ebp
1478bc3d5698SJohn Baldwin	movl	(%esi),%eax
1479bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1480bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1481bc3d5698SJohn Baldwin	adcl	$0,%ecx
1482bc3d5698SJohn Baldwin
1483bc3d5698SJohn Baldwin	mull	%edx
1484bc3d5698SJohn Baldwin	addl	%eax,%ebp
1485bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1486bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1487bc3d5698SJohn Baldwin	movl	(%edi),%edx
1488bc3d5698SJohn Baldwin	adcl	$0,%ecx
1489bc3d5698SJohn Baldwin	movl	%ebp,20(%eax)
1490bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1491bc3d5698SJohn Baldwin
1492bc3d5698SJohn Baldwin
1493bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1494bc3d5698SJohn Baldwin
1495bc3d5698SJohn Baldwin	mull	%edx
1496bc3d5698SJohn Baldwin	addl	%eax,%ebx
1497bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1498bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1499bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1500bc3d5698SJohn Baldwin	adcl	$0,%ebp
1501bc3d5698SJohn Baldwin
1502bc3d5698SJohn Baldwin	mull	%edx
1503bc3d5698SJohn Baldwin	addl	%eax,%ebx
1504bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1505bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1506bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1507bc3d5698SJohn Baldwin	adcl	$0,%ebp
1508bc3d5698SJohn Baldwin
1509bc3d5698SJohn Baldwin	mull	%edx
1510bc3d5698SJohn Baldwin	addl	%eax,%ebx
1511bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1512bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1513bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1514bc3d5698SJohn Baldwin	adcl	$0,%ebp
1515bc3d5698SJohn Baldwin
1516bc3d5698SJohn Baldwin	mull	%edx
1517bc3d5698SJohn Baldwin	addl	%eax,%ebx
1518bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1519bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1520bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1521bc3d5698SJohn Baldwin	adcl	$0,%ebp
1522bc3d5698SJohn Baldwin
1523bc3d5698SJohn Baldwin	mull	%edx
1524bc3d5698SJohn Baldwin	addl	%eax,%ebx
1525bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1526bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1527bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1528bc3d5698SJohn Baldwin	adcl	$0,%ebp
1529bc3d5698SJohn Baldwin
1530bc3d5698SJohn Baldwin	mull	%edx
1531bc3d5698SJohn Baldwin	addl	%eax,%ebx
1532bc3d5698SJohn Baldwin	movl	(%esi),%eax
1533bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1534bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1535bc3d5698SJohn Baldwin	adcl	$0,%ebp
1536bc3d5698SJohn Baldwin
1537bc3d5698SJohn Baldwin	mull	%edx
1538bc3d5698SJohn Baldwin	addl	%eax,%ebx
1539bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1540bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1541bc3d5698SJohn Baldwin	movl	(%edi),%edx
1542bc3d5698SJohn Baldwin	adcl	$0,%ebp
1543bc3d5698SJohn Baldwin	movl	%ebx,24(%eax)
1544bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1545bc3d5698SJohn Baldwin
1546bc3d5698SJohn Baldwin
1547bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1548bc3d5698SJohn Baldwin
1549bc3d5698SJohn Baldwin	mull	%edx
1550bc3d5698SJohn Baldwin	addl	%eax,%ecx
1551bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1552bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1553bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1554bc3d5698SJohn Baldwin	adcl	$0,%ebx
1555bc3d5698SJohn Baldwin
1556bc3d5698SJohn Baldwin	mull	%edx
1557bc3d5698SJohn Baldwin	addl	%eax,%ecx
1558bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1559bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1560bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1561bc3d5698SJohn Baldwin	adcl	$0,%ebx
1562bc3d5698SJohn Baldwin
1563bc3d5698SJohn Baldwin	mull	%edx
1564bc3d5698SJohn Baldwin	addl	%eax,%ecx
1565bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1566bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1567bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1568bc3d5698SJohn Baldwin	adcl	$0,%ebx
1569bc3d5698SJohn Baldwin
1570bc3d5698SJohn Baldwin	mull	%edx
1571bc3d5698SJohn Baldwin	addl	%eax,%ecx
1572bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1573bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1574bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1575bc3d5698SJohn Baldwin	adcl	$0,%ebx
1576bc3d5698SJohn Baldwin
1577bc3d5698SJohn Baldwin	mull	%edx
1578bc3d5698SJohn Baldwin	addl	%eax,%ecx
1579bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1580bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1581bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1582bc3d5698SJohn Baldwin	adcl	$0,%ebx
1583bc3d5698SJohn Baldwin
1584bc3d5698SJohn Baldwin	mull	%edx
1585bc3d5698SJohn Baldwin	addl	%eax,%ecx
1586bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1587bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1588bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1589bc3d5698SJohn Baldwin	adcl	$0,%ebx
1590bc3d5698SJohn Baldwin
1591bc3d5698SJohn Baldwin	mull	%edx
1592bc3d5698SJohn Baldwin	addl	%eax,%ecx
1593bc3d5698SJohn Baldwin	movl	(%esi),%eax
1594bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1595bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1596bc3d5698SJohn Baldwin	adcl	$0,%ebx
1597bc3d5698SJohn Baldwin
1598bc3d5698SJohn Baldwin	mull	%edx
1599bc3d5698SJohn Baldwin	addl	%eax,%ecx
1600bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1601bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1602bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1603bc3d5698SJohn Baldwin	adcl	$0,%ebx
1604bc3d5698SJohn Baldwin	movl	%ecx,28(%eax)
1605bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1606bc3d5698SJohn Baldwin
1607bc3d5698SJohn Baldwin
1608bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1609bc3d5698SJohn Baldwin
1610bc3d5698SJohn Baldwin	mull	%edx
1611bc3d5698SJohn Baldwin	addl	%eax,%ebp
1612bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1613bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1614bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1615bc3d5698SJohn Baldwin	adcl	$0,%ecx
1616bc3d5698SJohn Baldwin
1617bc3d5698SJohn Baldwin	mull	%edx
1618bc3d5698SJohn Baldwin	addl	%eax,%ebp
1619bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1620bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1621bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1622bc3d5698SJohn Baldwin	adcl	$0,%ecx
1623bc3d5698SJohn Baldwin
1624bc3d5698SJohn Baldwin	mull	%edx
1625bc3d5698SJohn Baldwin	addl	%eax,%ebp
1626bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1627bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1628bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1629bc3d5698SJohn Baldwin	adcl	$0,%ecx
1630bc3d5698SJohn Baldwin
1631bc3d5698SJohn Baldwin	mull	%edx
1632bc3d5698SJohn Baldwin	addl	%eax,%ebp
1633bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1634bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1635bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1636bc3d5698SJohn Baldwin	adcl	$0,%ecx
1637bc3d5698SJohn Baldwin
1638bc3d5698SJohn Baldwin	mull	%edx
1639bc3d5698SJohn Baldwin	addl	%eax,%ebp
1640bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1641bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1642bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1643bc3d5698SJohn Baldwin	adcl	$0,%ecx
1644bc3d5698SJohn Baldwin
1645bc3d5698SJohn Baldwin	mull	%edx
1646bc3d5698SJohn Baldwin	addl	%eax,%ebp
1647bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1648bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1649bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1650bc3d5698SJohn Baldwin	adcl	$0,%ecx
1651bc3d5698SJohn Baldwin
1652bc3d5698SJohn Baldwin	mull	%edx
1653bc3d5698SJohn Baldwin	addl	%eax,%ebp
1654bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1655bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1656bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1657bc3d5698SJohn Baldwin	adcl	$0,%ecx
1658bc3d5698SJohn Baldwin	movl	%ebp,32(%eax)
1659bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1660bc3d5698SJohn Baldwin
1661bc3d5698SJohn Baldwin
1662bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1663bc3d5698SJohn Baldwin
1664bc3d5698SJohn Baldwin	mull	%edx
1665bc3d5698SJohn Baldwin	addl	%eax,%ebx
1666bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1667bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1668bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1669bc3d5698SJohn Baldwin	adcl	$0,%ebp
1670bc3d5698SJohn Baldwin
1671bc3d5698SJohn Baldwin	mull	%edx
1672bc3d5698SJohn Baldwin	addl	%eax,%ebx
1673bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1674bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1675bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1676bc3d5698SJohn Baldwin	adcl	$0,%ebp
1677bc3d5698SJohn Baldwin
1678bc3d5698SJohn Baldwin	mull	%edx
1679bc3d5698SJohn Baldwin	addl	%eax,%ebx
1680bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1681bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1682bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1683bc3d5698SJohn Baldwin	adcl	$0,%ebp
1684bc3d5698SJohn Baldwin
1685bc3d5698SJohn Baldwin	mull	%edx
1686bc3d5698SJohn Baldwin	addl	%eax,%ebx
1687bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1688bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1689bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1690bc3d5698SJohn Baldwin	adcl	$0,%ebp
1691bc3d5698SJohn Baldwin
1692bc3d5698SJohn Baldwin	mull	%edx
1693bc3d5698SJohn Baldwin	addl	%eax,%ebx
1694bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1695bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1696bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1697bc3d5698SJohn Baldwin	adcl	$0,%ebp
1698bc3d5698SJohn Baldwin
1699bc3d5698SJohn Baldwin	mull	%edx
1700bc3d5698SJohn Baldwin	addl	%eax,%ebx
1701bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1702bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1703bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1704bc3d5698SJohn Baldwin	adcl	$0,%ebp
1705bc3d5698SJohn Baldwin	movl	%ebx,36(%eax)
1706bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1707bc3d5698SJohn Baldwin
1708bc3d5698SJohn Baldwin
1709bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1710bc3d5698SJohn Baldwin
1711bc3d5698SJohn Baldwin	mull	%edx
1712bc3d5698SJohn Baldwin	addl	%eax,%ecx
1713bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1714bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1715bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1716bc3d5698SJohn Baldwin	adcl	$0,%ebx
1717bc3d5698SJohn Baldwin
1718bc3d5698SJohn Baldwin	mull	%edx
1719bc3d5698SJohn Baldwin	addl	%eax,%ecx
1720bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1721bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1722bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1723bc3d5698SJohn Baldwin	adcl	$0,%ebx
1724bc3d5698SJohn Baldwin
1725bc3d5698SJohn Baldwin	mull	%edx
1726bc3d5698SJohn Baldwin	addl	%eax,%ecx
1727bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1728bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1729bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1730bc3d5698SJohn Baldwin	adcl	$0,%ebx
1731bc3d5698SJohn Baldwin
1732bc3d5698SJohn Baldwin	mull	%edx
1733bc3d5698SJohn Baldwin	addl	%eax,%ecx
1734bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1735bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1736bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1737bc3d5698SJohn Baldwin	adcl	$0,%ebx
1738bc3d5698SJohn Baldwin
1739bc3d5698SJohn Baldwin	mull	%edx
1740bc3d5698SJohn Baldwin	addl	%eax,%ecx
1741bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1742bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1743bc3d5698SJohn Baldwin	movl	16(%edi),%edx
1744bc3d5698SJohn Baldwin	adcl	$0,%ebx
1745bc3d5698SJohn Baldwin	movl	%ecx,40(%eax)
1746bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1747bc3d5698SJohn Baldwin
1748bc3d5698SJohn Baldwin
1749bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1750bc3d5698SJohn Baldwin
1751bc3d5698SJohn Baldwin	mull	%edx
1752bc3d5698SJohn Baldwin	addl	%eax,%ebp
1753bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1754bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1755bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1756bc3d5698SJohn Baldwin	adcl	$0,%ecx
1757bc3d5698SJohn Baldwin
1758bc3d5698SJohn Baldwin	mull	%edx
1759bc3d5698SJohn Baldwin	addl	%eax,%ebp
1760bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1761bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1762bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1763bc3d5698SJohn Baldwin	adcl	$0,%ecx
1764bc3d5698SJohn Baldwin
1765bc3d5698SJohn Baldwin	mull	%edx
1766bc3d5698SJohn Baldwin	addl	%eax,%ebp
1767bc3d5698SJohn Baldwin	movl	16(%esi),%eax
1768bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1769bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1770bc3d5698SJohn Baldwin	adcl	$0,%ecx
1771bc3d5698SJohn Baldwin
1772bc3d5698SJohn Baldwin	mull	%edx
1773bc3d5698SJohn Baldwin	addl	%eax,%ebp
1774bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1775bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1776bc3d5698SJohn Baldwin	movl	20(%edi),%edx
1777bc3d5698SJohn Baldwin	adcl	$0,%ecx
1778bc3d5698SJohn Baldwin	movl	%ebp,44(%eax)
1779bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1780bc3d5698SJohn Baldwin
1781bc3d5698SJohn Baldwin
1782bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1783bc3d5698SJohn Baldwin
1784bc3d5698SJohn Baldwin	mull	%edx
1785bc3d5698SJohn Baldwin	addl	%eax,%ebx
1786bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1787bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1788bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1789bc3d5698SJohn Baldwin	adcl	$0,%ebp
1790bc3d5698SJohn Baldwin
1791bc3d5698SJohn Baldwin	mull	%edx
1792bc3d5698SJohn Baldwin	addl	%eax,%ebx
1793bc3d5698SJohn Baldwin	movl	20(%esi),%eax
1794bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1795bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1796bc3d5698SJohn Baldwin	adcl	$0,%ebp
1797bc3d5698SJohn Baldwin
1798bc3d5698SJohn Baldwin	mull	%edx
1799bc3d5698SJohn Baldwin	addl	%eax,%ebx
1800bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1801bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1802bc3d5698SJohn Baldwin	movl	24(%edi),%edx
1803bc3d5698SJohn Baldwin	adcl	$0,%ebp
1804bc3d5698SJohn Baldwin	movl	%ebx,48(%eax)
1805bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1806bc3d5698SJohn Baldwin
1807bc3d5698SJohn Baldwin
1808bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1809bc3d5698SJohn Baldwin
1810bc3d5698SJohn Baldwin	mull	%edx
1811bc3d5698SJohn Baldwin	addl	%eax,%ecx
1812bc3d5698SJohn Baldwin	movl	24(%esi),%eax
1813bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1814bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1815bc3d5698SJohn Baldwin	adcl	$0,%ebx
1816bc3d5698SJohn Baldwin
1817bc3d5698SJohn Baldwin	mull	%edx
1818bc3d5698SJohn Baldwin	addl	%eax,%ecx
1819bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1820bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1821bc3d5698SJohn Baldwin	movl	28(%edi),%edx
1822bc3d5698SJohn Baldwin	adcl	$0,%ebx
1823bc3d5698SJohn Baldwin	movl	%ecx,52(%eax)
1824bc3d5698SJohn Baldwin	movl	28(%esi),%eax
1825bc3d5698SJohn Baldwin
1826bc3d5698SJohn Baldwin
1827bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1828bc3d5698SJohn Baldwin
1829bc3d5698SJohn Baldwin	mull	%edx
1830bc3d5698SJohn Baldwin	addl	%eax,%ebp
1831bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1832bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1833bc3d5698SJohn Baldwin	adcl	$0,%ecx
1834bc3d5698SJohn Baldwin	movl	%ebp,56(%eax)
1835bc3d5698SJohn Baldwin
1836bc3d5698SJohn Baldwin
1837bc3d5698SJohn Baldwin	movl	%ebx,60(%eax)
1838bc3d5698SJohn Baldwin	popl	%ebx
1839bc3d5698SJohn Baldwin	popl	%ebp
1840bc3d5698SJohn Baldwin	popl	%edi
1841bc3d5698SJohn Baldwin	popl	%esi
1842bc3d5698SJohn Baldwin	ret
1843bc3d5698SJohn Baldwin.size	bn_mul_comba8,.-.L_bn_mul_comba8_begin
1844bc3d5698SJohn Baldwin.globl	bn_mul_comba4
1845bc3d5698SJohn Baldwin.type	bn_mul_comba4,@function
1846bc3d5698SJohn Baldwin.align	16
1847bc3d5698SJohn Baldwinbn_mul_comba4:
1848bc3d5698SJohn Baldwin.L_bn_mul_comba4_begin:
1849*c0855eaaSJohn Baldwin	#ifdef __CET__
1850*c0855eaaSJohn Baldwin
1851*c0855eaaSJohn Baldwin.byte	243,15,30,251
1852*c0855eaaSJohn Baldwin	#endif
1853*c0855eaaSJohn Baldwin
1854bc3d5698SJohn Baldwin	pushl	%esi
1855bc3d5698SJohn Baldwin	movl	12(%esp),%esi
1856bc3d5698SJohn Baldwin	pushl	%edi
1857bc3d5698SJohn Baldwin	movl	20(%esp),%edi
1858bc3d5698SJohn Baldwin	pushl	%ebp
1859bc3d5698SJohn Baldwin	pushl	%ebx
1860bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1861bc3d5698SJohn Baldwin	movl	(%esi),%eax
1862bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1863bc3d5698SJohn Baldwin	movl	(%edi),%edx
1864bc3d5698SJohn Baldwin
1865bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1866bc3d5698SJohn Baldwin
1867bc3d5698SJohn Baldwin	mull	%edx
1868bc3d5698SJohn Baldwin	addl	%eax,%ebx
1869bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1870bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1871bc3d5698SJohn Baldwin	movl	(%edi),%edx
1872bc3d5698SJohn Baldwin	adcl	$0,%ebp
1873bc3d5698SJohn Baldwin	movl	%ebx,(%eax)
1874bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1875bc3d5698SJohn Baldwin
1876bc3d5698SJohn Baldwin
1877bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1878bc3d5698SJohn Baldwin
1879bc3d5698SJohn Baldwin	mull	%edx
1880bc3d5698SJohn Baldwin	addl	%eax,%ecx
1881bc3d5698SJohn Baldwin	movl	(%esi),%eax
1882bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1883bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1884bc3d5698SJohn Baldwin	adcl	$0,%ebx
1885bc3d5698SJohn Baldwin
1886bc3d5698SJohn Baldwin	mull	%edx
1887bc3d5698SJohn Baldwin	addl	%eax,%ecx
1888bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1889bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1890bc3d5698SJohn Baldwin	movl	(%edi),%edx
1891bc3d5698SJohn Baldwin	adcl	$0,%ebx
1892bc3d5698SJohn Baldwin	movl	%ecx,4(%eax)
1893bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1894bc3d5698SJohn Baldwin
1895bc3d5698SJohn Baldwin
1896bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1897bc3d5698SJohn Baldwin
1898bc3d5698SJohn Baldwin	mull	%edx
1899bc3d5698SJohn Baldwin	addl	%eax,%ebp
1900bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1901bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1902bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1903bc3d5698SJohn Baldwin	adcl	$0,%ecx
1904bc3d5698SJohn Baldwin
1905bc3d5698SJohn Baldwin	mull	%edx
1906bc3d5698SJohn Baldwin	addl	%eax,%ebp
1907bc3d5698SJohn Baldwin	movl	(%esi),%eax
1908bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1909bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1910bc3d5698SJohn Baldwin	adcl	$0,%ecx
1911bc3d5698SJohn Baldwin
1912bc3d5698SJohn Baldwin	mull	%edx
1913bc3d5698SJohn Baldwin	addl	%eax,%ebp
1914bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1915bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1916bc3d5698SJohn Baldwin	movl	(%edi),%edx
1917bc3d5698SJohn Baldwin	adcl	$0,%ecx
1918bc3d5698SJohn Baldwin	movl	%ebp,8(%eax)
1919bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1920bc3d5698SJohn Baldwin
1921bc3d5698SJohn Baldwin
1922bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
1923bc3d5698SJohn Baldwin
1924bc3d5698SJohn Baldwin	mull	%edx
1925bc3d5698SJohn Baldwin	addl	%eax,%ebx
1926bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1927bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1928bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1929bc3d5698SJohn Baldwin	adcl	$0,%ebp
1930bc3d5698SJohn Baldwin
1931bc3d5698SJohn Baldwin	mull	%edx
1932bc3d5698SJohn Baldwin	addl	%eax,%ebx
1933bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1934bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1935bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1936bc3d5698SJohn Baldwin	adcl	$0,%ebp
1937bc3d5698SJohn Baldwin
1938bc3d5698SJohn Baldwin	mull	%edx
1939bc3d5698SJohn Baldwin	addl	%eax,%ebx
1940bc3d5698SJohn Baldwin	movl	(%esi),%eax
1941bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1942bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1943bc3d5698SJohn Baldwin	adcl	$0,%ebp
1944bc3d5698SJohn Baldwin
1945bc3d5698SJohn Baldwin	mull	%edx
1946bc3d5698SJohn Baldwin	addl	%eax,%ebx
1947bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1948bc3d5698SJohn Baldwin	adcl	%edx,%ecx
1949bc3d5698SJohn Baldwin	movl	4(%edi),%edx
1950bc3d5698SJohn Baldwin	adcl	$0,%ebp
1951bc3d5698SJohn Baldwin	movl	%ebx,12(%eax)
1952bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1953bc3d5698SJohn Baldwin
1954bc3d5698SJohn Baldwin
1955bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
1956bc3d5698SJohn Baldwin
1957bc3d5698SJohn Baldwin	mull	%edx
1958bc3d5698SJohn Baldwin	addl	%eax,%ecx
1959bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1960bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1961bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1962bc3d5698SJohn Baldwin	adcl	$0,%ebx
1963bc3d5698SJohn Baldwin
1964bc3d5698SJohn Baldwin	mull	%edx
1965bc3d5698SJohn Baldwin	addl	%eax,%ecx
1966bc3d5698SJohn Baldwin	movl	4(%esi),%eax
1967bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1968bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1969bc3d5698SJohn Baldwin	adcl	$0,%ebx
1970bc3d5698SJohn Baldwin
1971bc3d5698SJohn Baldwin	mull	%edx
1972bc3d5698SJohn Baldwin	addl	%eax,%ecx
1973bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1974bc3d5698SJohn Baldwin	adcl	%edx,%ebp
1975bc3d5698SJohn Baldwin	movl	8(%edi),%edx
1976bc3d5698SJohn Baldwin	adcl	$0,%ebx
1977bc3d5698SJohn Baldwin	movl	%ecx,16(%eax)
1978bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1979bc3d5698SJohn Baldwin
1980bc3d5698SJohn Baldwin
1981bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
1982bc3d5698SJohn Baldwin
1983bc3d5698SJohn Baldwin	mull	%edx
1984bc3d5698SJohn Baldwin	addl	%eax,%ebp
1985bc3d5698SJohn Baldwin	movl	8(%esi),%eax
1986bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1987bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1988bc3d5698SJohn Baldwin	adcl	$0,%ecx
1989bc3d5698SJohn Baldwin
1990bc3d5698SJohn Baldwin	mull	%edx
1991bc3d5698SJohn Baldwin	addl	%eax,%ebp
1992bc3d5698SJohn Baldwin	movl	20(%esp),%eax
1993bc3d5698SJohn Baldwin	adcl	%edx,%ebx
1994bc3d5698SJohn Baldwin	movl	12(%edi),%edx
1995bc3d5698SJohn Baldwin	adcl	$0,%ecx
1996bc3d5698SJohn Baldwin	movl	%ebp,20(%eax)
1997bc3d5698SJohn Baldwin	movl	12(%esi),%eax
1998bc3d5698SJohn Baldwin
1999bc3d5698SJohn Baldwin
2000bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2001bc3d5698SJohn Baldwin
2002bc3d5698SJohn Baldwin	mull	%edx
2003bc3d5698SJohn Baldwin	addl	%eax,%ebx
2004bc3d5698SJohn Baldwin	movl	20(%esp),%eax
2005bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2006bc3d5698SJohn Baldwin	adcl	$0,%ebp
2007bc3d5698SJohn Baldwin	movl	%ebx,24(%eax)
2008bc3d5698SJohn Baldwin
2009bc3d5698SJohn Baldwin
2010bc3d5698SJohn Baldwin	movl	%ecx,28(%eax)
2011bc3d5698SJohn Baldwin	popl	%ebx
2012bc3d5698SJohn Baldwin	popl	%ebp
2013bc3d5698SJohn Baldwin	popl	%edi
2014bc3d5698SJohn Baldwin	popl	%esi
2015bc3d5698SJohn Baldwin	ret
2016bc3d5698SJohn Baldwin.size	bn_mul_comba4,.-.L_bn_mul_comba4_begin
2017bc3d5698SJohn Baldwin.globl	bn_sqr_comba8
2018bc3d5698SJohn Baldwin.type	bn_sqr_comba8,@function
2019bc3d5698SJohn Baldwin.align	16
2020bc3d5698SJohn Baldwinbn_sqr_comba8:
2021bc3d5698SJohn Baldwin.L_bn_sqr_comba8_begin:
2022*c0855eaaSJohn Baldwin	#ifdef __CET__
2023*c0855eaaSJohn Baldwin
2024*c0855eaaSJohn Baldwin.byte	243,15,30,251
2025*c0855eaaSJohn Baldwin	#endif
2026*c0855eaaSJohn Baldwin
2027bc3d5698SJohn Baldwin	pushl	%esi
2028bc3d5698SJohn Baldwin	pushl	%edi
2029bc3d5698SJohn Baldwin	pushl	%ebp
2030bc3d5698SJohn Baldwin	pushl	%ebx
2031bc3d5698SJohn Baldwin	movl	20(%esp),%edi
2032bc3d5698SJohn Baldwin	movl	24(%esp),%esi
2033bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2034bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2035bc3d5698SJohn Baldwin	movl	(%esi),%eax
2036bc3d5698SJohn Baldwin
2037bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2038bc3d5698SJohn Baldwin
2039bc3d5698SJohn Baldwin	mull	%eax
2040bc3d5698SJohn Baldwin	addl	%eax,%ebx
2041bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2042bc3d5698SJohn Baldwin	movl	(%esi),%edx
2043bc3d5698SJohn Baldwin	adcl	$0,%ebp
2044bc3d5698SJohn Baldwin	movl	%ebx,(%edi)
2045bc3d5698SJohn Baldwin	movl	4(%esi),%eax
2046bc3d5698SJohn Baldwin
2047bc3d5698SJohn Baldwin
2048bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2049bc3d5698SJohn Baldwin
2050bc3d5698SJohn Baldwin	mull	%edx
2051bc3d5698SJohn Baldwin	addl	%eax,%eax
2052bc3d5698SJohn Baldwin	adcl	%edx,%edx
2053bc3d5698SJohn Baldwin	adcl	$0,%ebx
2054bc3d5698SJohn Baldwin	addl	%eax,%ecx
2055bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2056bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2057bc3d5698SJohn Baldwin	adcl	$0,%ebx
2058bc3d5698SJohn Baldwin	movl	%ecx,4(%edi)
2059bc3d5698SJohn Baldwin	movl	(%esi),%edx
2060bc3d5698SJohn Baldwin
2061bc3d5698SJohn Baldwin
2062bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2063bc3d5698SJohn Baldwin
2064bc3d5698SJohn Baldwin	mull	%edx
2065bc3d5698SJohn Baldwin	addl	%eax,%eax
2066bc3d5698SJohn Baldwin	adcl	%edx,%edx
2067bc3d5698SJohn Baldwin	adcl	$0,%ecx
2068bc3d5698SJohn Baldwin	addl	%eax,%ebp
2069bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2070bc3d5698SJohn Baldwin	movl	4(%esi),%eax
2071bc3d5698SJohn Baldwin	adcl	$0,%ecx
2072bc3d5698SJohn Baldwin
2073bc3d5698SJohn Baldwin	mull	%eax
2074bc3d5698SJohn Baldwin	addl	%eax,%ebp
2075bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2076bc3d5698SJohn Baldwin	movl	(%esi),%edx
2077bc3d5698SJohn Baldwin	adcl	$0,%ecx
2078bc3d5698SJohn Baldwin	movl	%ebp,8(%edi)
2079bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2080bc3d5698SJohn Baldwin
2081bc3d5698SJohn Baldwin
2082bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2083bc3d5698SJohn Baldwin
2084bc3d5698SJohn Baldwin	mull	%edx
2085bc3d5698SJohn Baldwin	addl	%eax,%eax
2086bc3d5698SJohn Baldwin	adcl	%edx,%edx
2087bc3d5698SJohn Baldwin	adcl	$0,%ebp
2088bc3d5698SJohn Baldwin	addl	%eax,%ebx
2089bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2090bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2091bc3d5698SJohn Baldwin	adcl	$0,%ebp
2092bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2093bc3d5698SJohn Baldwin
2094bc3d5698SJohn Baldwin	mull	%edx
2095bc3d5698SJohn Baldwin	addl	%eax,%eax
2096bc3d5698SJohn Baldwin	adcl	%edx,%edx
2097bc3d5698SJohn Baldwin	adcl	$0,%ebp
2098bc3d5698SJohn Baldwin	addl	%eax,%ebx
2099bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2100bc3d5698SJohn Baldwin	movl	16(%esi),%eax
2101bc3d5698SJohn Baldwin	adcl	$0,%ebp
2102bc3d5698SJohn Baldwin	movl	%ebx,12(%edi)
2103bc3d5698SJohn Baldwin	movl	(%esi),%edx
2104bc3d5698SJohn Baldwin
2105bc3d5698SJohn Baldwin
2106bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2107bc3d5698SJohn Baldwin
2108bc3d5698SJohn Baldwin	mull	%edx
2109bc3d5698SJohn Baldwin	addl	%eax,%eax
2110bc3d5698SJohn Baldwin	adcl	%edx,%edx
2111bc3d5698SJohn Baldwin	adcl	$0,%ebx
2112bc3d5698SJohn Baldwin	addl	%eax,%ecx
2113bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2114bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2115bc3d5698SJohn Baldwin	adcl	$0,%ebx
2116bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2117bc3d5698SJohn Baldwin
2118bc3d5698SJohn Baldwin	mull	%edx
2119bc3d5698SJohn Baldwin	addl	%eax,%eax
2120bc3d5698SJohn Baldwin	adcl	%edx,%edx
2121bc3d5698SJohn Baldwin	adcl	$0,%ebx
2122bc3d5698SJohn Baldwin	addl	%eax,%ecx
2123bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2124bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2125bc3d5698SJohn Baldwin	adcl	$0,%ebx
2126bc3d5698SJohn Baldwin
2127bc3d5698SJohn Baldwin	mull	%eax
2128bc3d5698SJohn Baldwin	addl	%eax,%ecx
2129bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2130bc3d5698SJohn Baldwin	movl	(%esi),%edx
2131bc3d5698SJohn Baldwin	adcl	$0,%ebx
2132bc3d5698SJohn Baldwin	movl	%ecx,16(%edi)
2133bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2134bc3d5698SJohn Baldwin
2135bc3d5698SJohn Baldwin
2136bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2137bc3d5698SJohn Baldwin
2138bc3d5698SJohn Baldwin	mull	%edx
2139bc3d5698SJohn Baldwin	addl	%eax,%eax
2140bc3d5698SJohn Baldwin	adcl	%edx,%edx
2141bc3d5698SJohn Baldwin	adcl	$0,%ecx
2142bc3d5698SJohn Baldwin	addl	%eax,%ebp
2143bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2144bc3d5698SJohn Baldwin	movl	16(%esi),%eax
2145bc3d5698SJohn Baldwin	adcl	$0,%ecx
2146bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2147bc3d5698SJohn Baldwin
2148bc3d5698SJohn Baldwin	mull	%edx
2149bc3d5698SJohn Baldwin	addl	%eax,%eax
2150bc3d5698SJohn Baldwin	adcl	%edx,%edx
2151bc3d5698SJohn Baldwin	adcl	$0,%ecx
2152bc3d5698SJohn Baldwin	addl	%eax,%ebp
2153bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2154bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2155bc3d5698SJohn Baldwin	adcl	$0,%ecx
2156bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2157bc3d5698SJohn Baldwin
2158bc3d5698SJohn Baldwin	mull	%edx
2159bc3d5698SJohn Baldwin	addl	%eax,%eax
2160bc3d5698SJohn Baldwin	adcl	%edx,%edx
2161bc3d5698SJohn Baldwin	adcl	$0,%ecx
2162bc3d5698SJohn Baldwin	addl	%eax,%ebp
2163bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2164bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2165bc3d5698SJohn Baldwin	adcl	$0,%ecx
2166bc3d5698SJohn Baldwin	movl	%ebp,20(%edi)
2167bc3d5698SJohn Baldwin	movl	(%esi),%edx
2168bc3d5698SJohn Baldwin
2169bc3d5698SJohn Baldwin
2170bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2171bc3d5698SJohn Baldwin
2172bc3d5698SJohn Baldwin	mull	%edx
2173bc3d5698SJohn Baldwin	addl	%eax,%eax
2174bc3d5698SJohn Baldwin	adcl	%edx,%edx
2175bc3d5698SJohn Baldwin	adcl	$0,%ebp
2176bc3d5698SJohn Baldwin	addl	%eax,%ebx
2177bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2178bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2179bc3d5698SJohn Baldwin	adcl	$0,%ebp
2180bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2181bc3d5698SJohn Baldwin
2182bc3d5698SJohn Baldwin	mull	%edx
2183bc3d5698SJohn Baldwin	addl	%eax,%eax
2184bc3d5698SJohn Baldwin	adcl	%edx,%edx
2185bc3d5698SJohn Baldwin	adcl	$0,%ebp
2186bc3d5698SJohn Baldwin	addl	%eax,%ebx
2187bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2188bc3d5698SJohn Baldwin	movl	16(%esi),%eax
2189bc3d5698SJohn Baldwin	adcl	$0,%ebp
2190bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2191bc3d5698SJohn Baldwin
2192bc3d5698SJohn Baldwin	mull	%edx
2193bc3d5698SJohn Baldwin	addl	%eax,%eax
2194bc3d5698SJohn Baldwin	adcl	%edx,%edx
2195bc3d5698SJohn Baldwin	adcl	$0,%ebp
2196bc3d5698SJohn Baldwin	addl	%eax,%ebx
2197bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2198bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2199bc3d5698SJohn Baldwin	adcl	$0,%ebp
2200bc3d5698SJohn Baldwin
2201bc3d5698SJohn Baldwin	mull	%eax
2202bc3d5698SJohn Baldwin	addl	%eax,%ebx
2203bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2204bc3d5698SJohn Baldwin	movl	(%esi),%edx
2205bc3d5698SJohn Baldwin	adcl	$0,%ebp
2206bc3d5698SJohn Baldwin	movl	%ebx,24(%edi)
2207bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2208bc3d5698SJohn Baldwin
2209bc3d5698SJohn Baldwin
2210bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2211bc3d5698SJohn Baldwin
2212bc3d5698SJohn Baldwin	mull	%edx
2213bc3d5698SJohn Baldwin	addl	%eax,%eax
2214bc3d5698SJohn Baldwin	adcl	%edx,%edx
2215bc3d5698SJohn Baldwin	adcl	$0,%ebx
2216bc3d5698SJohn Baldwin	addl	%eax,%ecx
2217bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2218bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2219bc3d5698SJohn Baldwin	adcl	$0,%ebx
2220bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2221bc3d5698SJohn Baldwin
2222bc3d5698SJohn Baldwin	mull	%edx
2223bc3d5698SJohn Baldwin	addl	%eax,%eax
2224bc3d5698SJohn Baldwin	adcl	%edx,%edx
2225bc3d5698SJohn Baldwin	adcl	$0,%ebx
2226bc3d5698SJohn Baldwin	addl	%eax,%ecx
2227bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2228bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2229bc3d5698SJohn Baldwin	adcl	$0,%ebx
2230bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2231bc3d5698SJohn Baldwin
2232bc3d5698SJohn Baldwin	mull	%edx
2233bc3d5698SJohn Baldwin	addl	%eax,%eax
2234bc3d5698SJohn Baldwin	adcl	%edx,%edx
2235bc3d5698SJohn Baldwin	adcl	$0,%ebx
2236bc3d5698SJohn Baldwin	addl	%eax,%ecx
2237bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2238bc3d5698SJohn Baldwin	movl	16(%esi),%eax
2239bc3d5698SJohn Baldwin	adcl	$0,%ebx
2240bc3d5698SJohn Baldwin	movl	12(%esi),%edx
2241bc3d5698SJohn Baldwin
2242bc3d5698SJohn Baldwin	mull	%edx
2243bc3d5698SJohn Baldwin	addl	%eax,%eax
2244bc3d5698SJohn Baldwin	adcl	%edx,%edx
2245bc3d5698SJohn Baldwin	adcl	$0,%ebx
2246bc3d5698SJohn Baldwin	addl	%eax,%ecx
2247bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2248bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2249bc3d5698SJohn Baldwin	adcl	$0,%ebx
2250bc3d5698SJohn Baldwin	movl	%ecx,28(%edi)
2251bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2252bc3d5698SJohn Baldwin
2253bc3d5698SJohn Baldwin
2254bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2255bc3d5698SJohn Baldwin
2256bc3d5698SJohn Baldwin	mull	%edx
2257bc3d5698SJohn Baldwin	addl	%eax,%eax
2258bc3d5698SJohn Baldwin	adcl	%edx,%edx
2259bc3d5698SJohn Baldwin	adcl	$0,%ecx
2260bc3d5698SJohn Baldwin	addl	%eax,%ebp
2261bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2262bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2263bc3d5698SJohn Baldwin	adcl	$0,%ecx
2264bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2265bc3d5698SJohn Baldwin
2266bc3d5698SJohn Baldwin	mull	%edx
2267bc3d5698SJohn Baldwin	addl	%eax,%eax
2268bc3d5698SJohn Baldwin	adcl	%edx,%edx
2269bc3d5698SJohn Baldwin	adcl	$0,%ecx
2270bc3d5698SJohn Baldwin	addl	%eax,%ebp
2271bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2272bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2273bc3d5698SJohn Baldwin	adcl	$0,%ecx
2274bc3d5698SJohn Baldwin	movl	12(%esi),%edx
2275bc3d5698SJohn Baldwin
2276bc3d5698SJohn Baldwin	mull	%edx
2277bc3d5698SJohn Baldwin	addl	%eax,%eax
2278bc3d5698SJohn Baldwin	adcl	%edx,%edx
2279bc3d5698SJohn Baldwin	adcl	$0,%ecx
2280bc3d5698SJohn Baldwin	addl	%eax,%ebp
2281bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2282bc3d5698SJohn Baldwin	movl	16(%esi),%eax
2283bc3d5698SJohn Baldwin	adcl	$0,%ecx
2284bc3d5698SJohn Baldwin
2285bc3d5698SJohn Baldwin	mull	%eax
2286bc3d5698SJohn Baldwin	addl	%eax,%ebp
2287bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2288bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2289bc3d5698SJohn Baldwin	adcl	$0,%ecx
2290bc3d5698SJohn Baldwin	movl	%ebp,32(%edi)
2291bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2292bc3d5698SJohn Baldwin
2293bc3d5698SJohn Baldwin
2294bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2295bc3d5698SJohn Baldwin
2296bc3d5698SJohn Baldwin	mull	%edx
2297bc3d5698SJohn Baldwin	addl	%eax,%eax
2298bc3d5698SJohn Baldwin	adcl	%edx,%edx
2299bc3d5698SJohn Baldwin	adcl	$0,%ebp
2300bc3d5698SJohn Baldwin	addl	%eax,%ebx
2301bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2302bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2303bc3d5698SJohn Baldwin	adcl	$0,%ebp
2304bc3d5698SJohn Baldwin	movl	12(%esi),%edx
2305bc3d5698SJohn Baldwin
2306bc3d5698SJohn Baldwin	mull	%edx
2307bc3d5698SJohn Baldwin	addl	%eax,%eax
2308bc3d5698SJohn Baldwin	adcl	%edx,%edx
2309bc3d5698SJohn Baldwin	adcl	$0,%ebp
2310bc3d5698SJohn Baldwin	addl	%eax,%ebx
2311bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2312bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2313bc3d5698SJohn Baldwin	adcl	$0,%ebp
2314bc3d5698SJohn Baldwin	movl	16(%esi),%edx
2315bc3d5698SJohn Baldwin
2316bc3d5698SJohn Baldwin	mull	%edx
2317bc3d5698SJohn Baldwin	addl	%eax,%eax
2318bc3d5698SJohn Baldwin	adcl	%edx,%edx
2319bc3d5698SJohn Baldwin	adcl	$0,%ebp
2320bc3d5698SJohn Baldwin	addl	%eax,%ebx
2321bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2322bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2323bc3d5698SJohn Baldwin	adcl	$0,%ebp
2324bc3d5698SJohn Baldwin	movl	%ebx,36(%edi)
2325bc3d5698SJohn Baldwin	movl	12(%esi),%edx
2326bc3d5698SJohn Baldwin
2327bc3d5698SJohn Baldwin
2328bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2329bc3d5698SJohn Baldwin
2330bc3d5698SJohn Baldwin	mull	%edx
2331bc3d5698SJohn Baldwin	addl	%eax,%eax
2332bc3d5698SJohn Baldwin	adcl	%edx,%edx
2333bc3d5698SJohn Baldwin	adcl	$0,%ebx
2334bc3d5698SJohn Baldwin	addl	%eax,%ecx
2335bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2336bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2337bc3d5698SJohn Baldwin	adcl	$0,%ebx
2338bc3d5698SJohn Baldwin	movl	16(%esi),%edx
2339bc3d5698SJohn Baldwin
2340bc3d5698SJohn Baldwin	mull	%edx
2341bc3d5698SJohn Baldwin	addl	%eax,%eax
2342bc3d5698SJohn Baldwin	adcl	%edx,%edx
2343bc3d5698SJohn Baldwin	adcl	$0,%ebx
2344bc3d5698SJohn Baldwin	addl	%eax,%ecx
2345bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2346bc3d5698SJohn Baldwin	movl	20(%esi),%eax
2347bc3d5698SJohn Baldwin	adcl	$0,%ebx
2348bc3d5698SJohn Baldwin
2349bc3d5698SJohn Baldwin	mull	%eax
2350bc3d5698SJohn Baldwin	addl	%eax,%ecx
2351bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2352bc3d5698SJohn Baldwin	movl	16(%esi),%edx
2353bc3d5698SJohn Baldwin	adcl	$0,%ebx
2354bc3d5698SJohn Baldwin	movl	%ecx,40(%edi)
2355bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2356bc3d5698SJohn Baldwin
2357bc3d5698SJohn Baldwin
2358bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2359bc3d5698SJohn Baldwin
2360bc3d5698SJohn Baldwin	mull	%edx
2361bc3d5698SJohn Baldwin	addl	%eax,%eax
2362bc3d5698SJohn Baldwin	adcl	%edx,%edx
2363bc3d5698SJohn Baldwin	adcl	$0,%ecx
2364bc3d5698SJohn Baldwin	addl	%eax,%ebp
2365bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2366bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2367bc3d5698SJohn Baldwin	adcl	$0,%ecx
2368bc3d5698SJohn Baldwin	movl	20(%esi),%edx
2369bc3d5698SJohn Baldwin
2370bc3d5698SJohn Baldwin	mull	%edx
2371bc3d5698SJohn Baldwin	addl	%eax,%eax
2372bc3d5698SJohn Baldwin	adcl	%edx,%edx
2373bc3d5698SJohn Baldwin	adcl	$0,%ecx
2374bc3d5698SJohn Baldwin	addl	%eax,%ebp
2375bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2376bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2377bc3d5698SJohn Baldwin	adcl	$0,%ecx
2378bc3d5698SJohn Baldwin	movl	%ebp,44(%edi)
2379bc3d5698SJohn Baldwin	movl	20(%esi),%edx
2380bc3d5698SJohn Baldwin
2381bc3d5698SJohn Baldwin
2382bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2383bc3d5698SJohn Baldwin
2384bc3d5698SJohn Baldwin	mull	%edx
2385bc3d5698SJohn Baldwin	addl	%eax,%eax
2386bc3d5698SJohn Baldwin	adcl	%edx,%edx
2387bc3d5698SJohn Baldwin	adcl	$0,%ebp
2388bc3d5698SJohn Baldwin	addl	%eax,%ebx
2389bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2390bc3d5698SJohn Baldwin	movl	24(%esi),%eax
2391bc3d5698SJohn Baldwin	adcl	$0,%ebp
2392bc3d5698SJohn Baldwin
2393bc3d5698SJohn Baldwin	mull	%eax
2394bc3d5698SJohn Baldwin	addl	%eax,%ebx
2395bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2396bc3d5698SJohn Baldwin	movl	24(%esi),%edx
2397bc3d5698SJohn Baldwin	adcl	$0,%ebp
2398bc3d5698SJohn Baldwin	movl	%ebx,48(%edi)
2399bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2400bc3d5698SJohn Baldwin
2401bc3d5698SJohn Baldwin
2402bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2403bc3d5698SJohn Baldwin
2404bc3d5698SJohn Baldwin	mull	%edx
2405bc3d5698SJohn Baldwin	addl	%eax,%eax
2406bc3d5698SJohn Baldwin	adcl	%edx,%edx
2407bc3d5698SJohn Baldwin	adcl	$0,%ebx
2408bc3d5698SJohn Baldwin	addl	%eax,%ecx
2409bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2410bc3d5698SJohn Baldwin	movl	28(%esi),%eax
2411bc3d5698SJohn Baldwin	adcl	$0,%ebx
2412bc3d5698SJohn Baldwin	movl	%ecx,52(%edi)
2413bc3d5698SJohn Baldwin
2414bc3d5698SJohn Baldwin
2415bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2416bc3d5698SJohn Baldwin
2417bc3d5698SJohn Baldwin	mull	%eax
2418bc3d5698SJohn Baldwin	addl	%eax,%ebp
2419bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2420bc3d5698SJohn Baldwin	adcl	$0,%ecx
2421bc3d5698SJohn Baldwin	movl	%ebp,56(%edi)
2422bc3d5698SJohn Baldwin
2423bc3d5698SJohn Baldwin	movl	%ebx,60(%edi)
2424bc3d5698SJohn Baldwin	popl	%ebx
2425bc3d5698SJohn Baldwin	popl	%ebp
2426bc3d5698SJohn Baldwin	popl	%edi
2427bc3d5698SJohn Baldwin	popl	%esi
2428bc3d5698SJohn Baldwin	ret
2429bc3d5698SJohn Baldwin.size	bn_sqr_comba8,.-.L_bn_sqr_comba8_begin
2430bc3d5698SJohn Baldwin.globl	bn_sqr_comba4
2431bc3d5698SJohn Baldwin.type	bn_sqr_comba4,@function
2432bc3d5698SJohn Baldwin.align	16
2433bc3d5698SJohn Baldwinbn_sqr_comba4:
2434bc3d5698SJohn Baldwin.L_bn_sqr_comba4_begin:
2435*c0855eaaSJohn Baldwin	#ifdef __CET__
2436*c0855eaaSJohn Baldwin
2437*c0855eaaSJohn Baldwin.byte	243,15,30,251
2438*c0855eaaSJohn Baldwin	#endif
2439*c0855eaaSJohn Baldwin
2440bc3d5698SJohn Baldwin	pushl	%esi
2441bc3d5698SJohn Baldwin	pushl	%edi
2442bc3d5698SJohn Baldwin	pushl	%ebp
2443bc3d5698SJohn Baldwin	pushl	%ebx
2444bc3d5698SJohn Baldwin	movl	20(%esp),%edi
2445bc3d5698SJohn Baldwin	movl	24(%esp),%esi
2446bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2447bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2448bc3d5698SJohn Baldwin	movl	(%esi),%eax
2449bc3d5698SJohn Baldwin
2450bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2451bc3d5698SJohn Baldwin
2452bc3d5698SJohn Baldwin	mull	%eax
2453bc3d5698SJohn Baldwin	addl	%eax,%ebx
2454bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2455bc3d5698SJohn Baldwin	movl	(%esi),%edx
2456bc3d5698SJohn Baldwin	adcl	$0,%ebp
2457bc3d5698SJohn Baldwin	movl	%ebx,(%edi)
2458bc3d5698SJohn Baldwin	movl	4(%esi),%eax
2459bc3d5698SJohn Baldwin
2460bc3d5698SJohn Baldwin
2461bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2462bc3d5698SJohn Baldwin
2463bc3d5698SJohn Baldwin	mull	%edx
2464bc3d5698SJohn Baldwin	addl	%eax,%eax
2465bc3d5698SJohn Baldwin	adcl	%edx,%edx
2466bc3d5698SJohn Baldwin	adcl	$0,%ebx
2467bc3d5698SJohn Baldwin	addl	%eax,%ecx
2468bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2469bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2470bc3d5698SJohn Baldwin	adcl	$0,%ebx
2471bc3d5698SJohn Baldwin	movl	%ecx,4(%edi)
2472bc3d5698SJohn Baldwin	movl	(%esi),%edx
2473bc3d5698SJohn Baldwin
2474bc3d5698SJohn Baldwin
2475bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2476bc3d5698SJohn Baldwin
2477bc3d5698SJohn Baldwin	mull	%edx
2478bc3d5698SJohn Baldwin	addl	%eax,%eax
2479bc3d5698SJohn Baldwin	adcl	%edx,%edx
2480bc3d5698SJohn Baldwin	adcl	$0,%ecx
2481bc3d5698SJohn Baldwin	addl	%eax,%ebp
2482bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2483bc3d5698SJohn Baldwin	movl	4(%esi),%eax
2484bc3d5698SJohn Baldwin	adcl	$0,%ecx
2485bc3d5698SJohn Baldwin
2486bc3d5698SJohn Baldwin	mull	%eax
2487bc3d5698SJohn Baldwin	addl	%eax,%ebp
2488bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2489bc3d5698SJohn Baldwin	movl	(%esi),%edx
2490bc3d5698SJohn Baldwin	adcl	$0,%ecx
2491bc3d5698SJohn Baldwin	movl	%ebp,8(%edi)
2492bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2493bc3d5698SJohn Baldwin
2494bc3d5698SJohn Baldwin
2495bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2496bc3d5698SJohn Baldwin
2497bc3d5698SJohn Baldwin	mull	%edx
2498bc3d5698SJohn Baldwin	addl	%eax,%eax
2499bc3d5698SJohn Baldwin	adcl	%edx,%edx
2500bc3d5698SJohn Baldwin	adcl	$0,%ebp
2501bc3d5698SJohn Baldwin	addl	%eax,%ebx
2502bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2503bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2504bc3d5698SJohn Baldwin	adcl	$0,%ebp
2505bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2506bc3d5698SJohn Baldwin
2507bc3d5698SJohn Baldwin	mull	%edx
2508bc3d5698SJohn Baldwin	addl	%eax,%eax
2509bc3d5698SJohn Baldwin	adcl	%edx,%edx
2510bc3d5698SJohn Baldwin	adcl	$0,%ebp
2511bc3d5698SJohn Baldwin	addl	%eax,%ebx
2512bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2513bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2514bc3d5698SJohn Baldwin	adcl	$0,%ebp
2515bc3d5698SJohn Baldwin	movl	%ebx,12(%edi)
2516bc3d5698SJohn Baldwin	movl	4(%esi),%edx
2517bc3d5698SJohn Baldwin
2518bc3d5698SJohn Baldwin
2519bc3d5698SJohn Baldwin	xorl	%ebx,%ebx
2520bc3d5698SJohn Baldwin
2521bc3d5698SJohn Baldwin	mull	%edx
2522bc3d5698SJohn Baldwin	addl	%eax,%eax
2523bc3d5698SJohn Baldwin	adcl	%edx,%edx
2524bc3d5698SJohn Baldwin	adcl	$0,%ebx
2525bc3d5698SJohn Baldwin	addl	%eax,%ecx
2526bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2527bc3d5698SJohn Baldwin	movl	8(%esi),%eax
2528bc3d5698SJohn Baldwin	adcl	$0,%ebx
2529bc3d5698SJohn Baldwin
2530bc3d5698SJohn Baldwin	mull	%eax
2531bc3d5698SJohn Baldwin	addl	%eax,%ecx
2532bc3d5698SJohn Baldwin	adcl	%edx,%ebp
2533bc3d5698SJohn Baldwin	movl	8(%esi),%edx
2534bc3d5698SJohn Baldwin	adcl	$0,%ebx
2535bc3d5698SJohn Baldwin	movl	%ecx,16(%edi)
2536bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2537bc3d5698SJohn Baldwin
2538bc3d5698SJohn Baldwin
2539bc3d5698SJohn Baldwin	xorl	%ecx,%ecx
2540bc3d5698SJohn Baldwin
2541bc3d5698SJohn Baldwin	mull	%edx
2542bc3d5698SJohn Baldwin	addl	%eax,%eax
2543bc3d5698SJohn Baldwin	adcl	%edx,%edx
2544bc3d5698SJohn Baldwin	adcl	$0,%ecx
2545bc3d5698SJohn Baldwin	addl	%eax,%ebp
2546bc3d5698SJohn Baldwin	adcl	%edx,%ebx
2547bc3d5698SJohn Baldwin	movl	12(%esi),%eax
2548bc3d5698SJohn Baldwin	adcl	$0,%ecx
2549bc3d5698SJohn Baldwin	movl	%ebp,20(%edi)
2550bc3d5698SJohn Baldwin
2551bc3d5698SJohn Baldwin
2552bc3d5698SJohn Baldwin	xorl	%ebp,%ebp
2553bc3d5698SJohn Baldwin
2554bc3d5698SJohn Baldwin	mull	%eax
2555bc3d5698SJohn Baldwin	addl	%eax,%ebx
2556bc3d5698SJohn Baldwin	adcl	%edx,%ecx
2557bc3d5698SJohn Baldwin	adcl	$0,%ebp
2558bc3d5698SJohn Baldwin	movl	%ebx,24(%edi)
2559bc3d5698SJohn Baldwin
2560bc3d5698SJohn Baldwin	movl	%ecx,28(%edi)
2561bc3d5698SJohn Baldwin	popl	%ebx
2562bc3d5698SJohn Baldwin	popl	%ebp
2563bc3d5698SJohn Baldwin	popl	%edi
2564bc3d5698SJohn Baldwin	popl	%esi
2565bc3d5698SJohn Baldwin	ret
2566bc3d5698SJohn Baldwin.size	bn_sqr_comba4,.-.L_bn_sqr_comba4_begin
2567*c0855eaaSJohn Baldwin
2568*c0855eaaSJohn Baldwin	.section ".note.gnu.property", "a"
2569*c0855eaaSJohn Baldwin	.p2align 2
2570*c0855eaaSJohn Baldwin	.long 1f - 0f
2571*c0855eaaSJohn Baldwin	.long 4f - 1f
2572*c0855eaaSJohn Baldwin	.long 5
2573*c0855eaaSJohn Baldwin0:
2574*c0855eaaSJohn Baldwin	.asciz "GNU"
2575*c0855eaaSJohn Baldwin1:
2576*c0855eaaSJohn Baldwin	.p2align 2
2577*c0855eaaSJohn Baldwin	.long 0xc0000002
2578*c0855eaaSJohn Baldwin	.long 3f - 2f
2579*c0855eaaSJohn Baldwin2:
2580*c0855eaaSJohn Baldwin	.long 3
2581*c0855eaaSJohn Baldwin3:
2582*c0855eaaSJohn Baldwin	.p2align 2
2583*c0855eaaSJohn Baldwin4:
2584bc3d5698SJohn Baldwin#endif
2585