1 # $FreeBSD$ 2.file "co-586.s" 3.text 4.globl bn_mul_comba8 5.type bn_mul_comba8,@function 6.align 16 7bn_mul_comba8: 8.L_bn_mul_comba8_begin: 9 pushl %esi 10 movl 12(%esp),%esi 11 pushl %edi 12 movl 20(%esp),%edi 13 pushl %ebp 14 pushl %ebx 15 xorl %ebx,%ebx 16 movl (%esi),%eax 17 xorl %ecx,%ecx 18 movl (%edi),%edx 19 20 xorl %ebp,%ebp 21 22 mull %edx 23 addl %eax,%ebx 24 movl 20(%esp),%eax 25 adcl %edx,%ecx 26 movl (%edi),%edx 27 adcl $0,%ebp 28 movl %ebx,(%eax) 29 movl 4(%esi),%eax 30 31 32 xorl %ebx,%ebx 33 34 mull %edx 35 addl %eax,%ecx 36 movl (%esi),%eax 37 adcl %edx,%ebp 38 movl 4(%edi),%edx 39 adcl $0,%ebx 40 41 mull %edx 42 addl %eax,%ecx 43 movl 20(%esp),%eax 44 adcl %edx,%ebp 45 movl (%edi),%edx 46 adcl $0,%ebx 47 movl %ecx,4(%eax) 48 movl 8(%esi),%eax 49 50 51 xorl %ecx,%ecx 52 53 mull %edx 54 addl %eax,%ebp 55 movl 4(%esi),%eax 56 adcl %edx,%ebx 57 movl 4(%edi),%edx 58 adcl $0,%ecx 59 60 mull %edx 61 addl %eax,%ebp 62 movl (%esi),%eax 63 adcl %edx,%ebx 64 movl 8(%edi),%edx 65 adcl $0,%ecx 66 67 mull %edx 68 addl %eax,%ebp 69 movl 20(%esp),%eax 70 adcl %edx,%ebx 71 movl (%edi),%edx 72 adcl $0,%ecx 73 movl %ebp,8(%eax) 74 movl 12(%esi),%eax 75 76 77 xorl %ebp,%ebp 78 79 mull %edx 80 addl %eax,%ebx 81 movl 8(%esi),%eax 82 adcl %edx,%ecx 83 movl 4(%edi),%edx 84 adcl $0,%ebp 85 86 mull %edx 87 addl %eax,%ebx 88 movl 4(%esi),%eax 89 adcl %edx,%ecx 90 movl 8(%edi),%edx 91 adcl $0,%ebp 92 93 mull %edx 94 addl %eax,%ebx 95 movl (%esi),%eax 96 adcl %edx,%ecx 97 movl 12(%edi),%edx 98 adcl $0,%ebp 99 100 mull %edx 101 addl %eax,%ebx 102 movl 20(%esp),%eax 103 adcl %edx,%ecx 104 movl (%edi),%edx 105 adcl $0,%ebp 106 movl %ebx,12(%eax) 107 movl 16(%esi),%eax 108 109 110 xorl %ebx,%ebx 111 112 mull %edx 113 addl %eax,%ecx 114 movl 12(%esi),%eax 115 adcl %edx,%ebp 116 movl 4(%edi),%edx 117 adcl $0,%ebx 118 119 mull %edx 120 addl %eax,%ecx 121 movl 8(%esi),%eax 122 adcl %edx,%ebp 123 movl 8(%edi),%edx 124 adcl $0,%ebx 125 126 mull %edx 127 addl %eax,%ecx 128 movl 4(%esi),%eax 129 adcl %edx,%ebp 130 movl 12(%edi),%edx 131 adcl $0,%ebx 132 133 mull %edx 134 addl %eax,%ecx 135 movl (%esi),%eax 136 adcl %edx,%ebp 137 movl 16(%edi),%edx 138 adcl $0,%ebx 139 140 mull %edx 141 addl %eax,%ecx 142 movl 20(%esp),%eax 143 adcl %edx,%ebp 144 movl (%edi),%edx 145 adcl $0,%ebx 146 movl %ecx,16(%eax) 147 movl 20(%esi),%eax 148 149 150 xorl %ecx,%ecx 151 152 mull %edx 153 addl %eax,%ebp 154 movl 16(%esi),%eax 155 adcl %edx,%ebx 156 movl 4(%edi),%edx 157 adcl $0,%ecx 158 159 mull %edx 160 addl %eax,%ebp 161 movl 12(%esi),%eax 162 adcl %edx,%ebx 163 movl 8(%edi),%edx 164 adcl $0,%ecx 165 166 mull %edx 167 addl %eax,%ebp 168 movl 8(%esi),%eax 169 adcl %edx,%ebx 170 movl 12(%edi),%edx 171 adcl $0,%ecx 172 173 mull %edx 174 addl %eax,%ebp 175 movl 4(%esi),%eax 176 adcl %edx,%ebx 177 movl 16(%edi),%edx 178 adcl $0,%ecx 179 180 mull %edx 181 addl %eax,%ebp 182 movl (%esi),%eax 183 adcl %edx,%ebx 184 movl 20(%edi),%edx 185 adcl $0,%ecx 186 187 mull %edx 188 addl %eax,%ebp 189 movl 20(%esp),%eax 190 adcl %edx,%ebx 191 movl (%edi),%edx 192 adcl $0,%ecx 193 movl %ebp,20(%eax) 194 movl 24(%esi),%eax 195 196 197 xorl %ebp,%ebp 198 199 mull %edx 200 addl %eax,%ebx 201 movl 20(%esi),%eax 202 adcl %edx,%ecx 203 movl 4(%edi),%edx 204 adcl $0,%ebp 205 206 mull %edx 207 addl %eax,%ebx 208 movl 16(%esi),%eax 209 adcl %edx,%ecx 210 movl 8(%edi),%edx 211 adcl $0,%ebp 212 213 mull %edx 214 addl %eax,%ebx 215 movl 12(%esi),%eax 216 adcl %edx,%ecx 217 movl 12(%edi),%edx 218 adcl $0,%ebp 219 220 mull %edx 221 addl %eax,%ebx 222 movl 8(%esi),%eax 223 adcl %edx,%ecx 224 movl 16(%edi),%edx 225 adcl $0,%ebp 226 227 mull %edx 228 addl %eax,%ebx 229 movl 4(%esi),%eax 230 adcl %edx,%ecx 231 movl 20(%edi),%edx 232 adcl $0,%ebp 233 234 mull %edx 235 addl %eax,%ebx 236 movl (%esi),%eax 237 adcl %edx,%ecx 238 movl 24(%edi),%edx 239 adcl $0,%ebp 240 241 mull %edx 242 addl %eax,%ebx 243 movl 20(%esp),%eax 244 adcl %edx,%ecx 245 movl (%edi),%edx 246 adcl $0,%ebp 247 movl %ebx,24(%eax) 248 movl 28(%esi),%eax 249 250 251 xorl %ebx,%ebx 252 253 mull %edx 254 addl %eax,%ecx 255 movl 24(%esi),%eax 256 adcl %edx,%ebp 257 movl 4(%edi),%edx 258 adcl $0,%ebx 259 260 mull %edx 261 addl %eax,%ecx 262 movl 20(%esi),%eax 263 adcl %edx,%ebp 264 movl 8(%edi),%edx 265 adcl $0,%ebx 266 267 mull %edx 268 addl %eax,%ecx 269 movl 16(%esi),%eax 270 adcl %edx,%ebp 271 movl 12(%edi),%edx 272 adcl $0,%ebx 273 274 mull %edx 275 addl %eax,%ecx 276 movl 12(%esi),%eax 277 adcl %edx,%ebp 278 movl 16(%edi),%edx 279 adcl $0,%ebx 280 281 mull %edx 282 addl %eax,%ecx 283 movl 8(%esi),%eax 284 adcl %edx,%ebp 285 movl 20(%edi),%edx 286 adcl $0,%ebx 287 288 mull %edx 289 addl %eax,%ecx 290 movl 4(%esi),%eax 291 adcl %edx,%ebp 292 movl 24(%edi),%edx 293 adcl $0,%ebx 294 295 mull %edx 296 addl %eax,%ecx 297 movl (%esi),%eax 298 adcl %edx,%ebp 299 movl 28(%edi),%edx 300 adcl $0,%ebx 301 302 mull %edx 303 addl %eax,%ecx 304 movl 20(%esp),%eax 305 adcl %edx,%ebp 306 movl 4(%edi),%edx 307 adcl $0,%ebx 308 movl %ecx,28(%eax) 309 movl 28(%esi),%eax 310 311 312 xorl %ecx,%ecx 313 314 mull %edx 315 addl %eax,%ebp 316 movl 24(%esi),%eax 317 adcl %edx,%ebx 318 movl 8(%edi),%edx 319 adcl $0,%ecx 320 321 mull %edx 322 addl %eax,%ebp 323 movl 20(%esi),%eax 324 adcl %edx,%ebx 325 movl 12(%edi),%edx 326 adcl $0,%ecx 327 328 mull %edx 329 addl %eax,%ebp 330 movl 16(%esi),%eax 331 adcl %edx,%ebx 332 movl 16(%edi),%edx 333 adcl $0,%ecx 334 335 mull %edx 336 addl %eax,%ebp 337 movl 12(%esi),%eax 338 adcl %edx,%ebx 339 movl 20(%edi),%edx 340 adcl $0,%ecx 341 342 mull %edx 343 addl %eax,%ebp 344 movl 8(%esi),%eax 345 adcl %edx,%ebx 346 movl 24(%edi),%edx 347 adcl $0,%ecx 348 349 mull %edx 350 addl %eax,%ebp 351 movl 4(%esi),%eax 352 adcl %edx,%ebx 353 movl 28(%edi),%edx 354 adcl $0,%ecx 355 356 mull %edx 357 addl %eax,%ebp 358 movl 20(%esp),%eax 359 adcl %edx,%ebx 360 movl 8(%edi),%edx 361 adcl $0,%ecx 362 movl %ebp,32(%eax) 363 movl 28(%esi),%eax 364 365 366 xorl %ebp,%ebp 367 368 mull %edx 369 addl %eax,%ebx 370 movl 24(%esi),%eax 371 adcl %edx,%ecx 372 movl 12(%edi),%edx 373 adcl $0,%ebp 374 375 mull %edx 376 addl %eax,%ebx 377 movl 20(%esi),%eax 378 adcl %edx,%ecx 379 movl 16(%edi),%edx 380 adcl $0,%ebp 381 382 mull %edx 383 addl %eax,%ebx 384 movl 16(%esi),%eax 385 adcl %edx,%ecx 386 movl 20(%edi),%edx 387 adcl $0,%ebp 388 389 mull %edx 390 addl %eax,%ebx 391 movl 12(%esi),%eax 392 adcl %edx,%ecx 393 movl 24(%edi),%edx 394 adcl $0,%ebp 395 396 mull %edx 397 addl %eax,%ebx 398 movl 8(%esi),%eax 399 adcl %edx,%ecx 400 movl 28(%edi),%edx 401 adcl $0,%ebp 402 403 mull %edx 404 addl %eax,%ebx 405 movl 20(%esp),%eax 406 adcl %edx,%ecx 407 movl 12(%edi),%edx 408 adcl $0,%ebp 409 movl %ebx,36(%eax) 410 movl 28(%esi),%eax 411 412 413 xorl %ebx,%ebx 414 415 mull %edx 416 addl %eax,%ecx 417 movl 24(%esi),%eax 418 adcl %edx,%ebp 419 movl 16(%edi),%edx 420 adcl $0,%ebx 421 422 mull %edx 423 addl %eax,%ecx 424 movl 20(%esi),%eax 425 adcl %edx,%ebp 426 movl 20(%edi),%edx 427 adcl $0,%ebx 428 429 mull %edx 430 addl %eax,%ecx 431 movl 16(%esi),%eax 432 adcl %edx,%ebp 433 movl 24(%edi),%edx 434 adcl $0,%ebx 435 436 mull %edx 437 addl %eax,%ecx 438 movl 12(%esi),%eax 439 adcl %edx,%ebp 440 movl 28(%edi),%edx 441 adcl $0,%ebx 442 443 mull %edx 444 addl %eax,%ecx 445 movl 20(%esp),%eax 446 adcl %edx,%ebp 447 movl 16(%edi),%edx 448 adcl $0,%ebx 449 movl %ecx,40(%eax) 450 movl 28(%esi),%eax 451 452 453 xorl %ecx,%ecx 454 455 mull %edx 456 addl %eax,%ebp 457 movl 24(%esi),%eax 458 adcl %edx,%ebx 459 movl 20(%edi),%edx 460 adcl $0,%ecx 461 462 mull %edx 463 addl %eax,%ebp 464 movl 20(%esi),%eax 465 adcl %edx,%ebx 466 movl 24(%edi),%edx 467 adcl $0,%ecx 468 469 mull %edx 470 addl %eax,%ebp 471 movl 16(%esi),%eax 472 adcl %edx,%ebx 473 movl 28(%edi),%edx 474 adcl $0,%ecx 475 476 mull %edx 477 addl %eax,%ebp 478 movl 20(%esp),%eax 479 adcl %edx,%ebx 480 movl 20(%edi),%edx 481 adcl $0,%ecx 482 movl %ebp,44(%eax) 483 movl 28(%esi),%eax 484 485 486 xorl %ebp,%ebp 487 488 mull %edx 489 addl %eax,%ebx 490 movl 24(%esi),%eax 491 adcl %edx,%ecx 492 movl 24(%edi),%edx 493 adcl $0,%ebp 494 495 mull %edx 496 addl %eax,%ebx 497 movl 20(%esi),%eax 498 adcl %edx,%ecx 499 movl 28(%edi),%edx 500 adcl $0,%ebp 501 502 mull %edx 503 addl %eax,%ebx 504 movl 20(%esp),%eax 505 adcl %edx,%ecx 506 movl 24(%edi),%edx 507 adcl $0,%ebp 508 movl %ebx,48(%eax) 509 movl 28(%esi),%eax 510 511 512 xorl %ebx,%ebx 513 514 mull %edx 515 addl %eax,%ecx 516 movl 24(%esi),%eax 517 adcl %edx,%ebp 518 movl 28(%edi),%edx 519 adcl $0,%ebx 520 521 mull %edx 522 addl %eax,%ecx 523 movl 20(%esp),%eax 524 adcl %edx,%ebp 525 movl 28(%edi),%edx 526 adcl $0,%ebx 527 movl %ecx,52(%eax) 528 movl 28(%esi),%eax 529 530 531 xorl %ecx,%ecx 532 533 mull %edx 534 addl %eax,%ebp 535 movl 20(%esp),%eax 536 adcl %edx,%ebx 537 adcl $0,%ecx 538 movl %ebp,56(%eax) 539 540 541 movl %ebx,60(%eax) 542 popl %ebx 543 popl %ebp 544 popl %edi 545 popl %esi 546 ret 547.size bn_mul_comba8,.-.L_bn_mul_comba8_begin 548.globl bn_mul_comba4 549.type bn_mul_comba4,@function 550.align 16 551bn_mul_comba4: 552.L_bn_mul_comba4_begin: 553 pushl %esi 554 movl 12(%esp),%esi 555 pushl %edi 556 movl 20(%esp),%edi 557 pushl %ebp 558 pushl %ebx 559 xorl %ebx,%ebx 560 movl (%esi),%eax 561 xorl %ecx,%ecx 562 movl (%edi),%edx 563 564 xorl %ebp,%ebp 565 566 mull %edx 567 addl %eax,%ebx 568 movl 20(%esp),%eax 569 adcl %edx,%ecx 570 movl (%edi),%edx 571 adcl $0,%ebp 572 movl %ebx,(%eax) 573 movl 4(%esi),%eax 574 575 576 xorl %ebx,%ebx 577 578 mull %edx 579 addl %eax,%ecx 580 movl (%esi),%eax 581 adcl %edx,%ebp 582 movl 4(%edi),%edx 583 adcl $0,%ebx 584 585 mull %edx 586 addl %eax,%ecx 587 movl 20(%esp),%eax 588 adcl %edx,%ebp 589 movl (%edi),%edx 590 adcl $0,%ebx 591 movl %ecx,4(%eax) 592 movl 8(%esi),%eax 593 594 595 xorl %ecx,%ecx 596 597 mull %edx 598 addl %eax,%ebp 599 movl 4(%esi),%eax 600 adcl %edx,%ebx 601 movl 4(%edi),%edx 602 adcl $0,%ecx 603 604 mull %edx 605 addl %eax,%ebp 606 movl (%esi),%eax 607 adcl %edx,%ebx 608 movl 8(%edi),%edx 609 adcl $0,%ecx 610 611 mull %edx 612 addl %eax,%ebp 613 movl 20(%esp),%eax 614 adcl %edx,%ebx 615 movl (%edi),%edx 616 adcl $0,%ecx 617 movl %ebp,8(%eax) 618 movl 12(%esi),%eax 619 620 621 xorl %ebp,%ebp 622 623 mull %edx 624 addl %eax,%ebx 625 movl 8(%esi),%eax 626 adcl %edx,%ecx 627 movl 4(%edi),%edx 628 adcl $0,%ebp 629 630 mull %edx 631 addl %eax,%ebx 632 movl 4(%esi),%eax 633 adcl %edx,%ecx 634 movl 8(%edi),%edx 635 adcl $0,%ebp 636 637 mull %edx 638 addl %eax,%ebx 639 movl (%esi),%eax 640 adcl %edx,%ecx 641 movl 12(%edi),%edx 642 adcl $0,%ebp 643 644 mull %edx 645 addl %eax,%ebx 646 movl 20(%esp),%eax 647 adcl %edx,%ecx 648 movl 4(%edi),%edx 649 adcl $0,%ebp 650 movl %ebx,12(%eax) 651 movl 12(%esi),%eax 652 653 654 xorl %ebx,%ebx 655 656 mull %edx 657 addl %eax,%ecx 658 movl 8(%esi),%eax 659 adcl %edx,%ebp 660 movl 8(%edi),%edx 661 adcl $0,%ebx 662 663 mull %edx 664 addl %eax,%ecx 665 movl 4(%esi),%eax 666 adcl %edx,%ebp 667 movl 12(%edi),%edx 668 adcl $0,%ebx 669 670 mull %edx 671 addl %eax,%ecx 672 movl 20(%esp),%eax 673 adcl %edx,%ebp 674 movl 8(%edi),%edx 675 adcl $0,%ebx 676 movl %ecx,16(%eax) 677 movl 12(%esi),%eax 678 679 680 xorl %ecx,%ecx 681 682 mull %edx 683 addl %eax,%ebp 684 movl 8(%esi),%eax 685 adcl %edx,%ebx 686 movl 12(%edi),%edx 687 adcl $0,%ecx 688 689 mull %edx 690 addl %eax,%ebp 691 movl 20(%esp),%eax 692 adcl %edx,%ebx 693 movl 12(%edi),%edx 694 adcl $0,%ecx 695 movl %ebp,20(%eax) 696 movl 12(%esi),%eax 697 698 699 xorl %ebp,%ebp 700 701 mull %edx 702 addl %eax,%ebx 703 movl 20(%esp),%eax 704 adcl %edx,%ecx 705 adcl $0,%ebp 706 movl %ebx,24(%eax) 707 708 709 movl %ecx,28(%eax) 710 popl %ebx 711 popl %ebp 712 popl %edi 713 popl %esi 714 ret 715.size bn_mul_comba4,.-.L_bn_mul_comba4_begin 716.globl bn_sqr_comba8 717.type bn_sqr_comba8,@function 718.align 16 719bn_sqr_comba8: 720.L_bn_sqr_comba8_begin: 721 pushl %esi 722 pushl %edi 723 pushl %ebp 724 pushl %ebx 725 movl 20(%esp),%edi 726 movl 24(%esp),%esi 727 xorl %ebx,%ebx 728 xorl %ecx,%ecx 729 movl (%esi),%eax 730 731 xorl %ebp,%ebp 732 733 mull %eax 734 addl %eax,%ebx 735 adcl %edx,%ecx 736 movl (%esi),%edx 737 adcl $0,%ebp 738 movl %ebx,(%edi) 739 movl 4(%esi),%eax 740 741 742 xorl %ebx,%ebx 743 744 mull %edx 745 addl %eax,%eax 746 adcl %edx,%edx 747 adcl $0,%ebx 748 addl %eax,%ecx 749 adcl %edx,%ebp 750 movl 8(%esi),%eax 751 adcl $0,%ebx 752 movl %ecx,4(%edi) 753 movl (%esi),%edx 754 755 756 xorl %ecx,%ecx 757 758 mull %edx 759 addl %eax,%eax 760 adcl %edx,%edx 761 adcl $0,%ecx 762 addl %eax,%ebp 763 adcl %edx,%ebx 764 movl 4(%esi),%eax 765 adcl $0,%ecx 766 767 mull %eax 768 addl %eax,%ebp 769 adcl %edx,%ebx 770 movl (%esi),%edx 771 adcl $0,%ecx 772 movl %ebp,8(%edi) 773 movl 12(%esi),%eax 774 775 776 xorl %ebp,%ebp 777 778 mull %edx 779 addl %eax,%eax 780 adcl %edx,%edx 781 adcl $0,%ebp 782 addl %eax,%ebx 783 adcl %edx,%ecx 784 movl 8(%esi),%eax 785 adcl $0,%ebp 786 movl 4(%esi),%edx 787 788 mull %edx 789 addl %eax,%eax 790 adcl %edx,%edx 791 adcl $0,%ebp 792 addl %eax,%ebx 793 adcl %edx,%ecx 794 movl 16(%esi),%eax 795 adcl $0,%ebp 796 movl %ebx,12(%edi) 797 movl (%esi),%edx 798 799 800 xorl %ebx,%ebx 801 802 mull %edx 803 addl %eax,%eax 804 adcl %edx,%edx 805 adcl $0,%ebx 806 addl %eax,%ecx 807 adcl %edx,%ebp 808 movl 12(%esi),%eax 809 adcl $0,%ebx 810 movl 4(%esi),%edx 811 812 mull %edx 813 addl %eax,%eax 814 adcl %edx,%edx 815 adcl $0,%ebx 816 addl %eax,%ecx 817 adcl %edx,%ebp 818 movl 8(%esi),%eax 819 adcl $0,%ebx 820 821 mull %eax 822 addl %eax,%ecx 823 adcl %edx,%ebp 824 movl (%esi),%edx 825 adcl $0,%ebx 826 movl %ecx,16(%edi) 827 movl 20(%esi),%eax 828 829 830 xorl %ecx,%ecx 831 832 mull %edx 833 addl %eax,%eax 834 adcl %edx,%edx 835 adcl $0,%ecx 836 addl %eax,%ebp 837 adcl %edx,%ebx 838 movl 16(%esi),%eax 839 adcl $0,%ecx 840 movl 4(%esi),%edx 841 842 mull %edx 843 addl %eax,%eax 844 adcl %edx,%edx 845 adcl $0,%ecx 846 addl %eax,%ebp 847 adcl %edx,%ebx 848 movl 12(%esi),%eax 849 adcl $0,%ecx 850 movl 8(%esi),%edx 851 852 mull %edx 853 addl %eax,%eax 854 adcl %edx,%edx 855 adcl $0,%ecx 856 addl %eax,%ebp 857 adcl %edx,%ebx 858 movl 24(%esi),%eax 859 adcl $0,%ecx 860 movl %ebp,20(%edi) 861 movl (%esi),%edx 862 863 864 xorl %ebp,%ebp 865 866 mull %edx 867 addl %eax,%eax 868 adcl %edx,%edx 869 adcl $0,%ebp 870 addl %eax,%ebx 871 adcl %edx,%ecx 872 movl 20(%esi),%eax 873 adcl $0,%ebp 874 movl 4(%esi),%edx 875 876 mull %edx 877 addl %eax,%eax 878 adcl %edx,%edx 879 adcl $0,%ebp 880 addl %eax,%ebx 881 adcl %edx,%ecx 882 movl 16(%esi),%eax 883 adcl $0,%ebp 884 movl 8(%esi),%edx 885 886 mull %edx 887 addl %eax,%eax 888 adcl %edx,%edx 889 adcl $0,%ebp 890 addl %eax,%ebx 891 adcl %edx,%ecx 892 movl 12(%esi),%eax 893 adcl $0,%ebp 894 895 mull %eax 896 addl %eax,%ebx 897 adcl %edx,%ecx 898 movl (%esi),%edx 899 adcl $0,%ebp 900 movl %ebx,24(%edi) 901 movl 28(%esi),%eax 902 903 904 xorl %ebx,%ebx 905 906 mull %edx 907 addl %eax,%eax 908 adcl %edx,%edx 909 adcl $0,%ebx 910 addl %eax,%ecx 911 adcl %edx,%ebp 912 movl 24(%esi),%eax 913 adcl $0,%ebx 914 movl 4(%esi),%edx 915 916 mull %edx 917 addl %eax,%eax 918 adcl %edx,%edx 919 adcl $0,%ebx 920 addl %eax,%ecx 921 adcl %edx,%ebp 922 movl 20(%esi),%eax 923 adcl $0,%ebx 924 movl 8(%esi),%edx 925 926 mull %edx 927 addl %eax,%eax 928 adcl %edx,%edx 929 adcl $0,%ebx 930 addl %eax,%ecx 931 adcl %edx,%ebp 932 movl 16(%esi),%eax 933 adcl $0,%ebx 934 movl 12(%esi),%edx 935 936 mull %edx 937 addl %eax,%eax 938 adcl %edx,%edx 939 adcl $0,%ebx 940 addl %eax,%ecx 941 adcl %edx,%ebp 942 movl 28(%esi),%eax 943 adcl $0,%ebx 944 movl %ecx,28(%edi) 945 movl 4(%esi),%edx 946 947 948 xorl %ecx,%ecx 949 950 mull %edx 951 addl %eax,%eax 952 adcl %edx,%edx 953 adcl $0,%ecx 954 addl %eax,%ebp 955 adcl %edx,%ebx 956 movl 24(%esi),%eax 957 adcl $0,%ecx 958 movl 8(%esi),%edx 959 960 mull %edx 961 addl %eax,%eax 962 adcl %edx,%edx 963 adcl $0,%ecx 964 addl %eax,%ebp 965 adcl %edx,%ebx 966 movl 20(%esi),%eax 967 adcl $0,%ecx 968 movl 12(%esi),%edx 969 970 mull %edx 971 addl %eax,%eax 972 adcl %edx,%edx 973 adcl $0,%ecx 974 addl %eax,%ebp 975 adcl %edx,%ebx 976 movl 16(%esi),%eax 977 adcl $0,%ecx 978 979 mull %eax 980 addl %eax,%ebp 981 adcl %edx,%ebx 982 movl 8(%esi),%edx 983 adcl $0,%ecx 984 movl %ebp,32(%edi) 985 movl 28(%esi),%eax 986 987 988 xorl %ebp,%ebp 989 990 mull %edx 991 addl %eax,%eax 992 adcl %edx,%edx 993 adcl $0,%ebp 994 addl %eax,%ebx 995 adcl %edx,%ecx 996 movl 24(%esi),%eax 997 adcl $0,%ebp 998 movl 12(%esi),%edx 999 1000 mull %edx 1001 addl %eax,%eax 1002 adcl %edx,%edx 1003 adcl $0,%ebp 1004 addl %eax,%ebx 1005 adcl %edx,%ecx 1006 movl 20(%esi),%eax 1007 adcl $0,%ebp 1008 movl 16(%esi),%edx 1009 1010 mull %edx 1011 addl %eax,%eax 1012 adcl %edx,%edx 1013 adcl $0,%ebp 1014 addl %eax,%ebx 1015 adcl %edx,%ecx 1016 movl 28(%esi),%eax 1017 adcl $0,%ebp 1018 movl %ebx,36(%edi) 1019 movl 12(%esi),%edx 1020 1021 1022 xorl %ebx,%ebx 1023 1024 mull %edx 1025 addl %eax,%eax 1026 adcl %edx,%edx 1027 adcl $0,%ebx 1028 addl %eax,%ecx 1029 adcl %edx,%ebp 1030 movl 24(%esi),%eax 1031 adcl $0,%ebx 1032 movl 16(%esi),%edx 1033 1034 mull %edx 1035 addl %eax,%eax 1036 adcl %edx,%edx 1037 adcl $0,%ebx 1038 addl %eax,%ecx 1039 adcl %edx,%ebp 1040 movl 20(%esi),%eax 1041 adcl $0,%ebx 1042 1043 mull %eax 1044 addl %eax,%ecx 1045 adcl %edx,%ebp 1046 movl 16(%esi),%edx 1047 adcl $0,%ebx 1048 movl %ecx,40(%edi) 1049 movl 28(%esi),%eax 1050 1051 1052 xorl %ecx,%ecx 1053 1054 mull %edx 1055 addl %eax,%eax 1056 adcl %edx,%edx 1057 adcl $0,%ecx 1058 addl %eax,%ebp 1059 adcl %edx,%ebx 1060 movl 24(%esi),%eax 1061 adcl $0,%ecx 1062 movl 20(%esi),%edx 1063 1064 mull %edx 1065 addl %eax,%eax 1066 adcl %edx,%edx 1067 adcl $0,%ecx 1068 addl %eax,%ebp 1069 adcl %edx,%ebx 1070 movl 28(%esi),%eax 1071 adcl $0,%ecx 1072 movl %ebp,44(%edi) 1073 movl 20(%esi),%edx 1074 1075 1076 xorl %ebp,%ebp 1077 1078 mull %edx 1079 addl %eax,%eax 1080 adcl %edx,%edx 1081 adcl $0,%ebp 1082 addl %eax,%ebx 1083 adcl %edx,%ecx 1084 movl 24(%esi),%eax 1085 adcl $0,%ebp 1086 1087 mull %eax 1088 addl %eax,%ebx 1089 adcl %edx,%ecx 1090 movl 24(%esi),%edx 1091 adcl $0,%ebp 1092 movl %ebx,48(%edi) 1093 movl 28(%esi),%eax 1094 1095 1096 xorl %ebx,%ebx 1097 1098 mull %edx 1099 addl %eax,%eax 1100 adcl %edx,%edx 1101 adcl $0,%ebx 1102 addl %eax,%ecx 1103 adcl %edx,%ebp 1104 movl 28(%esi),%eax 1105 adcl $0,%ebx 1106 movl %ecx,52(%edi) 1107 1108 1109 xorl %ecx,%ecx 1110 1111 mull %eax 1112 addl %eax,%ebp 1113 adcl %edx,%ebx 1114 adcl $0,%ecx 1115 movl %ebp,56(%edi) 1116 1117 movl %ebx,60(%edi) 1118 popl %ebx 1119 popl %ebp 1120 popl %edi 1121 popl %esi 1122 ret 1123.size bn_sqr_comba8,.-.L_bn_sqr_comba8_begin 1124.globl bn_sqr_comba4 1125.type bn_sqr_comba4,@function 1126.align 16 1127bn_sqr_comba4: 1128.L_bn_sqr_comba4_begin: 1129 pushl %esi 1130 pushl %edi 1131 pushl %ebp 1132 pushl %ebx 1133 movl 20(%esp),%edi 1134 movl 24(%esp),%esi 1135 xorl %ebx,%ebx 1136 xorl %ecx,%ecx 1137 movl (%esi),%eax 1138 1139 xorl %ebp,%ebp 1140 1141 mull %eax 1142 addl %eax,%ebx 1143 adcl %edx,%ecx 1144 movl (%esi),%edx 1145 adcl $0,%ebp 1146 movl %ebx,(%edi) 1147 movl 4(%esi),%eax 1148 1149 1150 xorl %ebx,%ebx 1151 1152 mull %edx 1153 addl %eax,%eax 1154 adcl %edx,%edx 1155 adcl $0,%ebx 1156 addl %eax,%ecx 1157 adcl %edx,%ebp 1158 movl 8(%esi),%eax 1159 adcl $0,%ebx 1160 movl %ecx,4(%edi) 1161 movl (%esi),%edx 1162 1163 1164 xorl %ecx,%ecx 1165 1166 mull %edx 1167 addl %eax,%eax 1168 adcl %edx,%edx 1169 adcl $0,%ecx 1170 addl %eax,%ebp 1171 adcl %edx,%ebx 1172 movl 4(%esi),%eax 1173 adcl $0,%ecx 1174 1175 mull %eax 1176 addl %eax,%ebp 1177 adcl %edx,%ebx 1178 movl (%esi),%edx 1179 adcl $0,%ecx 1180 movl %ebp,8(%edi) 1181 movl 12(%esi),%eax 1182 1183 1184 xorl %ebp,%ebp 1185 1186 mull %edx 1187 addl %eax,%eax 1188 adcl %edx,%edx 1189 adcl $0,%ebp 1190 addl %eax,%ebx 1191 adcl %edx,%ecx 1192 movl 8(%esi),%eax 1193 adcl $0,%ebp 1194 movl 4(%esi),%edx 1195 1196 mull %edx 1197 addl %eax,%eax 1198 adcl %edx,%edx 1199 adcl $0,%ebp 1200 addl %eax,%ebx 1201 adcl %edx,%ecx 1202 movl 12(%esi),%eax 1203 adcl $0,%ebp 1204 movl %ebx,12(%edi) 1205 movl 4(%esi),%edx 1206 1207 1208 xorl %ebx,%ebx 1209 1210 mull %edx 1211 addl %eax,%eax 1212 adcl %edx,%edx 1213 adcl $0,%ebx 1214 addl %eax,%ecx 1215 adcl %edx,%ebp 1216 movl 8(%esi),%eax 1217 adcl $0,%ebx 1218 1219 mull %eax 1220 addl %eax,%ecx 1221 adcl %edx,%ebp 1222 movl 8(%esi),%edx 1223 adcl $0,%ebx 1224 movl %ecx,16(%edi) 1225 movl 12(%esi),%eax 1226 1227 1228 xorl %ecx,%ecx 1229 1230 mull %edx 1231 addl %eax,%eax 1232 adcl %edx,%edx 1233 adcl $0,%ecx 1234 addl %eax,%ebp 1235 adcl %edx,%ebx 1236 movl 12(%esi),%eax 1237 adcl $0,%ecx 1238 movl %ebp,20(%edi) 1239 1240 1241 xorl %ebp,%ebp 1242 1243 mull %eax 1244 addl %eax,%ebx 1245 adcl %edx,%ecx 1246 adcl $0,%ebp 1247 movl %ebx,24(%edi) 1248 1249 movl %ecx,28(%edi) 1250 popl %ebx 1251 popl %ebp 1252 popl %edi 1253 popl %esi 1254 ret 1255.size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin 1256