OLD | NEW |
| (Empty) |
1 #if defined(__i386__) | |
2 .file "src/crypto/bn/asm/x86.S" | |
3 .text | |
4 .globl bn_mul_add_words | |
5 .type bn_mul_add_words,@function | |
6 .align 16 | |
7 bn_mul_add_words: | |
8 .L_bn_mul_add_words_begin: | |
9 pushl %ebp | |
10 pushl %ebx | |
11 pushl %esi | |
12 pushl %edi | |
13 | |
14 xorl %esi,%esi | |
15 movl 20(%esp),%edi | |
16 movl 28(%esp),%ecx | |
17 movl 24(%esp),%ebx | |
18 andl $4294967288,%ecx | |
19 movl 32(%esp),%ebp | |
20 pushl %ecx | |
21 jz .L000maw_finish | |
22 .L001maw_loop: | |
23 movl %ecx,(%esp) | |
24 | |
25 movl (%ebx),%eax | |
26 mull %ebp | |
27 addl %esi,%eax | |
28 movl (%edi),%esi | |
29 adcl $0,%edx | |
30 addl %esi,%eax | |
31 adcl $0,%edx | |
32 movl %eax,(%edi) | |
33 movl %edx,%esi | |
34 | |
35 movl 4(%ebx),%eax | |
36 mull %ebp | |
37 addl %esi,%eax | |
38 movl 4(%edi),%esi | |
39 adcl $0,%edx | |
40 addl %esi,%eax | |
41 adcl $0,%edx | |
42 movl %eax,4(%edi) | |
43 movl %edx,%esi | |
44 | |
45 movl 8(%ebx),%eax | |
46 mull %ebp | |
47 addl %esi,%eax | |
48 movl 8(%edi),%esi | |
49 adcl $0,%edx | |
50 addl %esi,%eax | |
51 adcl $0,%edx | |
52 movl %eax,8(%edi) | |
53 movl %edx,%esi | |
54 | |
55 movl 12(%ebx),%eax | |
56 mull %ebp | |
57 addl %esi,%eax | |
58 movl 12(%edi),%esi | |
59 adcl $0,%edx | |
60 addl %esi,%eax | |
61 adcl $0,%edx | |
62 movl %eax,12(%edi) | |
63 movl %edx,%esi | |
64 | |
65 movl 16(%ebx),%eax | |
66 mull %ebp | |
67 addl %esi,%eax | |
68 movl 16(%edi),%esi | |
69 adcl $0,%edx | |
70 addl %esi,%eax | |
71 adcl $0,%edx | |
72 movl %eax,16(%edi) | |
73 movl %edx,%esi | |
74 | |
75 movl 20(%ebx),%eax | |
76 mull %ebp | |
77 addl %esi,%eax | |
78 movl 20(%edi),%esi | |
79 adcl $0,%edx | |
80 addl %esi,%eax | |
81 adcl $0,%edx | |
82 movl %eax,20(%edi) | |
83 movl %edx,%esi | |
84 | |
85 movl 24(%ebx),%eax | |
86 mull %ebp | |
87 addl %esi,%eax | |
88 movl 24(%edi),%esi | |
89 adcl $0,%edx | |
90 addl %esi,%eax | |
91 adcl $0,%edx | |
92 movl %eax,24(%edi) | |
93 movl %edx,%esi | |
94 | |
95 movl 28(%ebx),%eax | |
96 mull %ebp | |
97 addl %esi,%eax | |
98 movl 28(%edi),%esi | |
99 adcl $0,%edx | |
100 addl %esi,%eax | |
101 adcl $0,%edx | |
102 movl %eax,28(%edi) | |
103 movl %edx,%esi | |
104 | |
105 movl (%esp),%ecx | |
106 addl $32,%ebx | |
107 addl $32,%edi | |
108 subl $8,%ecx | |
109 jnz .L001maw_loop | |
110 .L000maw_finish: | |
111 movl 32(%esp),%ecx | |
112 andl $7,%ecx | |
113 jnz .L002maw_finish2 | |
114 jmp .L003maw_end | |
115 .L002maw_finish2: | |
116 | |
117 movl (%ebx),%eax | |
118 mull %ebp | |
119 addl %esi,%eax | |
120 movl (%edi),%esi | |
121 adcl $0,%edx | |
122 addl %esi,%eax | |
123 adcl $0,%edx | |
124 decl %ecx | |
125 movl %eax,(%edi) | |
126 movl %edx,%esi | |
127 jz .L003maw_end | |
128 | |
129 movl 4(%ebx),%eax | |
130 mull %ebp | |
131 addl %esi,%eax | |
132 movl 4(%edi),%esi | |
133 adcl $0,%edx | |
134 addl %esi,%eax | |
135 adcl $0,%edx | |
136 decl %ecx | |
137 movl %eax,4(%edi) | |
138 movl %edx,%esi | |
139 jz .L003maw_end | |
140 | |
141 movl 8(%ebx),%eax | |
142 mull %ebp | |
143 addl %esi,%eax | |
144 movl 8(%edi),%esi | |
145 adcl $0,%edx | |
146 addl %esi,%eax | |
147 adcl $0,%edx | |
148 decl %ecx | |
149 movl %eax,8(%edi) | |
150 movl %edx,%esi | |
151 jz .L003maw_end | |
152 | |
153 movl 12(%ebx),%eax | |
154 mull %ebp | |
155 addl %esi,%eax | |
156 movl 12(%edi),%esi | |
157 adcl $0,%edx | |
158 addl %esi,%eax | |
159 adcl $0,%edx | |
160 decl %ecx | |
161 movl %eax,12(%edi) | |
162 movl %edx,%esi | |
163 jz .L003maw_end | |
164 | |
165 movl 16(%ebx),%eax | |
166 mull %ebp | |
167 addl %esi,%eax | |
168 movl 16(%edi),%esi | |
169 adcl $0,%edx | |
170 addl %esi,%eax | |
171 adcl $0,%edx | |
172 decl %ecx | |
173 movl %eax,16(%edi) | |
174 movl %edx,%esi | |
175 jz .L003maw_end | |
176 | |
177 movl 20(%ebx),%eax | |
178 mull %ebp | |
179 addl %esi,%eax | |
180 movl 20(%edi),%esi | |
181 adcl $0,%edx | |
182 addl %esi,%eax | |
183 adcl $0,%edx | |
184 decl %ecx | |
185 movl %eax,20(%edi) | |
186 movl %edx,%esi | |
187 jz .L003maw_end | |
188 | |
189 movl 24(%ebx),%eax | |
190 mull %ebp | |
191 addl %esi,%eax | |
192 movl 24(%edi),%esi | |
193 adcl $0,%edx | |
194 addl %esi,%eax | |
195 adcl $0,%edx | |
196 movl %eax,24(%edi) | |
197 movl %edx,%esi | |
198 .L003maw_end: | |
199 movl %esi,%eax | |
200 popl %ecx | |
201 popl %edi | |
202 popl %esi | |
203 popl %ebx | |
204 popl %ebp | |
205 ret | |
206 .size bn_mul_add_words,.-.L_bn_mul_add_words_begin | |
207 .globl bn_mul_words | |
208 .type bn_mul_words,@function | |
209 .align 16 | |
210 bn_mul_words: | |
211 .L_bn_mul_words_begin: | |
212 pushl %ebp | |
213 pushl %ebx | |
214 pushl %esi | |
215 pushl %edi | |
216 | |
217 xorl %esi,%esi | |
218 movl 20(%esp),%edi | |
219 movl 24(%esp),%ebx | |
220 movl 28(%esp),%ebp | |
221 movl 32(%esp),%ecx | |
222 andl $4294967288,%ebp | |
223 jz .L004mw_finish | |
224 .L005mw_loop: | |
225 | |
226 movl (%ebx),%eax | |
227 mull %ecx | |
228 addl %esi,%eax | |
229 adcl $0,%edx | |
230 movl %eax,(%edi) | |
231 movl %edx,%esi | |
232 | |
233 movl 4(%ebx),%eax | |
234 mull %ecx | |
235 addl %esi,%eax | |
236 adcl $0,%edx | |
237 movl %eax,4(%edi) | |
238 movl %edx,%esi | |
239 | |
240 movl 8(%ebx),%eax | |
241 mull %ecx | |
242 addl %esi,%eax | |
243 adcl $0,%edx | |
244 movl %eax,8(%edi) | |
245 movl %edx,%esi | |
246 | |
247 movl 12(%ebx),%eax | |
248 mull %ecx | |
249 addl %esi,%eax | |
250 adcl $0,%edx | |
251 movl %eax,12(%edi) | |
252 movl %edx,%esi | |
253 | |
254 movl 16(%ebx),%eax | |
255 mull %ecx | |
256 addl %esi,%eax | |
257 adcl $0,%edx | |
258 movl %eax,16(%edi) | |
259 movl %edx,%esi | |
260 | |
261 movl 20(%ebx),%eax | |
262 mull %ecx | |
263 addl %esi,%eax | |
264 adcl $0,%edx | |
265 movl %eax,20(%edi) | |
266 movl %edx,%esi | |
267 | |
268 movl 24(%ebx),%eax | |
269 mull %ecx | |
270 addl %esi,%eax | |
271 adcl $0,%edx | |
272 movl %eax,24(%edi) | |
273 movl %edx,%esi | |
274 | |
275 movl 28(%ebx),%eax | |
276 mull %ecx | |
277 addl %esi,%eax | |
278 adcl $0,%edx | |
279 movl %eax,28(%edi) | |
280 movl %edx,%esi | |
281 | |
282 addl $32,%ebx | |
283 addl $32,%edi | |
284 subl $8,%ebp | |
285 jz .L004mw_finish | |
286 jmp .L005mw_loop | |
287 .L004mw_finish: | |
288 movl 28(%esp),%ebp | |
289 andl $7,%ebp | |
290 jnz .L006mw_finish2 | |
291 jmp .L007mw_end | |
292 .L006mw_finish2: | |
293 | |
294 movl (%ebx),%eax | |
295 mull %ecx | |
296 addl %esi,%eax | |
297 adcl $0,%edx | |
298 movl %eax,(%edi) | |
299 movl %edx,%esi | |
300 decl %ebp | |
301 jz .L007mw_end | |
302 | |
303 movl 4(%ebx),%eax | |
304 mull %ecx | |
305 addl %esi,%eax | |
306 adcl $0,%edx | |
307 movl %eax,4(%edi) | |
308 movl %edx,%esi | |
309 decl %ebp | |
310 jz .L007mw_end | |
311 | |
312 movl 8(%ebx),%eax | |
313 mull %ecx | |
314 addl %esi,%eax | |
315 adcl $0,%edx | |
316 movl %eax,8(%edi) | |
317 movl %edx,%esi | |
318 decl %ebp | |
319 jz .L007mw_end | |
320 | |
321 movl 12(%ebx),%eax | |
322 mull %ecx | |
323 addl %esi,%eax | |
324 adcl $0,%edx | |
325 movl %eax,12(%edi) | |
326 movl %edx,%esi | |
327 decl %ebp | |
328 jz .L007mw_end | |
329 | |
330 movl 16(%ebx),%eax | |
331 mull %ecx | |
332 addl %esi,%eax | |
333 adcl $0,%edx | |
334 movl %eax,16(%edi) | |
335 movl %edx,%esi | |
336 decl %ebp | |
337 jz .L007mw_end | |
338 | |
339 movl 20(%ebx),%eax | |
340 mull %ecx | |
341 addl %esi,%eax | |
342 adcl $0,%edx | |
343 movl %eax,20(%edi) | |
344 movl %edx,%esi | |
345 decl %ebp | |
346 jz .L007mw_end | |
347 | |
348 movl 24(%ebx),%eax | |
349 mull %ecx | |
350 addl %esi,%eax | |
351 adcl $0,%edx | |
352 movl %eax,24(%edi) | |
353 movl %edx,%esi | |
354 .L007mw_end: | |
355 movl %esi,%eax | |
356 popl %edi | |
357 popl %esi | |
358 popl %ebx | |
359 popl %ebp | |
360 ret | |
361 .size bn_mul_words,.-.L_bn_mul_words_begin | |
362 .globl bn_sqr_words | |
363 .type bn_sqr_words,@function | |
364 .align 16 | |
365 bn_sqr_words: | |
366 .L_bn_sqr_words_begin: | |
367 pushl %ebp | |
368 pushl %ebx | |
369 pushl %esi | |
370 pushl %edi | |
371 | |
372 movl 20(%esp),%esi | |
373 movl 24(%esp),%edi | |
374 movl 28(%esp),%ebx | |
375 andl $4294967288,%ebx | |
376 jz .L008sw_finish | |
377 .L009sw_loop: | |
378 | |
379 movl (%edi),%eax | |
380 mull %eax | |
381 movl %eax,(%esi) | |
382 movl %edx,4(%esi) | |
383 | |
384 movl 4(%edi),%eax | |
385 mull %eax | |
386 movl %eax,8(%esi) | |
387 movl %edx,12(%esi) | |
388 | |
389 movl 8(%edi),%eax | |
390 mull %eax | |
391 movl %eax,16(%esi) | |
392 movl %edx,20(%esi) | |
393 | |
394 movl 12(%edi),%eax | |
395 mull %eax | |
396 movl %eax,24(%esi) | |
397 movl %edx,28(%esi) | |
398 | |
399 movl 16(%edi),%eax | |
400 mull %eax | |
401 movl %eax,32(%esi) | |
402 movl %edx,36(%esi) | |
403 | |
404 movl 20(%edi),%eax | |
405 mull %eax | |
406 movl %eax,40(%esi) | |
407 movl %edx,44(%esi) | |
408 | |
409 movl 24(%edi),%eax | |
410 mull %eax | |
411 movl %eax,48(%esi) | |
412 movl %edx,52(%esi) | |
413 | |
414 movl 28(%edi),%eax | |
415 mull %eax | |
416 movl %eax,56(%esi) | |
417 movl %edx,60(%esi) | |
418 | |
419 addl $32,%edi | |
420 addl $64,%esi | |
421 subl $8,%ebx | |
422 jnz .L009sw_loop | |
423 .L008sw_finish: | |
424 movl 28(%esp),%ebx | |
425 andl $7,%ebx | |
426 jz .L010sw_end | |
427 | |
428 movl (%edi),%eax | |
429 mull %eax | |
430 movl %eax,(%esi) | |
431 decl %ebx | |
432 movl %edx,4(%esi) | |
433 jz .L010sw_end | |
434 | |
435 movl 4(%edi),%eax | |
436 mull %eax | |
437 movl %eax,8(%esi) | |
438 decl %ebx | |
439 movl %edx,12(%esi) | |
440 jz .L010sw_end | |
441 | |
442 movl 8(%edi),%eax | |
443 mull %eax | |
444 movl %eax,16(%esi) | |
445 decl %ebx | |
446 movl %edx,20(%esi) | |
447 jz .L010sw_end | |
448 | |
449 movl 12(%edi),%eax | |
450 mull %eax | |
451 movl %eax,24(%esi) | |
452 decl %ebx | |
453 movl %edx,28(%esi) | |
454 jz .L010sw_end | |
455 | |
456 movl 16(%edi),%eax | |
457 mull %eax | |
458 movl %eax,32(%esi) | |
459 decl %ebx | |
460 movl %edx,36(%esi) | |
461 jz .L010sw_end | |
462 | |
463 movl 20(%edi),%eax | |
464 mull %eax | |
465 movl %eax,40(%esi) | |
466 decl %ebx | |
467 movl %edx,44(%esi) | |
468 jz .L010sw_end | |
469 | |
470 movl 24(%edi),%eax | |
471 mull %eax | |
472 movl %eax,48(%esi) | |
473 movl %edx,52(%esi) | |
474 .L010sw_end: | |
475 popl %edi | |
476 popl %esi | |
477 popl %ebx | |
478 popl %ebp | |
479 ret | |
480 .size bn_sqr_words,.-.L_bn_sqr_words_begin | |
481 .globl bn_div_words | |
482 .type bn_div_words,@function | |
483 .align 16 | |
484 bn_div_words: | |
485 .L_bn_div_words_begin: | |
486 pushl %ebp | |
487 pushl %ebx | |
488 pushl %esi | |
489 pushl %edi | |
490 movl 20(%esp),%edx | |
491 movl 24(%esp),%eax | |
492 movl 28(%esp),%ebx | |
493 divl %ebx | |
494 popl %edi | |
495 popl %esi | |
496 popl %ebx | |
497 popl %ebp | |
498 ret | |
499 .size bn_div_words,.-.L_bn_div_words_begin | |
500 .globl bn_add_words | |
501 .type bn_add_words,@function | |
502 .align 16 | |
503 bn_add_words: | |
504 .L_bn_add_words_begin: | |
505 pushl %ebp | |
506 pushl %ebx | |
507 pushl %esi | |
508 pushl %edi | |
509 | |
510 movl 20(%esp),%ebx | |
511 movl 24(%esp),%esi | |
512 movl 28(%esp),%edi | |
513 movl 32(%esp),%ebp | |
514 xorl %eax,%eax | |
515 andl $4294967288,%ebp | |
516 jz .L011aw_finish | |
517 .L012aw_loop: | |
518 | |
519 movl (%esi),%ecx | |
520 movl (%edi),%edx | |
521 addl %eax,%ecx | |
522 movl $0,%eax | |
523 adcl %eax,%eax | |
524 addl %edx,%ecx | |
525 adcl $0,%eax | |
526 movl %ecx,(%ebx) | |
527 | |
528 movl 4(%esi),%ecx | |
529 movl 4(%edi),%edx | |
530 addl %eax,%ecx | |
531 movl $0,%eax | |
532 adcl %eax,%eax | |
533 addl %edx,%ecx | |
534 adcl $0,%eax | |
535 movl %ecx,4(%ebx) | |
536 | |
537 movl 8(%esi),%ecx | |
538 movl 8(%edi),%edx | |
539 addl %eax,%ecx | |
540 movl $0,%eax | |
541 adcl %eax,%eax | |
542 addl %edx,%ecx | |
543 adcl $0,%eax | |
544 movl %ecx,8(%ebx) | |
545 | |
546 movl 12(%esi),%ecx | |
547 movl 12(%edi),%edx | |
548 addl %eax,%ecx | |
549 movl $0,%eax | |
550 adcl %eax,%eax | |
551 addl %edx,%ecx | |
552 adcl $0,%eax | |
553 movl %ecx,12(%ebx) | |
554 | |
555 movl 16(%esi),%ecx | |
556 movl 16(%edi),%edx | |
557 addl %eax,%ecx | |
558 movl $0,%eax | |
559 adcl %eax,%eax | |
560 addl %edx,%ecx | |
561 adcl $0,%eax | |
562 movl %ecx,16(%ebx) | |
563 | |
564 movl 20(%esi),%ecx | |
565 movl 20(%edi),%edx | |
566 addl %eax,%ecx | |
567 movl $0,%eax | |
568 adcl %eax,%eax | |
569 addl %edx,%ecx | |
570 adcl $0,%eax | |
571 movl %ecx,20(%ebx) | |
572 | |
573 movl 24(%esi),%ecx | |
574 movl 24(%edi),%edx | |
575 addl %eax,%ecx | |
576 movl $0,%eax | |
577 adcl %eax,%eax | |
578 addl %edx,%ecx | |
579 adcl $0,%eax | |
580 movl %ecx,24(%ebx) | |
581 | |
582 movl 28(%esi),%ecx | |
583 movl 28(%edi),%edx | |
584 addl %eax,%ecx | |
585 movl $0,%eax | |
586 adcl %eax,%eax | |
587 addl %edx,%ecx | |
588 adcl $0,%eax | |
589 movl %ecx,28(%ebx) | |
590 | |
591 addl $32,%esi | |
592 addl $32,%edi | |
593 addl $32,%ebx | |
594 subl $8,%ebp | |
595 jnz .L012aw_loop | |
596 .L011aw_finish: | |
597 movl 32(%esp),%ebp | |
598 andl $7,%ebp | |
599 jz .L013aw_end | |
600 | |
601 movl (%esi),%ecx | |
602 movl (%edi),%edx | |
603 addl %eax,%ecx | |
604 movl $0,%eax | |
605 adcl %eax,%eax | |
606 addl %edx,%ecx | |
607 adcl $0,%eax | |
608 decl %ebp | |
609 movl %ecx,(%ebx) | |
610 jz .L013aw_end | |
611 | |
612 movl 4(%esi),%ecx | |
613 movl 4(%edi),%edx | |
614 addl %eax,%ecx | |
615 movl $0,%eax | |
616 adcl %eax,%eax | |
617 addl %edx,%ecx | |
618 adcl $0,%eax | |
619 decl %ebp | |
620 movl %ecx,4(%ebx) | |
621 jz .L013aw_end | |
622 | |
623 movl 8(%esi),%ecx | |
624 movl 8(%edi),%edx | |
625 addl %eax,%ecx | |
626 movl $0,%eax | |
627 adcl %eax,%eax | |
628 addl %edx,%ecx | |
629 adcl $0,%eax | |
630 decl %ebp | |
631 movl %ecx,8(%ebx) | |
632 jz .L013aw_end | |
633 | |
634 movl 12(%esi),%ecx | |
635 movl 12(%edi),%edx | |
636 addl %eax,%ecx | |
637 movl $0,%eax | |
638 adcl %eax,%eax | |
639 addl %edx,%ecx | |
640 adcl $0,%eax | |
641 decl %ebp | |
642 movl %ecx,12(%ebx) | |
643 jz .L013aw_end | |
644 | |
645 movl 16(%esi),%ecx | |
646 movl 16(%edi),%edx | |
647 addl %eax,%ecx | |
648 movl $0,%eax | |
649 adcl %eax,%eax | |
650 addl %edx,%ecx | |
651 adcl $0,%eax | |
652 decl %ebp | |
653 movl %ecx,16(%ebx) | |
654 jz .L013aw_end | |
655 | |
656 movl 20(%esi),%ecx | |
657 movl 20(%edi),%edx | |
658 addl %eax,%ecx | |
659 movl $0,%eax | |
660 adcl %eax,%eax | |
661 addl %edx,%ecx | |
662 adcl $0,%eax | |
663 decl %ebp | |
664 movl %ecx,20(%ebx) | |
665 jz .L013aw_end | |
666 | |
667 movl 24(%esi),%ecx | |
668 movl 24(%edi),%edx | |
669 addl %eax,%ecx | |
670 movl $0,%eax | |
671 adcl %eax,%eax | |
672 addl %edx,%ecx | |
673 adcl $0,%eax | |
674 movl %ecx,24(%ebx) | |
675 .L013aw_end: | |
676 popl %edi | |
677 popl %esi | |
678 popl %ebx | |
679 popl %ebp | |
680 ret | |
681 .size bn_add_words,.-.L_bn_add_words_begin | |
682 .globl bn_sub_words | |
683 .type bn_sub_words,@function | |
684 .align 16 | |
685 bn_sub_words: | |
686 .L_bn_sub_words_begin: | |
687 pushl %ebp | |
688 pushl %ebx | |
689 pushl %esi | |
690 pushl %edi | |
691 | |
692 movl 20(%esp),%ebx | |
693 movl 24(%esp),%esi | |
694 movl 28(%esp),%edi | |
695 movl 32(%esp),%ebp | |
696 xorl %eax,%eax | |
697 andl $4294967288,%ebp | |
698 jz .L014aw_finish | |
699 .L015aw_loop: | |
700 | |
701 movl (%esi),%ecx | |
702 movl (%edi),%edx | |
703 subl %eax,%ecx | |
704 movl $0,%eax | |
705 adcl %eax,%eax | |
706 subl %edx,%ecx | |
707 adcl $0,%eax | |
708 movl %ecx,(%ebx) | |
709 | |
710 movl 4(%esi),%ecx | |
711 movl 4(%edi),%edx | |
712 subl %eax,%ecx | |
713 movl $0,%eax | |
714 adcl %eax,%eax | |
715 subl %edx,%ecx | |
716 adcl $0,%eax | |
717 movl %ecx,4(%ebx) | |
718 | |
719 movl 8(%esi),%ecx | |
720 movl 8(%edi),%edx | |
721 subl %eax,%ecx | |
722 movl $0,%eax | |
723 adcl %eax,%eax | |
724 subl %edx,%ecx | |
725 adcl $0,%eax | |
726 movl %ecx,8(%ebx) | |
727 | |
728 movl 12(%esi),%ecx | |
729 movl 12(%edi),%edx | |
730 subl %eax,%ecx | |
731 movl $0,%eax | |
732 adcl %eax,%eax | |
733 subl %edx,%ecx | |
734 adcl $0,%eax | |
735 movl %ecx,12(%ebx) | |
736 | |
737 movl 16(%esi),%ecx | |
738 movl 16(%edi),%edx | |
739 subl %eax,%ecx | |
740 movl $0,%eax | |
741 adcl %eax,%eax | |
742 subl %edx,%ecx | |
743 adcl $0,%eax | |
744 movl %ecx,16(%ebx) | |
745 | |
746 movl 20(%esi),%ecx | |
747 movl 20(%edi),%edx | |
748 subl %eax,%ecx | |
749 movl $0,%eax | |
750 adcl %eax,%eax | |
751 subl %edx,%ecx | |
752 adcl $0,%eax | |
753 movl %ecx,20(%ebx) | |
754 | |
755 movl 24(%esi),%ecx | |
756 movl 24(%edi),%edx | |
757 subl %eax,%ecx | |
758 movl $0,%eax | |
759 adcl %eax,%eax | |
760 subl %edx,%ecx | |
761 adcl $0,%eax | |
762 movl %ecx,24(%ebx) | |
763 | |
764 movl 28(%esi),%ecx | |
765 movl 28(%edi),%edx | |
766 subl %eax,%ecx | |
767 movl $0,%eax | |
768 adcl %eax,%eax | |
769 subl %edx,%ecx | |
770 adcl $0,%eax | |
771 movl %ecx,28(%ebx) | |
772 | |
773 addl $32,%esi | |
774 addl $32,%edi | |
775 addl $32,%ebx | |
776 subl $8,%ebp | |
777 jnz .L015aw_loop | |
778 .L014aw_finish: | |
779 movl 32(%esp),%ebp | |
780 andl $7,%ebp | |
781 jz .L016aw_end | |
782 | |
783 movl (%esi),%ecx | |
784 movl (%edi),%edx | |
785 subl %eax,%ecx | |
786 movl $0,%eax | |
787 adcl %eax,%eax | |
788 subl %edx,%ecx | |
789 adcl $0,%eax | |
790 decl %ebp | |
791 movl %ecx,(%ebx) | |
792 jz .L016aw_end | |
793 | |
794 movl 4(%esi),%ecx | |
795 movl 4(%edi),%edx | |
796 subl %eax,%ecx | |
797 movl $0,%eax | |
798 adcl %eax,%eax | |
799 subl %edx,%ecx | |
800 adcl $0,%eax | |
801 decl %ebp | |
802 movl %ecx,4(%ebx) | |
803 jz .L016aw_end | |
804 | |
805 movl 8(%esi),%ecx | |
806 movl 8(%edi),%edx | |
807 subl %eax,%ecx | |
808 movl $0,%eax | |
809 adcl %eax,%eax | |
810 subl %edx,%ecx | |
811 adcl $0,%eax | |
812 decl %ebp | |
813 movl %ecx,8(%ebx) | |
814 jz .L016aw_end | |
815 | |
816 movl 12(%esi),%ecx | |
817 movl 12(%edi),%edx | |
818 subl %eax,%ecx | |
819 movl $0,%eax | |
820 adcl %eax,%eax | |
821 subl %edx,%ecx | |
822 adcl $0,%eax | |
823 decl %ebp | |
824 movl %ecx,12(%ebx) | |
825 jz .L016aw_end | |
826 | |
827 movl 16(%esi),%ecx | |
828 movl 16(%edi),%edx | |
829 subl %eax,%ecx | |
830 movl $0,%eax | |
831 adcl %eax,%eax | |
832 subl %edx,%ecx | |
833 adcl $0,%eax | |
834 decl %ebp | |
835 movl %ecx,16(%ebx) | |
836 jz .L016aw_end | |
837 | |
838 movl 20(%esi),%ecx | |
839 movl 20(%edi),%edx | |
840 subl %eax,%ecx | |
841 movl $0,%eax | |
842 adcl %eax,%eax | |
843 subl %edx,%ecx | |
844 adcl $0,%eax | |
845 decl %ebp | |
846 movl %ecx,20(%ebx) | |
847 jz .L016aw_end | |
848 | |
849 movl 24(%esi),%ecx | |
850 movl 24(%edi),%edx | |
851 subl %eax,%ecx | |
852 movl $0,%eax | |
853 adcl %eax,%eax | |
854 subl %edx,%ecx | |
855 adcl $0,%eax | |
856 movl %ecx,24(%ebx) | |
857 .L016aw_end: | |
858 popl %edi | |
859 popl %esi | |
860 popl %ebx | |
861 popl %ebp | |
862 ret | |
863 .size bn_sub_words,.-.L_bn_sub_words_begin | |
864 .globl bn_mul_comba8 | |
865 .type bn_mul_comba8,@function | |
866 .align 16 | |
867 bn_mul_comba8: | |
868 .L_bn_mul_comba8_begin: | |
869 pushl %esi | |
870 movl 12(%esp),%esi | |
871 pushl %edi | |
872 movl 20(%esp),%edi | |
873 pushl %ebp | |
874 pushl %ebx | |
875 xorl %ebx,%ebx | |
876 movl (%esi),%eax | |
877 xorl %ecx,%ecx | |
878 movl (%edi),%edx | |
879 | |
880 xorl %ebp,%ebp | |
881 | |
882 mull %edx | |
883 addl %eax,%ebx | |
884 movl 20(%esp),%eax | |
885 adcl %edx,%ecx | |
886 movl (%edi),%edx | |
887 adcl $0,%ebp | |
888 movl %ebx,(%eax) | |
889 movl 4(%esi),%eax | |
890 | |
891 | |
892 xorl %ebx,%ebx | |
893 | |
894 mull %edx | |
895 addl %eax,%ecx | |
896 movl (%esi),%eax | |
897 adcl %edx,%ebp | |
898 movl 4(%edi),%edx | |
899 adcl $0,%ebx | |
900 | |
901 mull %edx | |
902 addl %eax,%ecx | |
903 movl 20(%esp),%eax | |
904 adcl %edx,%ebp | |
905 movl (%edi),%edx | |
906 adcl $0,%ebx | |
907 movl %ecx,4(%eax) | |
908 movl 8(%esi),%eax | |
909 | |
910 | |
911 xorl %ecx,%ecx | |
912 | |
913 mull %edx | |
914 addl %eax,%ebp | |
915 movl 4(%esi),%eax | |
916 adcl %edx,%ebx | |
917 movl 4(%edi),%edx | |
918 adcl $0,%ecx | |
919 | |
920 mull %edx | |
921 addl %eax,%ebp | |
922 movl (%esi),%eax | |
923 adcl %edx,%ebx | |
924 movl 8(%edi),%edx | |
925 adcl $0,%ecx | |
926 | |
927 mull %edx | |
928 addl %eax,%ebp | |
929 movl 20(%esp),%eax | |
930 adcl %edx,%ebx | |
931 movl (%edi),%edx | |
932 adcl $0,%ecx | |
933 movl %ebp,8(%eax) | |
934 movl 12(%esi),%eax | |
935 | |
936 | |
937 xorl %ebp,%ebp | |
938 | |
939 mull %edx | |
940 addl %eax,%ebx | |
941 movl 8(%esi),%eax | |
942 adcl %edx,%ecx | |
943 movl 4(%edi),%edx | |
944 adcl $0,%ebp | |
945 | |
946 mull %edx | |
947 addl %eax,%ebx | |
948 movl 4(%esi),%eax | |
949 adcl %edx,%ecx | |
950 movl 8(%edi),%edx | |
951 adcl $0,%ebp | |
952 | |
953 mull %edx | |
954 addl %eax,%ebx | |
955 movl (%esi),%eax | |
956 adcl %edx,%ecx | |
957 movl 12(%edi),%edx | |
958 adcl $0,%ebp | |
959 | |
960 mull %edx | |
961 addl %eax,%ebx | |
962 movl 20(%esp),%eax | |
963 adcl %edx,%ecx | |
964 movl (%edi),%edx | |
965 adcl $0,%ebp | |
966 movl %ebx,12(%eax) | |
967 movl 16(%esi),%eax | |
968 | |
969 | |
970 xorl %ebx,%ebx | |
971 | |
972 mull %edx | |
973 addl %eax,%ecx | |
974 movl 12(%esi),%eax | |
975 adcl %edx,%ebp | |
976 movl 4(%edi),%edx | |
977 adcl $0,%ebx | |
978 | |
979 mull %edx | |
980 addl %eax,%ecx | |
981 movl 8(%esi),%eax | |
982 adcl %edx,%ebp | |
983 movl 8(%edi),%edx | |
984 adcl $0,%ebx | |
985 | |
986 mull %edx | |
987 addl %eax,%ecx | |
988 movl 4(%esi),%eax | |
989 adcl %edx,%ebp | |
990 movl 12(%edi),%edx | |
991 adcl $0,%ebx | |
992 | |
993 mull %edx | |
994 addl %eax,%ecx | |
995 movl (%esi),%eax | |
996 adcl %edx,%ebp | |
997 movl 16(%edi),%edx | |
998 adcl $0,%ebx | |
999 | |
1000 mull %edx | |
1001 addl %eax,%ecx | |
1002 movl 20(%esp),%eax | |
1003 adcl %edx,%ebp | |
1004 movl (%edi),%edx | |
1005 adcl $0,%ebx | |
1006 movl %ecx,16(%eax) | |
1007 movl 20(%esi),%eax | |
1008 | |
1009 | |
1010 xorl %ecx,%ecx | |
1011 | |
1012 mull %edx | |
1013 addl %eax,%ebp | |
1014 movl 16(%esi),%eax | |
1015 adcl %edx,%ebx | |
1016 movl 4(%edi),%edx | |
1017 adcl $0,%ecx | |
1018 | |
1019 mull %edx | |
1020 addl %eax,%ebp | |
1021 movl 12(%esi),%eax | |
1022 adcl %edx,%ebx | |
1023 movl 8(%edi),%edx | |
1024 adcl $0,%ecx | |
1025 | |
1026 mull %edx | |
1027 addl %eax,%ebp | |
1028 movl 8(%esi),%eax | |
1029 adcl %edx,%ebx | |
1030 movl 12(%edi),%edx | |
1031 adcl $0,%ecx | |
1032 | |
1033 mull %edx | |
1034 addl %eax,%ebp | |
1035 movl 4(%esi),%eax | |
1036 adcl %edx,%ebx | |
1037 movl 16(%edi),%edx | |
1038 adcl $0,%ecx | |
1039 | |
1040 mull %edx | |
1041 addl %eax,%ebp | |
1042 movl (%esi),%eax | |
1043 adcl %edx,%ebx | |
1044 movl 20(%edi),%edx | |
1045 adcl $0,%ecx | |
1046 | |
1047 mull %edx | |
1048 addl %eax,%ebp | |
1049 movl 20(%esp),%eax | |
1050 adcl %edx,%ebx | |
1051 movl (%edi),%edx | |
1052 adcl $0,%ecx | |
1053 movl %ebp,20(%eax) | |
1054 movl 24(%esi),%eax | |
1055 | |
1056 | |
1057 xorl %ebp,%ebp | |
1058 | |
1059 mull %edx | |
1060 addl %eax,%ebx | |
1061 movl 20(%esi),%eax | |
1062 adcl %edx,%ecx | |
1063 movl 4(%edi),%edx | |
1064 adcl $0,%ebp | |
1065 | |
1066 mull %edx | |
1067 addl %eax,%ebx | |
1068 movl 16(%esi),%eax | |
1069 adcl %edx,%ecx | |
1070 movl 8(%edi),%edx | |
1071 adcl $0,%ebp | |
1072 | |
1073 mull %edx | |
1074 addl %eax,%ebx | |
1075 movl 12(%esi),%eax | |
1076 adcl %edx,%ecx | |
1077 movl 12(%edi),%edx | |
1078 adcl $0,%ebp | |
1079 | |
1080 mull %edx | |
1081 addl %eax,%ebx | |
1082 movl 8(%esi),%eax | |
1083 adcl %edx,%ecx | |
1084 movl 16(%edi),%edx | |
1085 adcl $0,%ebp | |
1086 | |
1087 mull %edx | |
1088 addl %eax,%ebx | |
1089 movl 4(%esi),%eax | |
1090 adcl %edx,%ecx | |
1091 movl 20(%edi),%edx | |
1092 adcl $0,%ebp | |
1093 | |
1094 mull %edx | |
1095 addl %eax,%ebx | |
1096 movl (%esi),%eax | |
1097 adcl %edx,%ecx | |
1098 movl 24(%edi),%edx | |
1099 adcl $0,%ebp | |
1100 | |
1101 mull %edx | |
1102 addl %eax,%ebx | |
1103 movl 20(%esp),%eax | |
1104 adcl %edx,%ecx | |
1105 movl (%edi),%edx | |
1106 adcl $0,%ebp | |
1107 movl %ebx,24(%eax) | |
1108 movl 28(%esi),%eax | |
1109 | |
1110 | |
1111 xorl %ebx,%ebx | |
1112 | |
1113 mull %edx | |
1114 addl %eax,%ecx | |
1115 movl 24(%esi),%eax | |
1116 adcl %edx,%ebp | |
1117 movl 4(%edi),%edx | |
1118 adcl $0,%ebx | |
1119 | |
1120 mull %edx | |
1121 addl %eax,%ecx | |
1122 movl 20(%esi),%eax | |
1123 adcl %edx,%ebp | |
1124 movl 8(%edi),%edx | |
1125 adcl $0,%ebx | |
1126 | |
1127 mull %edx | |
1128 addl %eax,%ecx | |
1129 movl 16(%esi),%eax | |
1130 adcl %edx,%ebp | |
1131 movl 12(%edi),%edx | |
1132 adcl $0,%ebx | |
1133 | |
1134 mull %edx | |
1135 addl %eax,%ecx | |
1136 movl 12(%esi),%eax | |
1137 adcl %edx,%ebp | |
1138 movl 16(%edi),%edx | |
1139 adcl $0,%ebx | |
1140 | |
1141 mull %edx | |
1142 addl %eax,%ecx | |
1143 movl 8(%esi),%eax | |
1144 adcl %edx,%ebp | |
1145 movl 20(%edi),%edx | |
1146 adcl $0,%ebx | |
1147 | |
1148 mull %edx | |
1149 addl %eax,%ecx | |
1150 movl 4(%esi),%eax | |
1151 adcl %edx,%ebp | |
1152 movl 24(%edi),%edx | |
1153 adcl $0,%ebx | |
1154 | |
1155 mull %edx | |
1156 addl %eax,%ecx | |
1157 movl (%esi),%eax | |
1158 adcl %edx,%ebp | |
1159 movl 28(%edi),%edx | |
1160 adcl $0,%ebx | |
1161 | |
1162 mull %edx | |
1163 addl %eax,%ecx | |
1164 movl 20(%esp),%eax | |
1165 adcl %edx,%ebp | |
1166 movl 4(%edi),%edx | |
1167 adcl $0,%ebx | |
1168 movl %ecx,28(%eax) | |
1169 movl 28(%esi),%eax | |
1170 | |
1171 | |
1172 xorl %ecx,%ecx | |
1173 | |
1174 mull %edx | |
1175 addl %eax,%ebp | |
1176 movl 24(%esi),%eax | |
1177 adcl %edx,%ebx | |
1178 movl 8(%edi),%edx | |
1179 adcl $0,%ecx | |
1180 | |
1181 mull %edx | |
1182 addl %eax,%ebp | |
1183 movl 20(%esi),%eax | |
1184 adcl %edx,%ebx | |
1185 movl 12(%edi),%edx | |
1186 adcl $0,%ecx | |
1187 | |
1188 mull %edx | |
1189 addl %eax,%ebp | |
1190 movl 16(%esi),%eax | |
1191 adcl %edx,%ebx | |
1192 movl 16(%edi),%edx | |
1193 adcl $0,%ecx | |
1194 | |
1195 mull %edx | |
1196 addl %eax,%ebp | |
1197 movl 12(%esi),%eax | |
1198 adcl %edx,%ebx | |
1199 movl 20(%edi),%edx | |
1200 adcl $0,%ecx | |
1201 | |
1202 mull %edx | |
1203 addl %eax,%ebp | |
1204 movl 8(%esi),%eax | |
1205 adcl %edx,%ebx | |
1206 movl 24(%edi),%edx | |
1207 adcl $0,%ecx | |
1208 | |
1209 mull %edx | |
1210 addl %eax,%ebp | |
1211 movl 4(%esi),%eax | |
1212 adcl %edx,%ebx | |
1213 movl 28(%edi),%edx | |
1214 adcl $0,%ecx | |
1215 | |
1216 mull %edx | |
1217 addl %eax,%ebp | |
1218 movl 20(%esp),%eax | |
1219 adcl %edx,%ebx | |
1220 movl 8(%edi),%edx | |
1221 adcl $0,%ecx | |
1222 movl %ebp,32(%eax) | |
1223 movl 28(%esi),%eax | |
1224 | |
1225 | |
1226 xorl %ebp,%ebp | |
1227 | |
1228 mull %edx | |
1229 addl %eax,%ebx | |
1230 movl 24(%esi),%eax | |
1231 adcl %edx,%ecx | |
1232 movl 12(%edi),%edx | |
1233 adcl $0,%ebp | |
1234 | |
1235 mull %edx | |
1236 addl %eax,%ebx | |
1237 movl 20(%esi),%eax | |
1238 adcl %edx,%ecx | |
1239 movl 16(%edi),%edx | |
1240 adcl $0,%ebp | |
1241 | |
1242 mull %edx | |
1243 addl %eax,%ebx | |
1244 movl 16(%esi),%eax | |
1245 adcl %edx,%ecx | |
1246 movl 20(%edi),%edx | |
1247 adcl $0,%ebp | |
1248 | |
1249 mull %edx | |
1250 addl %eax,%ebx | |
1251 movl 12(%esi),%eax | |
1252 adcl %edx,%ecx | |
1253 movl 24(%edi),%edx | |
1254 adcl $0,%ebp | |
1255 | |
1256 mull %edx | |
1257 addl %eax,%ebx | |
1258 movl 8(%esi),%eax | |
1259 adcl %edx,%ecx | |
1260 movl 28(%edi),%edx | |
1261 adcl $0,%ebp | |
1262 | |
1263 mull %edx | |
1264 addl %eax,%ebx | |
1265 movl 20(%esp),%eax | |
1266 adcl %edx,%ecx | |
1267 movl 12(%edi),%edx | |
1268 adcl $0,%ebp | |
1269 movl %ebx,36(%eax) | |
1270 movl 28(%esi),%eax | |
1271 | |
1272 | |
1273 xorl %ebx,%ebx | |
1274 | |
1275 mull %edx | |
1276 addl %eax,%ecx | |
1277 movl 24(%esi),%eax | |
1278 adcl %edx,%ebp | |
1279 movl 16(%edi),%edx | |
1280 adcl $0,%ebx | |
1281 | |
1282 mull %edx | |
1283 addl %eax,%ecx | |
1284 movl 20(%esi),%eax | |
1285 adcl %edx,%ebp | |
1286 movl 20(%edi),%edx | |
1287 adcl $0,%ebx | |
1288 | |
1289 mull %edx | |
1290 addl %eax,%ecx | |
1291 movl 16(%esi),%eax | |
1292 adcl %edx,%ebp | |
1293 movl 24(%edi),%edx | |
1294 adcl $0,%ebx | |
1295 | |
1296 mull %edx | |
1297 addl %eax,%ecx | |
1298 movl 12(%esi),%eax | |
1299 adcl %edx,%ebp | |
1300 movl 28(%edi),%edx | |
1301 adcl $0,%ebx | |
1302 | |
1303 mull %edx | |
1304 addl %eax,%ecx | |
1305 movl 20(%esp),%eax | |
1306 adcl %edx,%ebp | |
1307 movl 16(%edi),%edx | |
1308 adcl $0,%ebx | |
1309 movl %ecx,40(%eax) | |
1310 movl 28(%esi),%eax | |
1311 | |
1312 | |
1313 xorl %ecx,%ecx | |
1314 | |
1315 mull %edx | |
1316 addl %eax,%ebp | |
1317 movl 24(%esi),%eax | |
1318 adcl %edx,%ebx | |
1319 movl 20(%edi),%edx | |
1320 adcl $0,%ecx | |
1321 | |
1322 mull %edx | |
1323 addl %eax,%ebp | |
1324 movl 20(%esi),%eax | |
1325 adcl %edx,%ebx | |
1326 movl 24(%edi),%edx | |
1327 adcl $0,%ecx | |
1328 | |
1329 mull %edx | |
1330 addl %eax,%ebp | |
1331 movl 16(%esi),%eax | |
1332 adcl %edx,%ebx | |
1333 movl 28(%edi),%edx | |
1334 adcl $0,%ecx | |
1335 | |
1336 mull %edx | |
1337 addl %eax,%ebp | |
1338 movl 20(%esp),%eax | |
1339 adcl %edx,%ebx | |
1340 movl 20(%edi),%edx | |
1341 adcl $0,%ecx | |
1342 movl %ebp,44(%eax) | |
1343 movl 28(%esi),%eax | |
1344 | |
1345 | |
1346 xorl %ebp,%ebp | |
1347 | |
1348 mull %edx | |
1349 addl %eax,%ebx | |
1350 movl 24(%esi),%eax | |
1351 adcl %edx,%ecx | |
1352 movl 24(%edi),%edx | |
1353 adcl $0,%ebp | |
1354 | |
1355 mull %edx | |
1356 addl %eax,%ebx | |
1357 movl 20(%esi),%eax | |
1358 adcl %edx,%ecx | |
1359 movl 28(%edi),%edx | |
1360 adcl $0,%ebp | |
1361 | |
1362 mull %edx | |
1363 addl %eax,%ebx | |
1364 movl 20(%esp),%eax | |
1365 adcl %edx,%ecx | |
1366 movl 24(%edi),%edx | |
1367 adcl $0,%ebp | |
1368 movl %ebx,48(%eax) | |
1369 movl 28(%esi),%eax | |
1370 | |
1371 | |
1372 xorl %ebx,%ebx | |
1373 | |
1374 mull %edx | |
1375 addl %eax,%ecx | |
1376 movl 24(%esi),%eax | |
1377 adcl %edx,%ebp | |
1378 movl 28(%edi),%edx | |
1379 adcl $0,%ebx | |
1380 | |
1381 mull %edx | |
1382 addl %eax,%ecx | |
1383 movl 20(%esp),%eax | |
1384 adcl %edx,%ebp | |
1385 movl 28(%edi),%edx | |
1386 adcl $0,%ebx | |
1387 movl %ecx,52(%eax) | |
1388 movl 28(%esi),%eax | |
1389 | |
1390 | |
1391 xorl %ecx,%ecx | |
1392 | |
1393 mull %edx | |
1394 addl %eax,%ebp | |
1395 movl 20(%esp),%eax | |
1396 adcl %edx,%ebx | |
1397 adcl $0,%ecx | |
1398 movl %ebp,56(%eax) | |
1399 | |
1400 | |
1401 movl %ebx,60(%eax) | |
1402 popl %ebx | |
1403 popl %ebp | |
1404 popl %edi | |
1405 popl %esi | |
1406 ret | |
1407 .size bn_mul_comba8,.-.L_bn_mul_comba8_begin | |
1408 .globl bn_mul_comba4 | |
1409 .type bn_mul_comba4,@function | |
1410 .align 16 | |
1411 bn_mul_comba4: | |
1412 .L_bn_mul_comba4_begin: | |
1413 pushl %esi | |
1414 movl 12(%esp),%esi | |
1415 pushl %edi | |
1416 movl 20(%esp),%edi | |
1417 pushl %ebp | |
1418 pushl %ebx | |
1419 xorl %ebx,%ebx | |
1420 movl (%esi),%eax | |
1421 xorl %ecx,%ecx | |
1422 movl (%edi),%edx | |
1423 | |
1424 xorl %ebp,%ebp | |
1425 | |
1426 mull %edx | |
1427 addl %eax,%ebx | |
1428 movl 20(%esp),%eax | |
1429 adcl %edx,%ecx | |
1430 movl (%edi),%edx | |
1431 adcl $0,%ebp | |
1432 movl %ebx,(%eax) | |
1433 movl 4(%esi),%eax | |
1434 | |
1435 | |
1436 xorl %ebx,%ebx | |
1437 | |
1438 mull %edx | |
1439 addl %eax,%ecx | |
1440 movl (%esi),%eax | |
1441 adcl %edx,%ebp | |
1442 movl 4(%edi),%edx | |
1443 adcl $0,%ebx | |
1444 | |
1445 mull %edx | |
1446 addl %eax,%ecx | |
1447 movl 20(%esp),%eax | |
1448 adcl %edx,%ebp | |
1449 movl (%edi),%edx | |
1450 adcl $0,%ebx | |
1451 movl %ecx,4(%eax) | |
1452 movl 8(%esi),%eax | |
1453 | |
1454 | |
1455 xorl %ecx,%ecx | |
1456 | |
1457 mull %edx | |
1458 addl %eax,%ebp | |
1459 movl 4(%esi),%eax | |
1460 adcl %edx,%ebx | |
1461 movl 4(%edi),%edx | |
1462 adcl $0,%ecx | |
1463 | |
1464 mull %edx | |
1465 addl %eax,%ebp | |
1466 movl (%esi),%eax | |
1467 adcl %edx,%ebx | |
1468 movl 8(%edi),%edx | |
1469 adcl $0,%ecx | |
1470 | |
1471 mull %edx | |
1472 addl %eax,%ebp | |
1473 movl 20(%esp),%eax | |
1474 adcl %edx,%ebx | |
1475 movl (%edi),%edx | |
1476 adcl $0,%ecx | |
1477 movl %ebp,8(%eax) | |
1478 movl 12(%esi),%eax | |
1479 | |
1480 | |
1481 xorl %ebp,%ebp | |
1482 | |
1483 mull %edx | |
1484 addl %eax,%ebx | |
1485 movl 8(%esi),%eax | |
1486 adcl %edx,%ecx | |
1487 movl 4(%edi),%edx | |
1488 adcl $0,%ebp | |
1489 | |
1490 mull %edx | |
1491 addl %eax,%ebx | |
1492 movl 4(%esi),%eax | |
1493 adcl %edx,%ecx | |
1494 movl 8(%edi),%edx | |
1495 adcl $0,%ebp | |
1496 | |
1497 mull %edx | |
1498 addl %eax,%ebx | |
1499 movl (%esi),%eax | |
1500 adcl %edx,%ecx | |
1501 movl 12(%edi),%edx | |
1502 adcl $0,%ebp | |
1503 | |
1504 mull %edx | |
1505 addl %eax,%ebx | |
1506 movl 20(%esp),%eax | |
1507 adcl %edx,%ecx | |
1508 movl 4(%edi),%edx | |
1509 adcl $0,%ebp | |
1510 movl %ebx,12(%eax) | |
1511 movl 12(%esi),%eax | |
1512 | |
1513 | |
1514 xorl %ebx,%ebx | |
1515 | |
1516 mull %edx | |
1517 addl %eax,%ecx | |
1518 movl 8(%esi),%eax | |
1519 adcl %edx,%ebp | |
1520 movl 8(%edi),%edx | |
1521 adcl $0,%ebx | |
1522 | |
1523 mull %edx | |
1524 addl %eax,%ecx | |
1525 movl 4(%esi),%eax | |
1526 adcl %edx,%ebp | |
1527 movl 12(%edi),%edx | |
1528 adcl $0,%ebx | |
1529 | |
1530 mull %edx | |
1531 addl %eax,%ecx | |
1532 movl 20(%esp),%eax | |
1533 adcl %edx,%ebp | |
1534 movl 8(%edi),%edx | |
1535 adcl $0,%ebx | |
1536 movl %ecx,16(%eax) | |
1537 movl 12(%esi),%eax | |
1538 | |
1539 | |
1540 xorl %ecx,%ecx | |
1541 | |
1542 mull %edx | |
1543 addl %eax,%ebp | |
1544 movl 8(%esi),%eax | |
1545 adcl %edx,%ebx | |
1546 movl 12(%edi),%edx | |
1547 adcl $0,%ecx | |
1548 | |
1549 mull %edx | |
1550 addl %eax,%ebp | |
1551 movl 20(%esp),%eax | |
1552 adcl %edx,%ebx | |
1553 movl 12(%edi),%edx | |
1554 adcl $0,%ecx | |
1555 movl %ebp,20(%eax) | |
1556 movl 12(%esi),%eax | |
1557 | |
1558 | |
1559 xorl %ebp,%ebp | |
1560 | |
1561 mull %edx | |
1562 addl %eax,%ebx | |
1563 movl 20(%esp),%eax | |
1564 adcl %edx,%ecx | |
1565 adcl $0,%ebp | |
1566 movl %ebx,24(%eax) | |
1567 | |
1568 | |
1569 movl %ecx,28(%eax) | |
1570 popl %ebx | |
1571 popl %ebp | |
1572 popl %edi | |
1573 popl %esi | |
1574 ret | |
1575 .size bn_mul_comba4,.-.L_bn_mul_comba4_begin | |
1576 .globl bn_sqr_comba8 | |
1577 .type bn_sqr_comba8,@function | |
1578 .align 16 | |
1579 bn_sqr_comba8: | |
1580 .L_bn_sqr_comba8_begin: | |
1581 pushl %esi | |
1582 pushl %edi | |
1583 pushl %ebp | |
1584 pushl %ebx | |
1585 movl 20(%esp),%edi | |
1586 movl 24(%esp),%esi | |
1587 xorl %ebx,%ebx | |
1588 xorl %ecx,%ecx | |
1589 movl (%esi),%eax | |
1590 | |
1591 xorl %ebp,%ebp | |
1592 | |
1593 mull %eax | |
1594 addl %eax,%ebx | |
1595 adcl %edx,%ecx | |
1596 movl (%esi),%edx | |
1597 adcl $0,%ebp | |
1598 movl %ebx,(%edi) | |
1599 movl 4(%esi),%eax | |
1600 | |
1601 | |
1602 xorl %ebx,%ebx | |
1603 | |
1604 mull %edx | |
1605 addl %eax,%eax | |
1606 adcl %edx,%edx | |
1607 adcl $0,%ebx | |
1608 addl %eax,%ecx | |
1609 adcl %edx,%ebp | |
1610 movl 8(%esi),%eax | |
1611 adcl $0,%ebx | |
1612 movl %ecx,4(%edi) | |
1613 movl (%esi),%edx | |
1614 | |
1615 | |
1616 xorl %ecx,%ecx | |
1617 | |
1618 mull %edx | |
1619 addl %eax,%eax | |
1620 adcl %edx,%edx | |
1621 adcl $0,%ecx | |
1622 addl %eax,%ebp | |
1623 adcl %edx,%ebx | |
1624 movl 4(%esi),%eax | |
1625 adcl $0,%ecx | |
1626 | |
1627 mull %eax | |
1628 addl %eax,%ebp | |
1629 adcl %edx,%ebx | |
1630 movl (%esi),%edx | |
1631 adcl $0,%ecx | |
1632 movl %ebp,8(%edi) | |
1633 movl 12(%esi),%eax | |
1634 | |
1635 | |
1636 xorl %ebp,%ebp | |
1637 | |
1638 mull %edx | |
1639 addl %eax,%eax | |
1640 adcl %edx,%edx | |
1641 adcl $0,%ebp | |
1642 addl %eax,%ebx | |
1643 adcl %edx,%ecx | |
1644 movl 8(%esi),%eax | |
1645 adcl $0,%ebp | |
1646 movl 4(%esi),%edx | |
1647 | |
1648 mull %edx | |
1649 addl %eax,%eax | |
1650 adcl %edx,%edx | |
1651 adcl $0,%ebp | |
1652 addl %eax,%ebx | |
1653 adcl %edx,%ecx | |
1654 movl 16(%esi),%eax | |
1655 adcl $0,%ebp | |
1656 movl %ebx,12(%edi) | |
1657 movl (%esi),%edx | |
1658 | |
1659 | |
1660 xorl %ebx,%ebx | |
1661 | |
1662 mull %edx | |
1663 addl %eax,%eax | |
1664 adcl %edx,%edx | |
1665 adcl $0,%ebx | |
1666 addl %eax,%ecx | |
1667 adcl %edx,%ebp | |
1668 movl 12(%esi),%eax | |
1669 adcl $0,%ebx | |
1670 movl 4(%esi),%edx | |
1671 | |
1672 mull %edx | |
1673 addl %eax,%eax | |
1674 adcl %edx,%edx | |
1675 adcl $0,%ebx | |
1676 addl %eax,%ecx | |
1677 adcl %edx,%ebp | |
1678 movl 8(%esi),%eax | |
1679 adcl $0,%ebx | |
1680 | |
1681 mull %eax | |
1682 addl %eax,%ecx | |
1683 adcl %edx,%ebp | |
1684 movl (%esi),%edx | |
1685 adcl $0,%ebx | |
1686 movl %ecx,16(%edi) | |
1687 movl 20(%esi),%eax | |
1688 | |
1689 | |
1690 xorl %ecx,%ecx | |
1691 | |
1692 mull %edx | |
1693 addl %eax,%eax | |
1694 adcl %edx,%edx | |
1695 adcl $0,%ecx | |
1696 addl %eax,%ebp | |
1697 adcl %edx,%ebx | |
1698 movl 16(%esi),%eax | |
1699 adcl $0,%ecx | |
1700 movl 4(%esi),%edx | |
1701 | |
1702 mull %edx | |
1703 addl %eax,%eax | |
1704 adcl %edx,%edx | |
1705 adcl $0,%ecx | |
1706 addl %eax,%ebp | |
1707 adcl %edx,%ebx | |
1708 movl 12(%esi),%eax | |
1709 adcl $0,%ecx | |
1710 movl 8(%esi),%edx | |
1711 | |
1712 mull %edx | |
1713 addl %eax,%eax | |
1714 adcl %edx,%edx | |
1715 adcl $0,%ecx | |
1716 addl %eax,%ebp | |
1717 adcl %edx,%ebx | |
1718 movl 24(%esi),%eax | |
1719 adcl $0,%ecx | |
1720 movl %ebp,20(%edi) | |
1721 movl (%esi),%edx | |
1722 | |
1723 | |
1724 xorl %ebp,%ebp | |
1725 | |
1726 mull %edx | |
1727 addl %eax,%eax | |
1728 adcl %edx,%edx | |
1729 adcl $0,%ebp | |
1730 addl %eax,%ebx | |
1731 adcl %edx,%ecx | |
1732 movl 20(%esi),%eax | |
1733 adcl $0,%ebp | |
1734 movl 4(%esi),%edx | |
1735 | |
1736 mull %edx | |
1737 addl %eax,%eax | |
1738 adcl %edx,%edx | |
1739 adcl $0,%ebp | |
1740 addl %eax,%ebx | |
1741 adcl %edx,%ecx | |
1742 movl 16(%esi),%eax | |
1743 adcl $0,%ebp | |
1744 movl 8(%esi),%edx | |
1745 | |
1746 mull %edx | |
1747 addl %eax,%eax | |
1748 adcl %edx,%edx | |
1749 adcl $0,%ebp | |
1750 addl %eax,%ebx | |
1751 adcl %edx,%ecx | |
1752 movl 12(%esi),%eax | |
1753 adcl $0,%ebp | |
1754 | |
1755 mull %eax | |
1756 addl %eax,%ebx | |
1757 adcl %edx,%ecx | |
1758 movl (%esi),%edx | |
1759 adcl $0,%ebp | |
1760 movl %ebx,24(%edi) | |
1761 movl 28(%esi),%eax | |
1762 | |
1763 | |
1764 xorl %ebx,%ebx | |
1765 | |
1766 mull %edx | |
1767 addl %eax,%eax | |
1768 adcl %edx,%edx | |
1769 adcl $0,%ebx | |
1770 addl %eax,%ecx | |
1771 adcl %edx,%ebp | |
1772 movl 24(%esi),%eax | |
1773 adcl $0,%ebx | |
1774 movl 4(%esi),%edx | |
1775 | |
1776 mull %edx | |
1777 addl %eax,%eax | |
1778 adcl %edx,%edx | |
1779 adcl $0,%ebx | |
1780 addl %eax,%ecx | |
1781 adcl %edx,%ebp | |
1782 movl 20(%esi),%eax | |
1783 adcl $0,%ebx | |
1784 movl 8(%esi),%edx | |
1785 | |
1786 mull %edx | |
1787 addl %eax,%eax | |
1788 adcl %edx,%edx | |
1789 adcl $0,%ebx | |
1790 addl %eax,%ecx | |
1791 adcl %edx,%ebp | |
1792 movl 16(%esi),%eax | |
1793 adcl $0,%ebx | |
1794 movl 12(%esi),%edx | |
1795 | |
1796 mull %edx | |
1797 addl %eax,%eax | |
1798 adcl %edx,%edx | |
1799 adcl $0,%ebx | |
1800 addl %eax,%ecx | |
1801 adcl %edx,%ebp | |
1802 movl 28(%esi),%eax | |
1803 adcl $0,%ebx | |
1804 movl %ecx,28(%edi) | |
1805 movl 4(%esi),%edx | |
1806 | |
1807 | |
1808 xorl %ecx,%ecx | |
1809 | |
1810 mull %edx | |
1811 addl %eax,%eax | |
1812 adcl %edx,%edx | |
1813 adcl $0,%ecx | |
1814 addl %eax,%ebp | |
1815 adcl %edx,%ebx | |
1816 movl 24(%esi),%eax | |
1817 adcl $0,%ecx | |
1818 movl 8(%esi),%edx | |
1819 | |
1820 mull %edx | |
1821 addl %eax,%eax | |
1822 adcl %edx,%edx | |
1823 adcl $0,%ecx | |
1824 addl %eax,%ebp | |
1825 adcl %edx,%ebx | |
1826 movl 20(%esi),%eax | |
1827 adcl $0,%ecx | |
1828 movl 12(%esi),%edx | |
1829 | |
1830 mull %edx | |
1831 addl %eax,%eax | |
1832 adcl %edx,%edx | |
1833 adcl $0,%ecx | |
1834 addl %eax,%ebp | |
1835 adcl %edx,%ebx | |
1836 movl 16(%esi),%eax | |
1837 adcl $0,%ecx | |
1838 | |
1839 mull %eax | |
1840 addl %eax,%ebp | |
1841 adcl %edx,%ebx | |
1842 movl 8(%esi),%edx | |
1843 adcl $0,%ecx | |
1844 movl %ebp,32(%edi) | |
1845 movl 28(%esi),%eax | |
1846 | |
1847 | |
1848 xorl %ebp,%ebp | |
1849 | |
1850 mull %edx | |
1851 addl %eax,%eax | |
1852 adcl %edx,%edx | |
1853 adcl $0,%ebp | |
1854 addl %eax,%ebx | |
1855 adcl %edx,%ecx | |
1856 movl 24(%esi),%eax | |
1857 adcl $0,%ebp | |
1858 movl 12(%esi),%edx | |
1859 | |
1860 mull %edx | |
1861 addl %eax,%eax | |
1862 adcl %edx,%edx | |
1863 adcl $0,%ebp | |
1864 addl %eax,%ebx | |
1865 adcl %edx,%ecx | |
1866 movl 20(%esi),%eax | |
1867 adcl $0,%ebp | |
1868 movl 16(%esi),%edx | |
1869 | |
1870 mull %edx | |
1871 addl %eax,%eax | |
1872 adcl %edx,%edx | |
1873 adcl $0,%ebp | |
1874 addl %eax,%ebx | |
1875 adcl %edx,%ecx | |
1876 movl 28(%esi),%eax | |
1877 adcl $0,%ebp | |
1878 movl %ebx,36(%edi) | |
1879 movl 12(%esi),%edx | |
1880 | |
1881 | |
1882 xorl %ebx,%ebx | |
1883 | |
1884 mull %edx | |
1885 addl %eax,%eax | |
1886 adcl %edx,%edx | |
1887 adcl $0,%ebx | |
1888 addl %eax,%ecx | |
1889 adcl %edx,%ebp | |
1890 movl 24(%esi),%eax | |
1891 adcl $0,%ebx | |
1892 movl 16(%esi),%edx | |
1893 | |
1894 mull %edx | |
1895 addl %eax,%eax | |
1896 adcl %edx,%edx | |
1897 adcl $0,%ebx | |
1898 addl %eax,%ecx | |
1899 adcl %edx,%ebp | |
1900 movl 20(%esi),%eax | |
1901 adcl $0,%ebx | |
1902 | |
1903 mull %eax | |
1904 addl %eax,%ecx | |
1905 adcl %edx,%ebp | |
1906 movl 16(%esi),%edx | |
1907 adcl $0,%ebx | |
1908 movl %ecx,40(%edi) | |
1909 movl 28(%esi),%eax | |
1910 | |
1911 | |
1912 xorl %ecx,%ecx | |
1913 | |
1914 mull %edx | |
1915 addl %eax,%eax | |
1916 adcl %edx,%edx | |
1917 adcl $0,%ecx | |
1918 addl %eax,%ebp | |
1919 adcl %edx,%ebx | |
1920 movl 24(%esi),%eax | |
1921 adcl $0,%ecx | |
1922 movl 20(%esi),%edx | |
1923 | |
1924 mull %edx | |
1925 addl %eax,%eax | |
1926 adcl %edx,%edx | |
1927 adcl $0,%ecx | |
1928 addl %eax,%ebp | |
1929 adcl %edx,%ebx | |
1930 movl 28(%esi),%eax | |
1931 adcl $0,%ecx | |
1932 movl %ebp,44(%edi) | |
1933 movl 20(%esi),%edx | |
1934 | |
1935 | |
1936 xorl %ebp,%ebp | |
1937 | |
1938 mull %edx | |
1939 addl %eax,%eax | |
1940 adcl %edx,%edx | |
1941 adcl $0,%ebp | |
1942 addl %eax,%ebx | |
1943 adcl %edx,%ecx | |
1944 movl 24(%esi),%eax | |
1945 adcl $0,%ebp | |
1946 | |
1947 mull %eax | |
1948 addl %eax,%ebx | |
1949 adcl %edx,%ecx | |
1950 movl 24(%esi),%edx | |
1951 adcl $0,%ebp | |
1952 movl %ebx,48(%edi) | |
1953 movl 28(%esi),%eax | |
1954 | |
1955 | |
1956 xorl %ebx,%ebx | |
1957 | |
1958 mull %edx | |
1959 addl %eax,%eax | |
1960 adcl %edx,%edx | |
1961 adcl $0,%ebx | |
1962 addl %eax,%ecx | |
1963 adcl %edx,%ebp | |
1964 movl 28(%esi),%eax | |
1965 adcl $0,%ebx | |
1966 movl %ecx,52(%edi) | |
1967 | |
1968 | |
1969 xorl %ecx,%ecx | |
1970 | |
1971 mull %eax | |
1972 addl %eax,%ebp | |
1973 adcl %edx,%ebx | |
1974 adcl $0,%ecx | |
1975 movl %ebp,56(%edi) | |
1976 | |
1977 movl %ebx,60(%edi) | |
1978 popl %ebx | |
1979 popl %ebp | |
1980 popl %edi | |
1981 popl %esi | |
1982 ret | |
1983 .size bn_sqr_comba8,.-.L_bn_sqr_comba8_begin | |
1984 .globl bn_sqr_comba4 | |
1985 .type bn_sqr_comba4,@function | |
1986 .align 16 | |
1987 bn_sqr_comba4: | |
1988 .L_bn_sqr_comba4_begin: | |
1989 pushl %esi | |
1990 pushl %edi | |
1991 pushl %ebp | |
1992 pushl %ebx | |
1993 movl 20(%esp),%edi | |
1994 movl 24(%esp),%esi | |
1995 xorl %ebx,%ebx | |
1996 xorl %ecx,%ecx | |
1997 movl (%esi),%eax | |
1998 | |
1999 xorl %ebp,%ebp | |
2000 | |
2001 mull %eax | |
2002 addl %eax,%ebx | |
2003 adcl %edx,%ecx | |
2004 movl (%esi),%edx | |
2005 adcl $0,%ebp | |
2006 movl %ebx,(%edi) | |
2007 movl 4(%esi),%eax | |
2008 | |
2009 | |
2010 xorl %ebx,%ebx | |
2011 | |
2012 mull %edx | |
2013 addl %eax,%eax | |
2014 adcl %edx,%edx | |
2015 adcl $0,%ebx | |
2016 addl %eax,%ecx | |
2017 adcl %edx,%ebp | |
2018 movl 8(%esi),%eax | |
2019 adcl $0,%ebx | |
2020 movl %ecx,4(%edi) | |
2021 movl (%esi),%edx | |
2022 | |
2023 | |
2024 xorl %ecx,%ecx | |
2025 | |
2026 mull %edx | |
2027 addl %eax,%eax | |
2028 adcl %edx,%edx | |
2029 adcl $0,%ecx | |
2030 addl %eax,%ebp | |
2031 adcl %edx,%ebx | |
2032 movl 4(%esi),%eax | |
2033 adcl $0,%ecx | |
2034 | |
2035 mull %eax | |
2036 addl %eax,%ebp | |
2037 adcl %edx,%ebx | |
2038 movl (%esi),%edx | |
2039 adcl $0,%ecx | |
2040 movl %ebp,8(%edi) | |
2041 movl 12(%esi),%eax | |
2042 | |
2043 | |
2044 xorl %ebp,%ebp | |
2045 | |
2046 mull %edx | |
2047 addl %eax,%eax | |
2048 adcl %edx,%edx | |
2049 adcl $0,%ebp | |
2050 addl %eax,%ebx | |
2051 adcl %edx,%ecx | |
2052 movl 8(%esi),%eax | |
2053 adcl $0,%ebp | |
2054 movl 4(%esi),%edx | |
2055 | |
2056 mull %edx | |
2057 addl %eax,%eax | |
2058 adcl %edx,%edx | |
2059 adcl $0,%ebp | |
2060 addl %eax,%ebx | |
2061 adcl %edx,%ecx | |
2062 movl 12(%esi),%eax | |
2063 adcl $0,%ebp | |
2064 movl %ebx,12(%edi) | |
2065 movl 4(%esi),%edx | |
2066 | |
2067 | |
2068 xorl %ebx,%ebx | |
2069 | |
2070 mull %edx | |
2071 addl %eax,%eax | |
2072 adcl %edx,%edx | |
2073 adcl $0,%ebx | |
2074 addl %eax,%ecx | |
2075 adcl %edx,%ebp | |
2076 movl 8(%esi),%eax | |
2077 adcl $0,%ebx | |
2078 | |
2079 mull %eax | |
2080 addl %eax,%ecx | |
2081 adcl %edx,%ebp | |
2082 movl 8(%esi),%edx | |
2083 adcl $0,%ebx | |
2084 movl %ecx,16(%edi) | |
2085 movl 12(%esi),%eax | |
2086 | |
2087 | |
2088 xorl %ecx,%ecx | |
2089 | |
2090 mull %edx | |
2091 addl %eax,%eax | |
2092 adcl %edx,%edx | |
2093 adcl $0,%ecx | |
2094 addl %eax,%ebp | |
2095 adcl %edx,%ebx | |
2096 movl 12(%esi),%eax | |
2097 adcl $0,%ecx | |
2098 movl %ebp,20(%edi) | |
2099 | |
2100 | |
2101 xorl %ebp,%ebp | |
2102 | |
2103 mull %eax | |
2104 addl %eax,%ebx | |
2105 adcl %edx,%ecx | |
2106 adcl $0,%ebp | |
2107 movl %ebx,24(%edi) | |
2108 | |
2109 movl %ecx,28(%edi) | |
2110 popl %ebx | |
2111 popl %ebp | |
2112 popl %edi | |
2113 popl %esi | |
2114 ret | |
2115 .size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin | |
2116 #endif | |
OLD | NEW |