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