OLD | NEW |
1 #if defined(__i386__) | 1 #if defined(__i386__) |
2 .file» "src/crypto/bn/asm/x86.S" | 2 .file» "src/crypto/bn/asm/co-586.S" |
3 .text | 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 | 4 .globl bn_mul_comba8 |
865 .type bn_mul_comba8,@function | 5 .type bn_mul_comba8,@function |
866 .align 16 | 6 .align 16 |
867 bn_mul_comba8: | 7 bn_mul_comba8: |
868 .L_bn_mul_comba8_begin: | 8 .L_bn_mul_comba8_begin: |
869 pushl %esi | 9 pushl %esi |
870 movl 12(%esp),%esi | 10 movl 12(%esp),%esi |
871 pushl %edi | 11 pushl %edi |
872 movl 20(%esp),%edi | 12 movl 20(%esp),%edi |
873 pushl %ebp | 13 pushl %ebp |
(...skipping 1233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2107 movl %ebx,24(%edi) | 1247 movl %ebx,24(%edi) |
2108 | 1248 |
2109 movl %ecx,28(%edi) | 1249 movl %ecx,28(%edi) |
2110 popl %ebx | 1250 popl %ebx |
2111 popl %ebp | 1251 popl %ebp |
2112 popl %edi | 1252 popl %edi |
2113 popl %esi | 1253 popl %esi |
2114 ret | 1254 ret |
2115 .size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin | 1255 .size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin |
2116 #endif | 1256 #endif |
OLD | NEW |