1 #if defined(__x86_64__) 2 .text 3 4 .extern OPENSSL_ia32cap_P 5 .hidden OPENSSL_ia32cap_P 6 .globl sha256_block_data_order 7 .hidden sha256_block_data_order 8 .type sha256_block_data_order,@function 9 .align 16 10 sha256_block_data_order: 11 leaq OPENSSL_ia32cap_P(%rip),%r11 12 movl 0(%r11),%r9d 13 movl 4(%r11),%r10d 14 movl 8(%r11),%r11d 15 andl $1073741824,%r9d 16 andl $268435968,%r10d 17 orl %r9d,%r10d 18 cmpl $1342177792,%r10d 19 je .Lavx_shortcut 20 testl $512,%r10d 21 jnz .Lssse3_shortcut 22 pushq %rbx 23 pushq %rbp 24 pushq %r12 25 pushq %r13 26 pushq %r14 27 pushq %r15 28 movq %rsp,%r11 29 shlq $4,%rdx 30 subq $64+32,%rsp 31 leaq (%rsi,%rdx,4),%rdx 32 andq $-64,%rsp 33 movq %rdi,64+0(%rsp) 34 movq %rsi,64+8(%rsp) 35 movq %rdx,64+16(%rsp) 36 movq %r11,64+24(%rsp) 37 .Lprologue: 38 39 movl 0(%rdi),%eax 40 movl 4(%rdi),%ebx 41 movl 8(%rdi),%ecx 42 movl 12(%rdi),%edx 43 movl 16(%rdi),%r8d 44 movl 20(%rdi),%r9d 45 movl 24(%rdi),%r10d 46 movl 28(%rdi),%r11d 47 jmp .Lloop 48 49 .align 16 50 .Lloop: 51 movl %ebx,%edi 52 leaq K256(%rip),%rbp 53 xorl %ecx,%edi 54 movl 0(%rsi),%r12d 55 movl %r8d,%r13d 56 movl %eax,%r14d 57 bswapl %r12d 58 rorl $14,%r13d 59 movl %r9d,%r15d 60 61 xorl %r8d,%r13d 62 rorl $9,%r14d 63 xorl %r10d,%r15d 64 65 movl %r12d,0(%rsp) 66 xorl %eax,%r14d 67 andl %r8d,%r15d 68 69 rorl $5,%r13d 70 addl %r11d,%r12d 71 xorl %r10d,%r15d 72 73 rorl $11,%r14d 74 xorl %r8d,%r13d 75 addl %r15d,%r12d 76 77 movl %eax,%r15d 78 addl (%rbp),%r12d 79 xorl %eax,%r14d 80 81 xorl %ebx,%r15d 82 rorl $6,%r13d 83 movl %ebx,%r11d 84 85 andl %r15d,%edi 86 rorl $2,%r14d 87 addl %r13d,%r12d 88 89 xorl %edi,%r11d 90 addl %r12d,%edx 91 addl %r12d,%r11d 92 93 leaq 4(%rbp),%rbp 94 addl %r14d,%r11d 95 movl 4(%rsi),%r12d 96 movl %edx,%r13d 97 movl %r11d,%r14d 98 bswapl %r12d 99 rorl $14,%r13d 100 movl %r8d,%edi 101 102 xorl %edx,%r13d 103 rorl $9,%r14d 104 xorl %r9d,%edi 105 106 movl %r12d,4(%rsp) 107 xorl %r11d,%r14d 108 andl %edx,%edi 109 110 rorl $5,%r13d 111 addl %r10d,%r12d 112 xorl %r9d,%edi 113 114 rorl $11,%r14d 115 xorl %edx,%r13d 116 addl %edi,%r12d 117 118 movl %r11d,%edi 119 addl (%rbp),%r12d 120 xorl %r11d,%r14d 121 122 xorl %eax,%edi 123 rorl $6,%r13d 124 movl %eax,%r10d 125 126 andl %edi,%r15d 127 rorl $2,%r14d 128 addl %r13d,%r12d 129 130 xorl %r15d,%r10d 131 addl %r12d,%ecx 132 addl %r12d,%r10d 133 134 leaq 4(%rbp),%rbp 135 addl %r14d,%r10d 136 movl 8(%rsi),%r12d 137 movl %ecx,%r13d 138 movl %r10d,%r14d 139 bswapl %r12d 140 rorl $14,%r13d 141 movl %edx,%r15d 142 143 xorl %ecx,%r13d 144 rorl $9,%r14d 145 xorl %r8d,%r15d 146 147 movl %r12d,8(%rsp) 148 xorl %r10d,%r14d 149 andl %ecx,%r15d 150 151 rorl $5,%r13d 152 addl %r9d,%r12d 153 xorl %r8d,%r15d 154 155 rorl $11,%r14d 156 xorl %ecx,%r13d 157 addl %r15d,%r12d 158 159 movl %r10d,%r15d 160 addl (%rbp),%r12d 161 xorl %r10d,%r14d 162 163 xorl %r11d,%r15d 164 rorl $6,%r13d 165 movl %r11d,%r9d 166 167 andl %r15d,%edi 168 rorl $2,%r14d 169 addl %r13d,%r12d 170 171 xorl %edi,%r9d 172 addl %r12d,%ebx 173 addl %r12d,%r9d 174 175 leaq 4(%rbp),%rbp 176 addl %r14d,%r9d 177 movl 12(%rsi),%r12d 178 movl %ebx,%r13d 179 movl %r9d,%r14d 180 bswapl %r12d 181 rorl $14,%r13d 182 movl %ecx,%edi 183 184 xorl %ebx,%r13d 185 rorl $9,%r14d 186 xorl %edx,%edi 187 188 movl %r12d,12(%rsp) 189 xorl %r9d,%r14d 190 andl %ebx,%edi 191 192 rorl $5,%r13d 193 addl %r8d,%r12d 194 xorl %edx,%edi 195 196 rorl $11,%r14d 197 xorl %ebx,%r13d 198 addl %edi,%r12d 199 200 movl %r9d,%edi 201 addl (%rbp),%r12d 202 xorl %r9d,%r14d 203 204 xorl %r10d,%edi 205 rorl $6,%r13d 206 movl %r10d,%r8d 207 208 andl %edi,%r15d 209 rorl $2,%r14d 210 addl %r13d,%r12d 211 212 xorl %r15d,%r8d 213 addl %r12d,%eax 214 addl %r12d,%r8d 215 216 leaq 20(%rbp),%rbp 217 addl %r14d,%r8d 218 movl 16(%rsi),%r12d 219 movl %eax,%r13d 220 movl %r8d,%r14d 221 bswapl %r12d 222 rorl $14,%r13d 223 movl %ebx,%r15d 224 225 xorl %eax,%r13d 226 rorl $9,%r14d 227 xorl %ecx,%r15d 228 229 movl %r12d,16(%rsp) 230 xorl %r8d,%r14d 231 andl %eax,%r15d 232 233 rorl $5,%r13d 234 addl %edx,%r12d 235 xorl %ecx,%r15d 236 237 rorl $11,%r14d 238 xorl %eax,%r13d 239 addl %r15d,%r12d 240 241 movl %r8d,%r15d 242 addl (%rbp),%r12d 243 xorl %r8d,%r14d 244 245 xorl %r9d,%r15d 246 rorl $6,%r13d 247 movl %r9d,%edx 248 249 andl %r15d,%edi 250 rorl $2,%r14d 251 addl %r13d,%r12d 252 253 xorl %edi,%edx 254 addl %r12d,%r11d 255 addl %r12d,%edx 256 257 leaq 4(%rbp),%rbp 258 addl %r14d,%edx 259 movl 20(%rsi),%r12d 260 movl %r11d,%r13d 261 movl %edx,%r14d 262 bswapl %r12d 263 rorl $14,%r13d 264 movl %eax,%edi 265 266 xorl %r11d,%r13d 267 rorl $9,%r14d 268 xorl %ebx,%edi 269 270 movl %r12d,20(%rsp) 271 xorl %edx,%r14d 272 andl %r11d,%edi 273 274 rorl $5,%r13d 275 addl %ecx,%r12d 276 xorl %ebx,%edi 277 278 rorl $11,%r14d 279 xorl %r11d,%r13d 280 addl %edi,%r12d 281 282 movl %edx,%edi 283 addl (%rbp),%r12d 284 xorl %edx,%r14d 285 286 xorl %r8d,%edi 287 rorl $6,%r13d 288 movl %r8d,%ecx 289 290 andl %edi,%r15d 291 rorl $2,%r14d 292 addl %r13d,%r12d 293 294 xorl %r15d,%ecx 295 addl %r12d,%r10d 296 addl %r12d,%ecx 297 298 leaq 4(%rbp),%rbp 299 addl %r14d,%ecx 300 movl 24(%rsi),%r12d 301 movl %r10d,%r13d 302 movl %ecx,%r14d 303 bswapl %r12d 304 rorl $14,%r13d 305 movl %r11d,%r15d 306 307 xorl %r10d,%r13d 308 rorl $9,%r14d 309 xorl %eax,%r15d 310 311 movl %r12d,24(%rsp) 312 xorl %ecx,%r14d 313 andl %r10d,%r15d 314 315 rorl $5,%r13d 316 addl %ebx,%r12d 317 xorl %eax,%r15d 318 319 rorl $11,%r14d 320 xorl %r10d,%r13d 321 addl %r15d,%r12d 322 323 movl %ecx,%r15d 324 addl (%rbp),%r12d 325 xorl %ecx,%r14d 326 327 xorl %edx,%r15d 328 rorl $6,%r13d 329 movl %edx,%ebx 330 331 andl %r15d,%edi 332 rorl $2,%r14d 333 addl %r13d,%r12d 334 335 xorl %edi,%ebx 336 addl %r12d,%r9d 337 addl %r12d,%ebx 338 339 leaq 4(%rbp),%rbp 340 addl %r14d,%ebx 341 movl 28(%rsi),%r12d 342 movl %r9d,%r13d 343 movl %ebx,%r14d 344 bswapl %r12d 345 rorl $14,%r13d 346 movl %r10d,%edi 347 348 xorl %r9d,%r13d 349 rorl $9,%r14d 350 xorl %r11d,%edi 351 352 movl %r12d,28(%rsp) 353 xorl %ebx,%r14d 354 andl %r9d,%edi 355 356 rorl $5,%r13d 357 addl %eax,%r12d 358 xorl %r11d,%edi 359 360 rorl $11,%r14d 361 xorl %r9d,%r13d 362 addl %edi,%r12d 363 364 movl %ebx,%edi 365 addl (%rbp),%r12d 366 xorl %ebx,%r14d 367 368 xorl %ecx,%edi 369 rorl $6,%r13d 370 movl %ecx,%eax 371 372 andl %edi,%r15d 373 rorl $2,%r14d 374 addl %r13d,%r12d 375 376 xorl %r15d,%eax 377 addl %r12d,%r8d 378 addl %r12d,%eax 379 380 leaq 20(%rbp),%rbp 381 addl %r14d,%eax 382 movl 32(%rsi),%r12d 383 movl %r8d,%r13d 384 movl %eax,%r14d 385 bswapl %r12d 386 rorl $14,%r13d 387 movl %r9d,%r15d 388 389 xorl %r8d,%r13d 390 rorl $9,%r14d 391 xorl %r10d,%r15d 392 393 movl %r12d,32(%rsp) 394 xorl %eax,%r14d 395 andl %r8d,%r15d 396 397 rorl $5,%r13d 398 addl %r11d,%r12d 399 xorl %r10d,%r15d 400 401 rorl $11,%r14d 402 xorl %r8d,%r13d 403 addl %r15d,%r12d 404 405 movl %eax,%r15d 406 addl (%rbp),%r12d 407 xorl %eax,%r14d 408 409 xorl %ebx,%r15d 410 rorl $6,%r13d 411 movl %ebx,%r11d 412 413 andl %r15d,%edi 414 rorl $2,%r14d 415 addl %r13d,%r12d 416 417 xorl %edi,%r11d 418 addl %r12d,%edx 419 addl %r12d,%r11d 420 421 leaq 4(%rbp),%rbp 422 addl %r14d,%r11d 423 movl 36(%rsi),%r12d 424 movl %edx,%r13d 425 movl %r11d,%r14d 426 bswapl %r12d 427 rorl $14,%r13d 428 movl %r8d,%edi 429 430 xorl %edx,%r13d 431 rorl $9,%r14d 432 xorl %r9d,%edi 433 434 movl %r12d,36(%rsp) 435 xorl %r11d,%r14d 436 andl %edx,%edi 437 438 rorl $5,%r13d 439 addl %r10d,%r12d 440 xorl %r9d,%edi 441 442 rorl $11,%r14d 443 xorl %edx,%r13d 444 addl %edi,%r12d 445 446 movl %r11d,%edi 447 addl (%rbp),%r12d 448 xorl %r11d,%r14d 449 450 xorl %eax,%edi 451 rorl $6,%r13d 452 movl %eax,%r10d 453 454 andl %edi,%r15d 455 rorl $2,%r14d 456 addl %r13d,%r12d 457 458 xorl %r15d,%r10d 459 addl %r12d,%ecx 460 addl %r12d,%r10d 461 462 leaq 4(%rbp),%rbp 463 addl %r14d,%r10d 464 movl 40(%rsi),%r12d 465 movl %ecx,%r13d 466 movl %r10d,%r14d 467 bswapl %r12d 468 rorl $14,%r13d 469 movl %edx,%r15d 470 471 xorl %ecx,%r13d 472 rorl $9,%r14d 473 xorl %r8d,%r15d 474 475 movl %r12d,40(%rsp) 476 xorl %r10d,%r14d 477 andl %ecx,%r15d 478 479 rorl $5,%r13d 480 addl %r9d,%r12d 481 xorl %r8d,%r15d 482 483 rorl $11,%r14d 484 xorl %ecx,%r13d 485 addl %r15d,%r12d 486 487 movl %r10d,%r15d 488 addl (%rbp),%r12d 489 xorl %r10d,%r14d 490 491 xorl %r11d,%r15d 492 rorl $6,%r13d 493 movl %r11d,%r9d 494 495 andl %r15d,%edi 496 rorl $2,%r14d 497 addl %r13d,%r12d 498 499 xorl %edi,%r9d 500 addl %r12d,%ebx 501 addl %r12d,%r9d 502 503 leaq 4(%rbp),%rbp 504 addl %r14d,%r9d 505 movl 44(%rsi),%r12d 506 movl %ebx,%r13d 507 movl %r9d,%r14d 508 bswapl %r12d 509 rorl $14,%r13d 510 movl %ecx,%edi 511 512 xorl %ebx,%r13d 513 rorl $9,%r14d 514 xorl %edx,%edi 515 516 movl %r12d,44(%rsp) 517 xorl %r9d,%r14d 518 andl %ebx,%edi 519 520 rorl $5,%r13d 521 addl %r8d,%r12d 522 xorl %edx,%edi 523 524 rorl $11,%r14d 525 xorl %ebx,%r13d 526 addl %edi,%r12d 527 528 movl %r9d,%edi 529 addl (%rbp),%r12d 530 xorl %r9d,%r14d 531 532 xorl %r10d,%edi 533 rorl $6,%r13d 534 movl %r10d,%r8d 535 536 andl %edi,%r15d 537 rorl $2,%r14d 538 addl %r13d,%r12d 539 540 xorl %r15d,%r8d 541 addl %r12d,%eax 542 addl %r12d,%r8d 543 544 leaq 20(%rbp),%rbp 545 addl %r14d,%r8d 546 movl 48(%rsi),%r12d 547 movl %eax,%r13d 548 movl %r8d,%r14d 549 bswapl %r12d 550 rorl $14,%r13d 551 movl %ebx,%r15d 552 553 xorl %eax,%r13d 554 rorl $9,%r14d 555 xorl %ecx,%r15d 556 557 movl %r12d,48(%rsp) 558 xorl %r8d,%r14d 559 andl %eax,%r15d 560 561 rorl $5,%r13d 562 addl %edx,%r12d 563 xorl %ecx,%r15d 564 565 rorl $11,%r14d 566 xorl %eax,%r13d 567 addl %r15d,%r12d 568 569 movl %r8d,%r15d 570 addl (%rbp),%r12d 571 xorl %r8d,%r14d 572 573 xorl %r9d,%r15d 574 rorl $6,%r13d 575 movl %r9d,%edx 576 577 andl %r15d,%edi 578 rorl $2,%r14d 579 addl %r13d,%r12d 580 581 xorl %edi,%edx 582 addl %r12d,%r11d 583 addl %r12d,%edx 584 585 leaq 4(%rbp),%rbp 586 addl %r14d,%edx 587 movl 52(%rsi),%r12d 588 movl %r11d,%r13d 589 movl %edx,%r14d 590 bswapl %r12d 591 rorl $14,%r13d 592 movl %eax,%edi 593 594 xorl %r11d,%r13d 595 rorl $9,%r14d 596 xorl %ebx,%edi 597 598 movl %r12d,52(%rsp) 599 xorl %edx,%r14d 600 andl %r11d,%edi 601 602 rorl $5,%r13d 603 addl %ecx,%r12d 604 xorl %ebx,%edi 605 606 rorl $11,%r14d 607 xorl %r11d,%r13d 608 addl %edi,%r12d 609 610 movl %edx,%edi 611 addl (%rbp),%r12d 612 xorl %edx,%r14d 613 614 xorl %r8d,%edi 615 rorl $6,%r13d 616 movl %r8d,%ecx 617 618 andl %edi,%r15d 619 rorl $2,%r14d 620 addl %r13d,%r12d 621 622 xorl %r15d,%ecx 623 addl %r12d,%r10d 624 addl %r12d,%ecx 625 626 leaq 4(%rbp),%rbp 627 addl %r14d,%ecx 628 movl 56(%rsi),%r12d 629 movl %r10d,%r13d 630 movl %ecx,%r14d 631 bswapl %r12d 632 rorl $14,%r13d 633 movl %r11d,%r15d 634 635 xorl %r10d,%r13d 636 rorl $9,%r14d 637 xorl %eax,%r15d 638 639 movl %r12d,56(%rsp) 640 xorl %ecx,%r14d 641 andl %r10d,%r15d 642 643 rorl $5,%r13d 644 addl %ebx,%r12d 645 xorl %eax,%r15d 646 647 rorl $11,%r14d 648 xorl %r10d,%r13d 649 addl %r15d,%r12d 650 651 movl %ecx,%r15d 652 addl (%rbp),%r12d 653 xorl %ecx,%r14d 654 655 xorl %edx,%r15d 656 rorl $6,%r13d 657 movl %edx,%ebx 658 659 andl %r15d,%edi 660 rorl $2,%r14d 661 addl %r13d,%r12d 662 663 xorl %edi,%ebx 664 addl %r12d,%r9d 665 addl %r12d,%ebx 666 667 leaq 4(%rbp),%rbp 668 addl %r14d,%ebx 669 movl 60(%rsi),%r12d 670 movl %r9d,%r13d 671 movl %ebx,%r14d 672 bswapl %r12d 673 rorl $14,%r13d 674 movl %r10d,%edi 675 676 xorl %r9d,%r13d 677 rorl $9,%r14d 678 xorl %r11d,%edi 679 680 movl %r12d,60(%rsp) 681 xorl %ebx,%r14d 682 andl %r9d,%edi 683 684 rorl $5,%r13d 685 addl %eax,%r12d 686 xorl %r11d,%edi 687 688 rorl $11,%r14d 689 xorl %r9d,%r13d 690 addl %edi,%r12d 691 692 movl %ebx,%edi 693 addl (%rbp),%r12d 694 xorl %ebx,%r14d 695 696 xorl %ecx,%edi 697 rorl $6,%r13d 698 movl %ecx,%eax 699 700 andl %edi,%r15d 701 rorl $2,%r14d 702 addl %r13d,%r12d 703 704 xorl %r15d,%eax 705 addl %r12d,%r8d 706 addl %r12d,%eax 707 708 leaq 20(%rbp),%rbp 709 jmp .Lrounds_16_xx 710 .align 16 711 .Lrounds_16_xx: 712 movl 4(%rsp),%r13d 713 movl 56(%rsp),%r15d 714 715 movl %r13d,%r12d 716 rorl $11,%r13d 717 addl %r14d,%eax 718 movl %r15d,%r14d 719 rorl $2,%r15d 720 721 xorl %r12d,%r13d 722 shrl $3,%r12d 723 rorl $7,%r13d 724 xorl %r14d,%r15d 725 shrl $10,%r14d 726 727 rorl $17,%r15d 728 xorl %r13d,%r12d 729 xorl %r14d,%r15d 730 addl 36(%rsp),%r12d 731 732 addl 0(%rsp),%r12d 733 movl %r8d,%r13d 734 addl %r15d,%r12d 735 movl %eax,%r14d 736 rorl $14,%r13d 737 movl %r9d,%r15d 738 739 xorl %r8d,%r13d 740 rorl $9,%r14d 741 xorl %r10d,%r15d 742 743 movl %r12d,0(%rsp) 744 xorl %eax,%r14d 745 andl %r8d,%r15d 746 747 rorl $5,%r13d 748 addl %r11d,%r12d 749 xorl %r10d,%r15d 750 751 rorl $11,%r14d 752 xorl %r8d,%r13d 753 addl %r15d,%r12d 754 755 movl %eax,%r15d 756 addl (%rbp),%r12d 757 xorl %eax,%r14d 758 759 xorl %ebx,%r15d 760 rorl $6,%r13d 761 movl %ebx,%r11d 762 763 andl %r15d,%edi 764 rorl $2,%r14d 765 addl %r13d,%r12d 766 767 xorl %edi,%r11d 768 addl %r12d,%edx 769 addl %r12d,%r11d 770 771 leaq 4(%rbp),%rbp 772 movl 8(%rsp),%r13d 773 movl 60(%rsp),%edi 774 775 movl %r13d,%r12d 776 rorl $11,%r13d 777 addl %r14d,%r11d 778 movl %edi,%r14d 779 rorl $2,%edi 780 781 xorl %r12d,%r13d 782 shrl $3,%r12d 783 rorl $7,%r13d 784 xorl %r14d,%edi 785 shrl $10,%r14d 786 787 rorl $17,%edi 788 xorl %r13d,%r12d 789 xorl %r14d,%edi 790 addl 40(%rsp),%r12d 791 792 addl 4(%rsp),%r12d 793 movl %edx,%r13d 794 addl %edi,%r12d 795 movl %r11d,%r14d 796 rorl $14,%r13d 797 movl %r8d,%edi 798 799 xorl %edx,%r13d 800 rorl $9,%r14d 801 xorl %r9d,%edi 802 803 movl %r12d,4(%rsp) 804 xorl %r11d,%r14d 805 andl %edx,%edi 806 807 rorl $5,%r13d 808 addl %r10d,%r12d 809 xorl %r9d,%edi 810 811 rorl $11,%r14d 812 xorl %edx,%r13d 813 addl %edi,%r12d 814 815 movl %r11d,%edi 816 addl (%rbp),%r12d 817 xorl %r11d,%r14d 818 819 xorl %eax,%edi 820 rorl $6,%r13d 821 movl %eax,%r10d 822 823 andl %edi,%r15d 824 rorl $2,%r14d 825 addl %r13d,%r12d 826 827 xorl %r15d,%r10d 828 addl %r12d,%ecx 829 addl %r12d,%r10d 830 831 leaq 4(%rbp),%rbp 832 movl 12(%rsp),%r13d 833 movl 0(%rsp),%r15d 834 835 movl %r13d,%r12d 836 rorl $11,%r13d 837 addl %r14d,%r10d 838 movl %r15d,%r14d 839 rorl $2,%r15d 840 841 xorl %r12d,%r13d 842 shrl $3,%r12d 843 rorl $7,%r13d 844 xorl %r14d,%r15d 845 shrl $10,%r14d 846 847 rorl $17,%r15d 848 xorl %r13d,%r12d 849 xorl %r14d,%r15d 850 addl 44(%rsp),%r12d 851 852 addl 8(%rsp),%r12d 853 movl %ecx,%r13d 854 addl %r15d,%r12d 855 movl %r10d,%r14d 856 rorl $14,%r13d 857 movl %edx,%r15d 858 859 xorl %ecx,%r13d 860 rorl $9,%r14d 861 xorl %r8d,%r15d 862 863 movl %r12d,8(%rsp) 864 xorl %r10d,%r14d 865 andl %ecx,%r15d 866 867 rorl $5,%r13d 868 addl %r9d,%r12d 869 xorl %r8d,%r15d 870 871 rorl $11,%r14d 872 xorl %ecx,%r13d 873 addl %r15d,%r12d 874 875 movl %r10d,%r15d 876 addl (%rbp),%r12d 877 xorl %r10d,%r14d 878 879 xorl %r11d,%r15d 880 rorl $6,%r13d 881 movl %r11d,%r9d 882 883 andl %r15d,%edi 884 rorl $2,%r14d 885 addl %r13d,%r12d 886 887 xorl %edi,%r9d 888 addl %r12d,%ebx 889 addl %r12d,%r9d 890 891 leaq 4(%rbp),%rbp 892 movl 16(%rsp),%r13d 893 movl 4(%rsp),%edi 894 895 movl %r13d,%r12d 896 rorl $11,%r13d 897 addl %r14d,%r9d 898 movl %edi,%r14d 899 rorl $2,%edi 900 901 xorl %r12d,%r13d 902 shrl $3,%r12d 903 rorl $7,%r13d 904 xorl %r14d,%edi 905 shrl $10,%r14d 906 907 rorl $17,%edi 908 xorl %r13d,%r12d 909 xorl %r14d,%edi 910 addl 48(%rsp),%r12d 911 912 addl 12(%rsp),%r12d 913 movl %ebx,%r13d 914 addl %edi,%r12d 915 movl %r9d,%r14d 916 rorl $14,%r13d 917 movl %ecx,%edi 918 919 xorl %ebx,%r13d 920 rorl $9,%r14d 921 xorl %edx,%edi 922 923 movl %r12d,12(%rsp) 924 xorl %r9d,%r14d 925 andl %ebx,%edi 926 927 rorl $5,%r13d 928 addl %r8d,%r12d 929 xorl %edx,%edi 930 931 rorl $11,%r14d 932 xorl %ebx,%r13d 933 addl %edi,%r12d 934 935 movl %r9d,%edi 936 addl (%rbp),%r12d 937 xorl %r9d,%r14d 938 939 xorl %r10d,%edi 940 rorl $6,%r13d 941 movl %r10d,%r8d 942 943 andl %edi,%r15d 944 rorl $2,%r14d 945 addl %r13d,%r12d 946 947 xorl %r15d,%r8d 948 addl %r12d,%eax 949 addl %r12d,%r8d 950 951 leaq 20(%rbp),%rbp 952 movl 20(%rsp),%r13d 953 movl 8(%rsp),%r15d 954 955 movl %r13d,%r12d 956 rorl $11,%r13d 957 addl %r14d,%r8d 958 movl %r15d,%r14d 959 rorl $2,%r15d 960 961 xorl %r12d,%r13d 962 shrl $3,%r12d 963 rorl $7,%r13d 964 xorl %r14d,%r15d 965 shrl $10,%r14d 966 967 rorl $17,%r15d 968 xorl %r13d,%r12d 969 xorl %r14d,%r15d 970 addl 52(%rsp),%r12d 971 972 addl 16(%rsp),%r12d 973 movl %eax,%r13d 974 addl %r15d,%r12d 975 movl %r8d,%r14d 976 rorl $14,%r13d 977 movl %ebx,%r15d 978 979 xorl %eax,%r13d 980 rorl $9,%r14d 981 xorl %ecx,%r15d 982 983 movl %r12d,16(%rsp) 984 xorl %r8d,%r14d 985 andl %eax,%r15d 986 987 rorl $5,%r13d 988 addl %edx,%r12d 989 xorl %ecx,%r15d 990 991 rorl $11,%r14d 992 xorl %eax,%r13d 993 addl %r15d,%r12d 994 995 movl %r8d,%r15d 996 addl (%rbp),%r12d 997 xorl %r8d,%r14d 998 999 xorl %r9d,%r15d 1000 rorl $6,%r13d 1001 movl %r9d,%edx 1002 1003 andl %r15d,%edi 1004 rorl $2,%r14d 1005 addl %r13d,%r12d 1006 1007 xorl %edi,%edx 1008 addl %r12d,%r11d 1009 addl %r12d,%edx 1010 1011 leaq 4(%rbp),%rbp 1012 movl 24(%rsp),%r13d 1013 movl 12(%rsp),%edi 1014 1015 movl %r13d,%r12d 1016 rorl $11,%r13d 1017 addl %r14d,%edx 1018 movl %edi,%r14d 1019 rorl $2,%edi 1020 1021 xorl %r12d,%r13d 1022 shrl $3,%r12d 1023 rorl $7,%r13d 1024 xorl %r14d,%edi 1025 shrl $10,%r14d 1026 1027 rorl $17,%edi 1028 xorl %r13d,%r12d 1029 xorl %r14d,%edi 1030 addl 56(%rsp),%r12d 1031 1032 addl 20(%rsp),%r12d 1033 movl %r11d,%r13d 1034 addl %edi,%r12d 1035 movl %edx,%r14d 1036 rorl $14,%r13d 1037 movl %eax,%edi 1038 1039 xorl %r11d,%r13d 1040 rorl $9,%r14d 1041 xorl %ebx,%edi 1042 1043 movl %r12d,20(%rsp) 1044 xorl %edx,%r14d 1045 andl %r11d,%edi 1046 1047 rorl $5,%r13d 1048 addl %ecx,%r12d 1049 xorl %ebx,%edi 1050 1051 rorl $11,%r14d 1052 xorl %r11d,%r13d 1053 addl %edi,%r12d 1054 1055 movl %edx,%edi 1056 addl (%rbp),%r12d 1057 xorl %edx,%r14d 1058 1059 xorl %r8d,%edi 1060 rorl $6,%r13d 1061 movl %r8d,%ecx 1062 1063 andl %edi,%r15d 1064 rorl $2,%r14d 1065 addl %r13d,%r12d 1066 1067 xorl %r15d,%ecx 1068 addl %r12d,%r10d 1069 addl %r12d,%ecx 1070 1071 leaq 4(%rbp),%rbp 1072 movl 28(%rsp),%r13d 1073 movl 16(%rsp),%r15d 1074 1075 movl %r13d,%r12d 1076 rorl $11,%r13d 1077 addl %r14d,%ecx 1078 movl %r15d,%r14d 1079 rorl $2,%r15d 1080 1081 xorl %r12d,%r13d 1082 shrl $3,%r12d 1083 rorl $7,%r13d 1084 xorl %r14d,%r15d 1085 shrl $10,%r14d 1086 1087 rorl $17,%r15d 1088 xorl %r13d,%r12d 1089 xorl %r14d,%r15d 1090 addl 60(%rsp),%r12d 1091 1092 addl 24(%rsp),%r12d 1093 movl %r10d,%r13d 1094 addl %r15d,%r12d 1095 movl %ecx,%r14d 1096 rorl $14,%r13d 1097 movl %r11d,%r15d 1098 1099 xorl %r10d,%r13d 1100 rorl $9,%r14d 1101 xorl %eax,%r15d 1102 1103 movl %r12d,24(%rsp) 1104 xorl %ecx,%r14d 1105 andl %r10d,%r15d 1106 1107 rorl $5,%r13d 1108 addl %ebx,%r12d 1109 xorl %eax,%r15d 1110 1111 rorl $11,%r14d 1112 xorl %r10d,%r13d 1113 addl %r15d,%r12d 1114 1115 movl %ecx,%r15d 1116 addl (%rbp),%r12d 1117 xorl %ecx,%r14d 1118 1119 xorl %edx,%r15d 1120 rorl $6,%r13d 1121 movl %edx,%ebx 1122 1123 andl %r15d,%edi 1124 rorl $2,%r14d 1125 addl %r13d,%r12d 1126 1127 xorl %edi,%ebx 1128 addl %r12d,%r9d 1129 addl %r12d,%ebx 1130 1131 leaq 4(%rbp),%rbp 1132 movl 32(%rsp),%r13d 1133 movl 20(%rsp),%edi 1134 1135 movl %r13d,%r12d 1136 rorl $11,%r13d 1137 addl %r14d,%ebx 1138 movl %edi,%r14d 1139 rorl $2,%edi 1140 1141 xorl %r12d,%r13d 1142 shrl $3,%r12d 1143 rorl $7,%r13d 1144 xorl %r14d,%edi 1145 shrl $10,%r14d 1146 1147 rorl $17,%edi 1148 xorl %r13d,%r12d 1149 xorl %r14d,%edi 1150 addl 0(%rsp),%r12d 1151 1152 addl 28(%rsp),%r12d 1153 movl %r9d,%r13d 1154 addl %edi,%r12d 1155 movl %ebx,%r14d 1156 rorl $14,%r13d 1157 movl %r10d,%edi 1158 1159 xorl %r9d,%r13d 1160 rorl $9,%r14d 1161 xorl %r11d,%edi 1162 1163 movl %r12d,28(%rsp) 1164 xorl %ebx,%r14d 1165 andl %r9d,%edi 1166 1167 rorl $5,%r13d 1168 addl %eax,%r12d 1169 xorl %r11d,%edi 1170 1171 rorl $11,%r14d 1172 xorl %r9d,%r13d 1173 addl %edi,%r12d 1174 1175 movl %ebx,%edi 1176 addl (%rbp),%r12d 1177 xorl %ebx,%r14d 1178 1179 xorl %ecx,%edi 1180 rorl $6,%r13d 1181 movl %ecx,%eax 1182 1183 andl %edi,%r15d 1184 rorl $2,%r14d 1185 addl %r13d,%r12d 1186 1187 xorl %r15d,%eax 1188 addl %r12d,%r8d 1189 addl %r12d,%eax 1190 1191 leaq 20(%rbp),%rbp 1192 movl 36(%rsp),%r13d 1193 movl 24(%rsp),%r15d 1194 1195 movl %r13d,%r12d 1196 rorl $11,%r13d 1197 addl %r14d,%eax 1198 movl %r15d,%r14d 1199 rorl $2,%r15d 1200 1201 xorl %r12d,%r13d 1202 shrl $3,%r12d 1203 rorl $7,%r13d 1204 xorl %r14d,%r15d 1205 shrl $10,%r14d 1206 1207 rorl $17,%r15d 1208 xorl %r13d,%r12d 1209 xorl %r14d,%r15d 1210 addl 4(%rsp),%r12d 1211 1212 addl 32(%rsp),%r12d 1213 movl %r8d,%r13d 1214 addl %r15d,%r12d 1215 movl %eax,%r14d 1216 rorl $14,%r13d 1217 movl %r9d,%r15d 1218 1219 xorl %r8d,%r13d 1220 rorl $9,%r14d 1221 xorl %r10d,%r15d 1222 1223 movl %r12d,32(%rsp) 1224 xorl %eax,%r14d 1225 andl %r8d,%r15d 1226 1227 rorl $5,%r13d 1228 addl %r11d,%r12d 1229 xorl %r10d,%r15d 1230 1231 rorl $11,%r14d 1232 xorl %r8d,%r13d 1233 addl %r15d,%r12d 1234 1235 movl %eax,%r15d 1236 addl (%rbp),%r12d 1237 xorl %eax,%r14d 1238 1239 xorl %ebx,%r15d 1240 rorl $6,%r13d 1241 movl %ebx,%r11d 1242 1243 andl %r15d,%edi 1244 rorl $2,%r14d 1245 addl %r13d,%r12d 1246 1247 xorl %edi,%r11d 1248 addl %r12d,%edx 1249 addl %r12d,%r11d 1250 1251 leaq 4(%rbp),%rbp 1252 movl 40(%rsp),%r13d 1253 movl 28(%rsp),%edi 1254 1255 movl %r13d,%r12d 1256 rorl $11,%r13d 1257 addl %r14d,%r11d 1258 movl %edi,%r14d 1259 rorl $2,%edi 1260 1261 xorl %r12d,%r13d 1262 shrl $3,%r12d 1263 rorl $7,%r13d 1264 xorl %r14d,%edi 1265 shrl $10,%r14d 1266 1267 rorl $17,%edi 1268 xorl %r13d,%r12d 1269 xorl %r14d,%edi 1270 addl 8(%rsp),%r12d 1271 1272 addl 36(%rsp),%r12d 1273 movl %edx,%r13d 1274 addl %edi,%r12d 1275 movl %r11d,%r14d 1276 rorl $14,%r13d 1277 movl %r8d,%edi 1278 1279 xorl %edx,%r13d 1280 rorl $9,%r14d 1281 xorl %r9d,%edi 1282 1283 movl %r12d,36(%rsp) 1284 xorl %r11d,%r14d 1285 andl %edx,%edi 1286 1287 rorl $5,%r13d 1288 addl %r10d,%r12d 1289 xorl %r9d,%edi 1290 1291 rorl $11,%r14d 1292 xorl %edx,%r13d 1293 addl %edi,%r12d 1294 1295 movl %r11d,%edi 1296 addl (%rbp),%r12d 1297 xorl %r11d,%r14d 1298 1299 xorl %eax,%edi 1300 rorl $6,%r13d 1301 movl %eax,%r10d 1302 1303 andl %edi,%r15d 1304 rorl $2,%r14d 1305 addl %r13d,%r12d 1306 1307 xorl %r15d,%r10d 1308 addl %r12d,%ecx 1309 addl %r12d,%r10d 1310 1311 leaq 4(%rbp),%rbp 1312 movl 44(%rsp),%r13d 1313 movl 32(%rsp),%r15d 1314 1315 movl %r13d,%r12d 1316 rorl $11,%r13d 1317 addl %r14d,%r10d 1318 movl %r15d,%r14d 1319 rorl $2,%r15d 1320 1321 xorl %r12d,%r13d 1322 shrl $3,%r12d 1323 rorl $7,%r13d 1324 xorl %r14d,%r15d 1325 shrl $10,%r14d 1326 1327 rorl $17,%r15d 1328 xorl %r13d,%r12d 1329 xorl %r14d,%r15d 1330 addl 12(%rsp),%r12d 1331 1332 addl 40(%rsp),%r12d 1333 movl %ecx,%r13d 1334 addl %r15d,%r12d 1335 movl %r10d,%r14d 1336 rorl $14,%r13d 1337 movl %edx,%r15d 1338 1339 xorl %ecx,%r13d 1340 rorl $9,%r14d 1341 xorl %r8d,%r15d 1342 1343 movl %r12d,40(%rsp) 1344 xorl %r10d,%r14d 1345 andl %ecx,%r15d 1346 1347 rorl $5,%r13d 1348 addl %r9d,%r12d 1349 xorl %r8d,%r15d 1350 1351 rorl $11,%r14d 1352 xorl %ecx,%r13d 1353 addl %r15d,%r12d 1354 1355 movl %r10d,%r15d 1356 addl (%rbp),%r12d 1357 xorl %r10d,%r14d 1358 1359 xorl %r11d,%r15d 1360 rorl $6,%r13d 1361 movl %r11d,%r9d 1362 1363 andl %r15d,%edi 1364 rorl $2,%r14d 1365 addl %r13d,%r12d 1366 1367 xorl %edi,%r9d 1368 addl %r12d,%ebx 1369 addl %r12d,%r9d 1370 1371 leaq 4(%rbp),%rbp 1372 movl 48(%rsp),%r13d 1373 movl 36(%rsp),%edi 1374 1375 movl %r13d,%r12d 1376 rorl $11,%r13d 1377 addl %r14d,%r9d 1378 movl %edi,%r14d 1379 rorl $2,%edi 1380 1381 xorl %r12d,%r13d 1382 shrl $3,%r12d 1383 rorl $7,%r13d 1384 xorl %r14d,%edi 1385 shrl $10,%r14d 1386 1387 rorl $17,%edi 1388 xorl %r13d,%r12d 1389 xorl %r14d,%edi 1390 addl 16(%rsp),%r12d 1391 1392 addl 44(%rsp),%r12d 1393 movl %ebx,%r13d 1394 addl %edi,%r12d 1395 movl %r9d,%r14d 1396 rorl $14,%r13d 1397 movl %ecx,%edi 1398 1399 xorl %ebx,%r13d 1400 rorl $9,%r14d 1401 xorl %edx,%edi 1402 1403 movl %r12d,44(%rsp) 1404 xorl %r9d,%r14d 1405 andl %ebx,%edi 1406 1407 rorl $5,%r13d 1408 addl %r8d,%r12d 1409 xorl %edx,%edi 1410 1411 rorl $11,%r14d 1412 xorl %ebx,%r13d 1413 addl %edi,%r12d 1414 1415 movl %r9d,%edi 1416 addl (%rbp),%r12d 1417 xorl %r9d,%r14d 1418 1419 xorl %r10d,%edi 1420 rorl $6,%r13d 1421 movl %r10d,%r8d 1422 1423 andl %edi,%r15d 1424 rorl $2,%r14d 1425 addl %r13d,%r12d 1426 1427 xorl %r15d,%r8d 1428 addl %r12d,%eax 1429 addl %r12d,%r8d 1430 1431 leaq 20(%rbp),%rbp 1432 movl 52(%rsp),%r13d 1433 movl 40(%rsp),%r15d 1434 1435 movl %r13d,%r12d 1436 rorl $11,%r13d 1437 addl %r14d,%r8d 1438 movl %r15d,%r14d 1439 rorl $2,%r15d 1440 1441 xorl %r12d,%r13d 1442 shrl $3,%r12d 1443 rorl $7,%r13d 1444 xorl %r14d,%r15d 1445 shrl $10,%r14d 1446 1447 rorl $17,%r15d 1448 xorl %r13d,%r12d 1449 xorl %r14d,%r15d 1450 addl 20(%rsp),%r12d 1451 1452 addl 48(%rsp),%r12d 1453 movl %eax,%r13d 1454 addl %r15d,%r12d 1455 movl %r8d,%r14d 1456 rorl $14,%r13d 1457 movl %ebx,%r15d 1458 1459 xorl %eax,%r13d 1460 rorl $9,%r14d 1461 xorl %ecx,%r15d 1462 1463 movl %r12d,48(%rsp) 1464 xorl %r8d,%r14d 1465 andl %eax,%r15d 1466 1467 rorl $5,%r13d 1468 addl %edx,%r12d 1469 xorl %ecx,%r15d 1470 1471 rorl $11,%r14d 1472 xorl %eax,%r13d 1473 addl %r15d,%r12d 1474 1475 movl %r8d,%r15d 1476 addl (%rbp),%r12d 1477 xorl %r8d,%r14d 1478 1479 xorl %r9d,%r15d 1480 rorl $6,%r13d 1481 movl %r9d,%edx 1482 1483 andl %r15d,%edi 1484 rorl $2,%r14d 1485 addl %r13d,%r12d 1486 1487 xorl %edi,%edx 1488 addl %r12d,%r11d 1489 addl %r12d,%edx 1490 1491 leaq 4(%rbp),%rbp 1492 movl 56(%rsp),%r13d 1493 movl 44(%rsp),%edi 1494 1495 movl %r13d,%r12d 1496 rorl $11,%r13d 1497 addl %r14d,%edx 1498 movl %edi,%r14d 1499 rorl $2,%edi 1500 1501 xorl %r12d,%r13d 1502 shrl $3,%r12d 1503 rorl $7,%r13d 1504 xorl %r14d,%edi 1505 shrl $10,%r14d 1506 1507 rorl $17,%edi 1508 xorl %r13d,%r12d 1509 xorl %r14d,%edi 1510 addl 24(%rsp),%r12d 1511 1512 addl 52(%rsp),%r12d 1513 movl %r11d,%r13d 1514 addl %edi,%r12d 1515 movl %edx,%r14d 1516 rorl $14,%r13d 1517 movl %eax,%edi 1518 1519 xorl %r11d,%r13d 1520 rorl $9,%r14d 1521 xorl %ebx,%edi 1522 1523 movl %r12d,52(%rsp) 1524 xorl %edx,%r14d 1525 andl %r11d,%edi 1526 1527 rorl $5,%r13d 1528 addl %ecx,%r12d 1529 xorl %ebx,%edi 1530 1531 rorl $11,%r14d 1532 xorl %r11d,%r13d 1533 addl %edi,%r12d 1534 1535 movl %edx,%edi 1536 addl (%rbp),%r12d 1537 xorl %edx,%r14d 1538 1539 xorl %r8d,%edi 1540 rorl $6,%r13d 1541 movl %r8d,%ecx 1542 1543 andl %edi,%r15d 1544 rorl $2,%r14d 1545 addl %r13d,%r12d 1546 1547 xorl %r15d,%ecx 1548 addl %r12d,%r10d 1549 addl %r12d,%ecx 1550 1551 leaq 4(%rbp),%rbp 1552 movl 60(%rsp),%r13d 1553 movl 48(%rsp),%r15d 1554 1555 movl %r13d,%r12d 1556 rorl $11,%r13d 1557 addl %r14d,%ecx 1558 movl %r15d,%r14d 1559 rorl $2,%r15d 1560 1561 xorl %r12d,%r13d 1562 shrl $3,%r12d 1563 rorl $7,%r13d 1564 xorl %r14d,%r15d 1565 shrl $10,%r14d 1566 1567 rorl $17,%r15d 1568 xorl %r13d,%r12d 1569 xorl %r14d,%r15d 1570 addl 28(%rsp),%r12d 1571 1572 addl 56(%rsp),%r12d 1573 movl %r10d,%r13d 1574 addl %r15d,%r12d 1575 movl %ecx,%r14d 1576 rorl $14,%r13d 1577 movl %r11d,%r15d 1578 1579 xorl %r10d,%r13d 1580 rorl $9,%r14d 1581 xorl %eax,%r15d 1582 1583 movl %r12d,56(%rsp) 1584 xorl %ecx,%r14d 1585 andl %r10d,%r15d 1586 1587 rorl $5,%r13d 1588 addl %ebx,%r12d 1589 xorl %eax,%r15d 1590 1591 rorl $11,%r14d 1592 xorl %r10d,%r13d 1593 addl %r15d,%r12d 1594 1595 movl %ecx,%r15d 1596 addl (%rbp),%r12d 1597 xorl %ecx,%r14d 1598 1599 xorl %edx,%r15d 1600 rorl $6,%r13d 1601 movl %edx,%ebx 1602 1603 andl %r15d,%edi 1604 rorl $2,%r14d 1605 addl %r13d,%r12d 1606 1607 xorl %edi,%ebx 1608 addl %r12d,%r9d 1609 addl %r12d,%ebx 1610 1611 leaq 4(%rbp),%rbp 1612 movl 0(%rsp),%r13d 1613 movl 52(%rsp),%edi 1614 1615 movl %r13d,%r12d 1616 rorl $11,%r13d 1617 addl %r14d,%ebx 1618 movl %edi,%r14d 1619 rorl $2,%edi 1620 1621 xorl %r12d,%r13d 1622 shrl $3,%r12d 1623 rorl $7,%r13d 1624 xorl %r14d,%edi 1625 shrl $10,%r14d 1626 1627 rorl $17,%edi 1628 xorl %r13d,%r12d 1629 xorl %r14d,%edi 1630 addl 32(%rsp),%r12d 1631 1632 addl 60(%rsp),%r12d 1633 movl %r9d,%r13d 1634 addl %edi,%r12d 1635 movl %ebx,%r14d 1636 rorl $14,%r13d 1637 movl %r10d,%edi 1638 1639 xorl %r9d,%r13d 1640 rorl $9,%r14d 1641 xorl %r11d,%edi 1642 1643 movl %r12d,60(%rsp) 1644 xorl %ebx,%r14d 1645 andl %r9d,%edi 1646 1647 rorl $5,%r13d 1648 addl %eax,%r12d 1649 xorl %r11d,%edi 1650 1651 rorl $11,%r14d 1652 xorl %r9d,%r13d 1653 addl %edi,%r12d 1654 1655 movl %ebx,%edi 1656 addl (%rbp),%r12d 1657 xorl %ebx,%r14d 1658 1659 xorl %ecx,%edi 1660 rorl $6,%r13d 1661 movl %ecx,%eax 1662 1663 andl %edi,%r15d 1664 rorl $2,%r14d 1665 addl %r13d,%r12d 1666 1667 xorl %r15d,%eax 1668 addl %r12d,%r8d 1669 addl %r12d,%eax 1670 1671 leaq 20(%rbp),%rbp 1672 cmpb $0,3(%rbp) 1673 jnz .Lrounds_16_xx 1674 1675 movq 64+0(%rsp),%rdi 1676 addl %r14d,%eax 1677 leaq 64(%rsi),%rsi 1678 1679 addl 0(%rdi),%eax 1680 addl 4(%rdi),%ebx 1681 addl 8(%rdi),%ecx 1682 addl 12(%rdi),%edx 1683 addl 16(%rdi),%r8d 1684 addl 20(%rdi),%r9d 1685 addl 24(%rdi),%r10d 1686 addl 28(%rdi),%r11d 1687 1688 cmpq 64+16(%rsp),%rsi 1689 1690 movl %eax,0(%rdi) 1691 movl %ebx,4(%rdi) 1692 movl %ecx,8(%rdi) 1693 movl %edx,12(%rdi) 1694 movl %r8d,16(%rdi) 1695 movl %r9d,20(%rdi) 1696 movl %r10d,24(%rdi) 1697 movl %r11d,28(%rdi) 1698 jb .Lloop 1699 1700 movq 64+24(%rsp),%rsi 1701 movq (%rsi),%r15 1702 movq 8(%rsi),%r14 1703 movq 16(%rsi),%r13 1704 movq 24(%rsi),%r12 1705 movq 32(%rsi),%rbp 1706 movq 40(%rsi),%rbx 1707 leaq 48(%rsi),%rsp 1708 .Lepilogue: 1709 .byte 0xf3,0xc3 1710 .size sha256_block_data_order,.-sha256_block_data_order 1711 .align 64 1712 .type K256,@object 1713 K256: 1714 .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 1715 .long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 1716 .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 1717 .long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 1718 .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 1719 .long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 1720 .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 1721 .long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 1722 .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 1723 .long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 1724 .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 1725 .long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 1726 .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 1727 .long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 1728 .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 1729 .long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 1730 .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 1731 .long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 1732 .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 1733 .long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 1734 .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 1735 .long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 1736 .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 1737 .long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 1738 .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 1739 .long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 1740 .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 1741 .long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 1742 .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 1743 .long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 1744 .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 1745 .long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 1746 1747 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 1748 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 1749 .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff 1750 .long 0x03020100,0x0b0a0908,0xffffffff,0xffffffff 1751 .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 1752 .long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908 1753 .byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 1754 .type sha256_block_data_order_ssse3,@function 1755 .align 64 1756 sha256_block_data_order_ssse3: 1757 .Lssse3_shortcut: 1758 pushq %rbx 1759 pushq %rbp 1760 pushq %r12 1761 pushq %r13 1762 pushq %r14 1763 pushq %r15 1764 movq %rsp,%r11 1765 shlq $4,%rdx 1766 subq $96,%rsp 1767 leaq (%rsi,%rdx,4),%rdx 1768 andq $-64,%rsp 1769 movq %rdi,64+0(%rsp) 1770 movq %rsi,64+8(%rsp) 1771 movq %rdx,64+16(%rsp) 1772 movq %r11,64+24(%rsp) 1773 .Lprologue_ssse3: 1774 1775 movl 0(%rdi),%eax 1776 movl 4(%rdi),%ebx 1777 movl 8(%rdi),%ecx 1778 movl 12(%rdi),%edx 1779 movl 16(%rdi),%r8d 1780 movl 20(%rdi),%r9d 1781 movl 24(%rdi),%r10d 1782 movl 28(%rdi),%r11d 1783 1784 1785 jmp .Lloop_ssse3 1786 .align 16 1787 .Lloop_ssse3: 1788 movdqa K256+512(%rip),%xmm7 1789 movdqu 0(%rsi),%xmm0 1790 movdqu 16(%rsi),%xmm1 1791 movdqu 32(%rsi),%xmm2 1792 .byte 102,15,56,0,199 1793 movdqu 48(%rsi),%xmm3 1794 leaq K256(%rip),%rbp 1795 .byte 102,15,56,0,207 1796 movdqa 0(%rbp),%xmm4 1797 movdqa 32(%rbp),%xmm5 1798 .byte 102,15,56,0,215 1799 paddd %xmm0,%xmm4 1800 movdqa 64(%rbp),%xmm6 1801 .byte 102,15,56,0,223 1802 movdqa 96(%rbp),%xmm7 1803 paddd %xmm1,%xmm5 1804 paddd %xmm2,%xmm6 1805 paddd %xmm3,%xmm7 1806 movdqa %xmm4,0(%rsp) 1807 movl %eax,%r14d 1808 movdqa %xmm5,16(%rsp) 1809 movl %ebx,%edi 1810 movdqa %xmm6,32(%rsp) 1811 xorl %ecx,%edi 1812 movdqa %xmm7,48(%rsp) 1813 movl %r8d,%r13d 1814 jmp .Lssse3_00_47 1815 1816 .align 16 1817 .Lssse3_00_47: 1818 subq $-128,%rbp 1819 rorl $14,%r13d 1820 movdqa %xmm1,%xmm4 1821 movl %r14d,%eax 1822 movl %r9d,%r12d 1823 movdqa %xmm3,%xmm7 1824 rorl $9,%r14d 1825 xorl %r8d,%r13d 1826 xorl %r10d,%r12d 1827 rorl $5,%r13d 1828 xorl %eax,%r14d 1829 .byte 102,15,58,15,224,4 1830 andl %r8d,%r12d 1831 xorl %r8d,%r13d 1832 .byte 102,15,58,15,250,4 1833 addl 0(%rsp),%r11d 1834 movl %eax,%r15d 1835 xorl %r10d,%r12d 1836 rorl $11,%r14d 1837 movdqa %xmm4,%xmm5 1838 xorl %ebx,%r15d 1839 addl %r12d,%r11d 1840 movdqa %xmm4,%xmm6 1841 rorl $6,%r13d 1842 andl %r15d,%edi 1843 psrld $3,%xmm4 1844 xorl %eax,%r14d 1845 addl %r13d,%r11d 1846 xorl %ebx,%edi 1847 paddd %xmm7,%xmm0 1848 rorl $2,%r14d 1849 addl %r11d,%edx 1850 psrld $7,%xmm6 1851 addl %edi,%r11d 1852 movl %edx,%r13d 1853 pshufd $250,%xmm3,%xmm7 1854 addl %r11d,%r14d 1855 rorl $14,%r13d 1856 pslld $14,%xmm5 1857 movl %r14d,%r11d 1858 movl %r8d,%r12d 1859 pxor %xmm6,%xmm4 1860 rorl $9,%r14d 1861 xorl %edx,%r13d 1862 xorl %r9d,%r12d 1863 rorl $5,%r13d 1864 psrld $11,%xmm6 1865 xorl %r11d,%r14d 1866 pxor %xmm5,%xmm4 1867 andl %edx,%r12d 1868 xorl %edx,%r13d 1869 pslld $11,%xmm5 1870 addl 4(%rsp),%r10d 1871 movl %r11d,%edi 1872 pxor %xmm6,%xmm4 1873 xorl %r9d,%r12d 1874 rorl $11,%r14d 1875 movdqa %xmm7,%xmm6 1876 xorl %eax,%edi 1877 addl %r12d,%r10d 1878 pxor %xmm5,%xmm4 1879 rorl $6,%r13d 1880 andl %edi,%r15d 1881 xorl %r11d,%r14d 1882 psrld $10,%xmm7 1883 addl %r13d,%r10d 1884 xorl %eax,%r15d 1885 paddd %xmm4,%xmm0 1886 rorl $2,%r14d 1887 addl %r10d,%ecx 1888 psrlq $17,%xmm6 1889 addl %r15d,%r10d 1890 movl %ecx,%r13d 1891 addl %r10d,%r14d 1892 pxor %xmm6,%xmm7 1893 rorl $14,%r13d 1894 movl %r14d,%r10d 1895 movl %edx,%r12d 1896 rorl $9,%r14d 1897 psrlq $2,%xmm6 1898 xorl %ecx,%r13d 1899 xorl %r8d,%r12d 1900 pxor %xmm6,%xmm7 1901 rorl $5,%r13d 1902 xorl %r10d,%r14d 1903 andl %ecx,%r12d 1904 pshufd $128,%xmm7,%xmm7 1905 xorl %ecx,%r13d 1906 addl 8(%rsp),%r9d 1907 movl %r10d,%r15d 1908 psrldq $8,%xmm7 1909 xorl %r8d,%r12d 1910 rorl $11,%r14d 1911 xorl %r11d,%r15d 1912 addl %r12d,%r9d 1913 rorl $6,%r13d 1914 paddd %xmm7,%xmm0 1915 andl %r15d,%edi 1916 xorl %r10d,%r14d 1917 addl %r13d,%r9d 1918 pshufd $80,%xmm0,%xmm7 1919 xorl %r11d,%edi 1920 rorl $2,%r14d 1921 addl %r9d,%ebx 1922 movdqa %xmm7,%xmm6 1923 addl %edi,%r9d 1924 movl %ebx,%r13d 1925 psrld $10,%xmm7 1926 addl %r9d,%r14d 1927 rorl $14,%r13d 1928 psrlq $17,%xmm6 1929 movl %r14d,%r9d 1930 movl %ecx,%r12d 1931 pxor %xmm6,%xmm7 1932 rorl $9,%r14d 1933 xorl %ebx,%r13d 1934 xorl %edx,%r12d 1935 rorl $5,%r13d 1936 xorl %r9d,%r14d 1937 psrlq $2,%xmm6 1938 andl %ebx,%r12d 1939 xorl %ebx,%r13d 1940 addl 12(%rsp),%r8d 1941 pxor %xmm6,%xmm7 1942 movl %r9d,%edi 1943 xorl %edx,%r12d 1944 rorl $11,%r14d 1945 pshufd $8,%xmm7,%xmm7 1946 xorl %r10d,%edi 1947 addl %r12d,%r8d 1948 movdqa 0(%rbp),%xmm6 1949 rorl $6,%r13d 1950 andl %edi,%r15d 1951 pslldq $8,%xmm7 1952 xorl %r9d,%r14d 1953 addl %r13d,%r8d 1954 xorl %r10d,%r15d 1955 paddd %xmm7,%xmm0 1956 rorl $2,%r14d 1957 addl %r8d,%eax 1958 addl %r15d,%r8d 1959 paddd %xmm0,%xmm6 1960 movl %eax,%r13d 1961 addl %r8d,%r14d 1962 movdqa %xmm6,0(%rsp) 1963 rorl $14,%r13d 1964 movdqa %xmm2,%xmm4 1965 movl %r14d,%r8d 1966 movl %ebx,%r12d 1967 movdqa %xmm0,%xmm7 1968 rorl $9,%r14d 1969 xorl %eax,%r13d 1970 xorl %ecx,%r12d 1971 rorl $5,%r13d 1972 xorl %r8d,%r14d 1973 .byte 102,15,58,15,225,4 1974 andl %eax,%r12d 1975 xorl %eax,%r13d 1976 .byte 102,15,58,15,251,4 1977 addl 16(%rsp),%edx 1978 movl %r8d,%r15d 1979 xorl %ecx,%r12d 1980 rorl $11,%r14d 1981 movdqa %xmm4,%xmm5 1982 xorl %r9d,%r15d 1983 addl %r12d,%edx 1984 movdqa %xmm4,%xmm6 1985 rorl $6,%r13d 1986 andl %r15d,%edi 1987 psrld $3,%xmm4 1988 xorl %r8d,%r14d 1989 addl %r13d,%edx 1990 xorl %r9d,%edi 1991 paddd %xmm7,%xmm1 1992 rorl $2,%r14d 1993 addl %edx,%r11d 1994 psrld $7,%xmm6 1995 addl %edi,%edx 1996 movl %r11d,%r13d 1997 pshufd $250,%xmm0,%xmm7 1998 addl %edx,%r14d 1999 rorl $14,%r13d 2000 pslld $14,%xmm5 2001 movl %r14d,%edx 2002 movl %eax,%r12d 2003 pxor %xmm6,%xmm4 2004 rorl $9,%r14d 2005 xorl %r11d,%r13d 2006 xorl %ebx,%r12d 2007 rorl $5,%r13d 2008 psrld $11,%xmm6 2009 xorl %edx,%r14d 2010 pxor %xmm5,%xmm4 2011 andl %r11d,%r12d 2012 xorl %r11d,%r13d 2013 pslld $11,%xmm5 2014 addl 20(%rsp),%ecx 2015 movl %edx,%edi 2016 pxor %xmm6,%xmm4 2017 xorl %ebx,%r12d 2018 rorl $11,%r14d 2019 movdqa %xmm7,%xmm6 2020 xorl %r8d,%edi 2021 addl %r12d,%ecx 2022 pxor %xmm5,%xmm4 2023 rorl $6,%r13d 2024 andl %edi,%r15d 2025 xorl %edx,%r14d 2026 psrld $10,%xmm7 2027 addl %r13d,%ecx 2028 xorl %r8d,%r15d 2029 paddd %xmm4,%xmm1 2030 rorl $2,%r14d 2031 addl %ecx,%r10d 2032 psrlq $17,%xmm6 2033 addl %r15d,%ecx 2034 movl %r10d,%r13d 2035 addl %ecx,%r14d 2036 pxor %xmm6,%xmm7 2037 rorl $14,%r13d 2038 movl %r14d,%ecx 2039 movl %r11d,%r12d 2040 rorl $9,%r14d 2041 psrlq $2,%xmm6 2042 xorl %r10d,%r13d 2043 xorl %eax,%r12d 2044 pxor %xmm6,%xmm7 2045 rorl $5,%r13d 2046 xorl %ecx,%r14d 2047 andl %r10d,%r12d 2048 pshufd $128,%xmm7,%xmm7 2049 xorl %r10d,%r13d 2050 addl 24(%rsp),%ebx 2051 movl %ecx,%r15d 2052 psrldq $8,%xmm7 2053 xorl %eax,%r12d 2054 rorl $11,%r14d 2055 xorl %edx,%r15d 2056 addl %r12d,%ebx 2057 rorl $6,%r13d 2058 paddd %xmm7,%xmm1 2059 andl %r15d,%edi 2060 xorl %ecx,%r14d 2061 addl %r13d,%ebx 2062 pshufd $80,%xmm1,%xmm7 2063 xorl %edx,%edi 2064 rorl $2,%r14d 2065 addl %ebx,%r9d 2066 movdqa %xmm7,%xmm6 2067 addl %edi,%ebx 2068 movl %r9d,%r13d 2069 psrld $10,%xmm7 2070 addl %ebx,%r14d 2071 rorl $14,%r13d 2072 psrlq $17,%xmm6 2073 movl %r14d,%ebx 2074 movl %r10d,%r12d 2075 pxor %xmm6,%xmm7 2076 rorl $9,%r14d 2077 xorl %r9d,%r13d 2078 xorl %r11d,%r12d 2079 rorl $5,%r13d 2080 xorl %ebx,%r14d 2081 psrlq $2,%xmm6 2082 andl %r9d,%r12d 2083 xorl %r9d,%r13d 2084 addl 28(%rsp),%eax 2085 pxor %xmm6,%xmm7 2086 movl %ebx,%edi 2087 xorl %r11d,%r12d 2088 rorl $11,%r14d 2089 pshufd $8,%xmm7,%xmm7 2090 xorl %ecx,%edi 2091 addl %r12d,%eax 2092 movdqa 32(%rbp),%xmm6 2093 rorl $6,%r13d 2094 andl %edi,%r15d 2095 pslldq $8,%xmm7 2096 xorl %ebx,%r14d 2097 addl %r13d,%eax 2098 xorl %ecx,%r15d 2099 paddd %xmm7,%xmm1 2100 rorl $2,%r14d 2101 addl %eax,%r8d 2102 addl %r15d,%eax 2103 paddd %xmm1,%xmm6 2104 movl %r8d,%r13d 2105 addl %eax,%r14d 2106 movdqa %xmm6,16(%rsp) 2107 rorl $14,%r13d 2108 movdqa %xmm3,%xmm4 2109 movl %r14d,%eax 2110 movl %r9d,%r12d 2111 movdqa %xmm1,%xmm7 2112 rorl $9,%r14d 2113 xorl %r8d,%r13d 2114 xorl %r10d,%r12d 2115 rorl $5,%r13d 2116 xorl %eax,%r14d 2117 .byte 102,15,58,15,226,4 2118 andl %r8d,%r12d 2119 xorl %r8d,%r13d 2120 .byte 102,15,58,15,248,4 2121 addl 32(%rsp),%r11d 2122 movl %eax,%r15d 2123 xorl %r10d,%r12d 2124 rorl $11,%r14d 2125 movdqa %xmm4,%xmm5 2126 xorl %ebx,%r15d 2127 addl %r12d,%r11d 2128 movdqa %xmm4,%xmm6 2129 rorl $6,%r13d 2130 andl %r15d,%edi 2131 psrld $3,%xmm4 2132 xorl %eax,%r14d 2133 addl %r13d,%r11d 2134 xorl %ebx,%edi 2135 paddd %xmm7,%xmm2 2136 rorl $2,%r14d 2137 addl %r11d,%edx 2138 psrld $7,%xmm6 2139 addl %edi,%r11d 2140 movl %edx,%r13d 2141 pshufd $250,%xmm1,%xmm7 2142 addl %r11d,%r14d 2143 rorl $14,%r13d 2144 pslld $14,%xmm5 2145 movl %r14d,%r11d 2146 movl %r8d,%r12d 2147 pxor %xmm6,%xmm4 2148 rorl $9,%r14d 2149 xorl %edx,%r13d 2150 xorl %r9d,%r12d 2151 rorl $5,%r13d 2152 psrld $11,%xmm6 2153 xorl %r11d,%r14d 2154 pxor %xmm5,%xmm4 2155 andl %edx,%r12d 2156 xorl %edx,%r13d 2157 pslld $11,%xmm5 2158 addl 36(%rsp),%r10d 2159 movl %r11d,%edi 2160 pxor %xmm6,%xmm4 2161 xorl %r9d,%r12d 2162 rorl $11,%r14d 2163 movdqa %xmm7,%xmm6 2164 xorl %eax,%edi 2165 addl %r12d,%r10d 2166 pxor %xmm5,%xmm4 2167 rorl $6,%r13d 2168 andl %edi,%r15d 2169 xorl %r11d,%r14d 2170 psrld $10,%xmm7 2171 addl %r13d,%r10d 2172 xorl %eax,%r15d 2173 paddd %xmm4,%xmm2 2174 rorl $2,%r14d 2175 addl %r10d,%ecx 2176 psrlq $17,%xmm6 2177 addl %r15d,%r10d 2178 movl %ecx,%r13d 2179 addl %r10d,%r14d 2180 pxor %xmm6,%xmm7 2181 rorl $14,%r13d 2182 movl %r14d,%r10d 2183 movl %edx,%r12d 2184 rorl $9,%r14d 2185 psrlq $2,%xmm6 2186 xorl %ecx,%r13d 2187 xorl %r8d,%r12d 2188 pxor %xmm6,%xmm7 2189 rorl $5,%r13d 2190 xorl %r10d,%r14d 2191 andl %ecx,%r12d 2192 pshufd $128,%xmm7,%xmm7 2193 xorl %ecx,%r13d 2194 addl 40(%rsp),%r9d 2195 movl %r10d,%r15d 2196 psrldq $8,%xmm7 2197 xorl %r8d,%r12d 2198 rorl $11,%r14d 2199 xorl %r11d,%r15d 2200 addl %r12d,%r9d 2201 rorl $6,%r13d 2202 paddd %xmm7,%xmm2 2203 andl %r15d,%edi 2204 xorl %r10d,%r14d 2205 addl %r13d,%r9d 2206 pshufd $80,%xmm2,%xmm7 2207 xorl %r11d,%edi 2208 rorl $2,%r14d 2209 addl %r9d,%ebx 2210 movdqa %xmm7,%xmm6 2211 addl %edi,%r9d 2212 movl %ebx,%r13d 2213 psrld $10,%xmm7 2214 addl %r9d,%r14d 2215 rorl $14,%r13d 2216 psrlq $17,%xmm6 2217 movl %r14d,%r9d 2218 movl %ecx,%r12d 2219 pxor %xmm6,%xmm7 2220 rorl $9,%r14d 2221 xorl %ebx,%r13d 2222 xorl %edx,%r12d 2223 rorl $5,%r13d 2224 xorl %r9d,%r14d 2225 psrlq $2,%xmm6 2226 andl %ebx,%r12d 2227 xorl %ebx,%r13d 2228 addl 44(%rsp),%r8d 2229 pxor %xmm6,%xmm7 2230 movl %r9d,%edi 2231 xorl %edx,%r12d 2232 rorl $11,%r14d 2233 pshufd $8,%xmm7,%xmm7 2234 xorl %r10d,%edi 2235 addl %r12d,%r8d 2236 movdqa 64(%rbp),%xmm6 2237 rorl $6,%r13d 2238 andl %edi,%r15d 2239 pslldq $8,%xmm7 2240 xorl %r9d,%r14d 2241 addl %r13d,%r8d 2242 xorl %r10d,%r15d 2243 paddd %xmm7,%xmm2 2244 rorl $2,%r14d 2245 addl %r8d,%eax 2246 addl %r15d,%r8d 2247 paddd %xmm2,%xmm6 2248 movl %eax,%r13d 2249 addl %r8d,%r14d 2250 movdqa %xmm6,32(%rsp) 2251 rorl $14,%r13d 2252 movdqa %xmm0,%xmm4 2253 movl %r14d,%r8d 2254 movl %ebx,%r12d 2255 movdqa %xmm2,%xmm7 2256 rorl $9,%r14d 2257 xorl %eax,%r13d 2258 xorl %ecx,%r12d 2259 rorl $5,%r13d 2260 xorl %r8d,%r14d 2261 .byte 102,15,58,15,227,4 2262 andl %eax,%r12d 2263 xorl %eax,%r13d 2264 .byte 102,15,58,15,249,4 2265 addl 48(%rsp),%edx 2266 movl %r8d,%r15d 2267 xorl %ecx,%r12d 2268 rorl $11,%r14d 2269 movdqa %xmm4,%xmm5 2270 xorl %r9d,%r15d 2271 addl %r12d,%edx 2272 movdqa %xmm4,%xmm6 2273 rorl $6,%r13d 2274 andl %r15d,%edi 2275 psrld $3,%xmm4 2276 xorl %r8d,%r14d 2277 addl %r13d,%edx 2278 xorl %r9d,%edi 2279 paddd %xmm7,%xmm3 2280 rorl $2,%r14d 2281 addl %edx,%r11d 2282 psrld $7,%xmm6 2283 addl %edi,%edx 2284 movl %r11d,%r13d 2285 pshufd $250,%xmm2,%xmm7 2286 addl %edx,%r14d 2287 rorl $14,%r13d 2288 pslld $14,%xmm5 2289 movl %r14d,%edx 2290 movl %eax,%r12d 2291 pxor %xmm6,%xmm4 2292 rorl $9,%r14d 2293 xorl %r11d,%r13d 2294 xorl %ebx,%r12d 2295 rorl $5,%r13d 2296 psrld $11,%xmm6 2297 xorl %edx,%r14d 2298 pxor %xmm5,%xmm4 2299 andl %r11d,%r12d 2300 xorl %r11d,%r13d 2301 pslld $11,%xmm5 2302 addl 52(%rsp),%ecx 2303 movl %edx,%edi 2304 pxor %xmm6,%xmm4 2305 xorl %ebx,%r12d 2306 rorl $11,%r14d 2307 movdqa %xmm7,%xmm6 2308 xorl %r8d,%edi 2309 addl %r12d,%ecx 2310 pxor %xmm5,%xmm4 2311 rorl $6,%r13d 2312 andl %edi,%r15d 2313 xorl %edx,%r14d 2314 psrld $10,%xmm7 2315 addl %r13d,%ecx 2316 xorl %r8d,%r15d 2317 paddd %xmm4,%xmm3 2318 rorl $2,%r14d 2319 addl %ecx,%r10d 2320 psrlq $17,%xmm6 2321 addl %r15d,%ecx 2322 movl %r10d,%r13d 2323 addl %ecx,%r14d 2324 pxor %xmm6,%xmm7 2325 rorl $14,%r13d 2326 movl %r14d,%ecx 2327 movl %r11d,%r12d 2328 rorl $9,%r14d 2329 psrlq $2,%xmm6 2330 xorl %r10d,%r13d 2331 xorl %eax,%r12d 2332 pxor %xmm6,%xmm7 2333 rorl $5,%r13d 2334 xorl %ecx,%r14d 2335 andl %r10d,%r12d 2336 pshufd $128,%xmm7,%xmm7 2337 xorl %r10d,%r13d 2338 addl 56(%rsp),%ebx 2339 movl %ecx,%r15d 2340 psrldq $8,%xmm7 2341 xorl %eax,%r12d 2342 rorl $11,%r14d 2343 xorl %edx,%r15d 2344 addl %r12d,%ebx 2345 rorl $6,%r13d 2346 paddd %xmm7,%xmm3 2347 andl %r15d,%edi 2348 xorl %ecx,%r14d 2349 addl %r13d,%ebx 2350 pshufd $80,%xmm3,%xmm7 2351 xorl %edx,%edi 2352 rorl $2,%r14d 2353 addl %ebx,%r9d 2354 movdqa %xmm7,%xmm6 2355 addl %edi,%ebx 2356 movl %r9d,%r13d 2357 psrld $10,%xmm7 2358 addl %ebx,%r14d 2359 rorl $14,%r13d 2360 psrlq $17,%xmm6 2361 movl %r14d,%ebx 2362 movl %r10d,%r12d 2363 pxor %xmm6,%xmm7 2364 rorl $9,%r14d 2365 xorl %r9d,%r13d 2366 xorl %r11d,%r12d 2367 rorl $5,%r13d 2368 xorl %ebx,%r14d 2369 psrlq $2,%xmm6 2370 andl %r9d,%r12d 2371 xorl %r9d,%r13d 2372 addl 60(%rsp),%eax 2373 pxor %xmm6,%xmm7 2374 movl %ebx,%edi 2375 xorl %r11d,%r12d 2376 rorl $11,%r14d 2377 pshufd $8,%xmm7,%xmm7 2378 xorl %ecx,%edi 2379 addl %r12d,%eax 2380 movdqa 96(%rbp),%xmm6 2381 rorl $6,%r13d 2382 andl %edi,%r15d 2383 pslldq $8,%xmm7 2384 xorl %ebx,%r14d 2385 addl %r13d,%eax 2386 xorl %ecx,%r15d 2387 paddd %xmm7,%xmm3 2388 rorl $2,%r14d 2389 addl %eax,%r8d 2390 addl %r15d,%eax 2391 paddd %xmm3,%xmm6 2392 movl %r8d,%r13d 2393 addl %eax,%r14d 2394 movdqa %xmm6,48(%rsp) 2395 cmpb $0,131(%rbp) 2396 jne .Lssse3_00_47 2397 rorl $14,%r13d 2398 movl %r14d,%eax 2399 movl %r9d,%r12d 2400 rorl $9,%r14d 2401 xorl %r8d,%r13d 2402 xorl %r10d,%r12d 2403 rorl $5,%r13d 2404 xorl %eax,%r14d 2405 andl %r8d,%r12d 2406 xorl %r8d,%r13d 2407 addl 0(%rsp),%r11d 2408 movl %eax,%r15d 2409 xorl %r10d,%r12d 2410 rorl $11,%r14d 2411 xorl %ebx,%r15d 2412 addl %r12d,%r11d 2413 rorl $6,%r13d 2414 andl %r15d,%edi 2415 xorl %eax,%r14d 2416 addl %r13d,%r11d 2417 xorl %ebx,%edi 2418 rorl $2,%r14d 2419 addl %r11d,%edx 2420 addl %edi,%r11d 2421 movl %edx,%r13d 2422 addl %r11d,%r14d 2423 rorl $14,%r13d 2424 movl %r14d,%r11d 2425 movl %r8d,%r12d 2426 rorl $9,%r14d 2427 xorl %edx,%r13d 2428 xorl %r9d,%r12d 2429 rorl $5,%r13d 2430 xorl %r11d,%r14d 2431 andl %edx,%r12d 2432 xorl %edx,%r13d 2433 addl 4(%rsp),%r10d 2434 movl %r11d,%edi 2435 xorl %r9d,%r12d 2436 rorl $11,%r14d 2437 xorl %eax,%edi 2438 addl %r12d,%r10d 2439 rorl $6,%r13d 2440 andl %edi,%r15d 2441 xorl %r11d,%r14d 2442 addl %r13d,%r10d 2443 xorl %eax,%r15d 2444 rorl $2,%r14d 2445 addl %r10d,%ecx 2446 addl %r15d,%r10d 2447 movl %ecx,%r13d 2448 addl %r10d,%r14d 2449 rorl $14,%r13d 2450 movl %r14d,%r10d 2451 movl %edx,%r12d 2452 rorl $9,%r14d 2453 xorl %ecx,%r13d 2454 xorl %r8d,%r12d 2455 rorl $5,%r13d 2456 xorl %r10d,%r14d 2457 andl %ecx,%r12d 2458 xorl %ecx,%r13d 2459 addl 8(%rsp),%r9d 2460 movl %r10d,%r15d 2461 xorl %r8d,%r12d 2462 rorl $11,%r14d 2463 xorl %r11d,%r15d 2464 addl %r12d,%r9d 2465 rorl $6,%r13d 2466 andl %r15d,%edi 2467 xorl %r10d,%r14d 2468 addl %r13d,%r9d 2469 xorl %r11d,%edi 2470 rorl $2,%r14d 2471 addl %r9d,%ebx 2472 addl %edi,%r9d 2473 movl %ebx,%r13d 2474 addl %r9d,%r14d 2475 rorl $14,%r13d 2476 movl %r14d,%r9d 2477 movl %ecx,%r12d 2478 rorl $9,%r14d 2479 xorl %ebx,%r13d 2480 xorl %edx,%r12d 2481 rorl $5,%r13d 2482 xorl %r9d,%r14d 2483 andl %ebx,%r12d 2484 xorl %ebx,%r13d 2485 addl 12(%rsp),%r8d 2486 movl %r9d,%edi 2487 xorl %edx,%r12d 2488 rorl $11,%r14d 2489 xorl %r10d,%edi 2490 addl %r12d,%r8d 2491 rorl $6,%r13d 2492 andl %edi,%r15d 2493 xorl %r9d,%r14d 2494 addl %r13d,%r8d 2495 xorl %r10d,%r15d 2496 rorl $2,%r14d 2497 addl %r8d,%eax 2498 addl %r15d,%r8d 2499 movl %eax,%r13d 2500 addl %r8d,%r14d 2501 rorl $14,%r13d 2502 movl %r14d,%r8d 2503 movl %ebx,%r12d 2504 rorl $9,%r14d 2505 xorl %eax,%r13d 2506 xorl %ecx,%r12d 2507 rorl $5,%r13d 2508 xorl %r8d,%r14d 2509 andl %eax,%r12d 2510 xorl %eax,%r13d 2511 addl 16(%rsp),%edx 2512 movl %r8d,%r15d 2513 xorl %ecx,%r12d 2514 rorl $11,%r14d 2515 xorl %r9d,%r15d 2516 addl %r12d,%edx 2517 rorl $6,%r13d 2518 andl %r15d,%edi 2519 xorl %r8d,%r14d 2520 addl %r13d,%edx 2521 xorl %r9d,%edi 2522 rorl $2,%r14d 2523 addl %edx,%r11d 2524 addl %edi,%edx 2525 movl %r11d,%r13d 2526 addl %edx,%r14d 2527 rorl $14,%r13d 2528 movl %r14d,%edx 2529 movl %eax,%r12d 2530 rorl $9,%r14d 2531 xorl %r11d,%r13d 2532 xorl %ebx,%r12d 2533 rorl $5,%r13d 2534 xorl %edx,%r14d 2535 andl %r11d,%r12d 2536 xorl %r11d,%r13d 2537 addl 20(%rsp),%ecx 2538 movl %edx,%edi 2539 xorl %ebx,%r12d 2540 rorl $11,%r14d 2541 xorl %r8d,%edi 2542 addl %r12d,%ecx 2543 rorl $6,%r13d 2544 andl %edi,%r15d 2545 xorl %edx,%r14d 2546 addl %r13d,%ecx 2547 xorl %r8d,%r15d 2548 rorl $2,%r14d 2549 addl %ecx,%r10d 2550 addl %r15d,%ecx 2551 movl %r10d,%r13d 2552 addl %ecx,%r14d 2553 rorl $14,%r13d 2554 movl %r14d,%ecx 2555 movl %r11d,%r12d 2556 rorl $9,%r14d 2557 xorl %r10d,%r13d 2558 xorl %eax,%r12d 2559 rorl $5,%r13d 2560 xorl %ecx,%r14d 2561 andl %r10d,%r12d 2562 xorl %r10d,%r13d 2563 addl 24(%rsp),%ebx 2564 movl %ecx,%r15d 2565 xorl %eax,%r12d 2566 rorl $11,%r14d 2567 xorl %edx,%r15d 2568 addl %r12d,%ebx 2569 rorl $6,%r13d 2570 andl %r15d,%edi 2571 xorl %ecx,%r14d 2572 addl %r13d,%ebx 2573 xorl %edx,%edi 2574 rorl $2,%r14d 2575 addl %ebx,%r9d 2576 addl %edi,%ebx 2577 movl %r9d,%r13d 2578 addl %ebx,%r14d 2579 rorl $14,%r13d 2580 movl %r14d,%ebx 2581 movl %r10d,%r12d 2582 rorl $9,%r14d 2583 xorl %r9d,%r13d 2584 xorl %r11d,%r12d 2585 rorl $5,%r13d 2586 xorl %ebx,%r14d 2587 andl %r9d,%r12d 2588 xorl %r9d,%r13d 2589 addl 28(%rsp),%eax 2590 movl %ebx,%edi 2591 xorl %r11d,%r12d 2592 rorl $11,%r14d 2593 xorl %ecx,%edi 2594 addl %r12d,%eax 2595 rorl $6,%r13d 2596 andl %edi,%r15d 2597 xorl %ebx,%r14d 2598 addl %r13d,%eax 2599 xorl %ecx,%r15d 2600 rorl $2,%r14d 2601 addl %eax,%r8d 2602 addl %r15d,%eax 2603 movl %r8d,%r13d 2604 addl %eax,%r14d 2605 rorl $14,%r13d 2606 movl %r14d,%eax 2607 movl %r9d,%r12d 2608 rorl $9,%r14d 2609 xorl %r8d,%r13d 2610 xorl %r10d,%r12d 2611 rorl $5,%r13d 2612 xorl %eax,%r14d 2613 andl %r8d,%r12d 2614 xorl %r8d,%r13d 2615 addl 32(%rsp),%r11d 2616 movl %eax,%r15d 2617 xorl %r10d,%r12d 2618 rorl $11,%r14d 2619 xorl %ebx,%r15d 2620 addl %r12d,%r11d 2621 rorl $6,%r13d 2622 andl %r15d,%edi 2623 xorl %eax,%r14d 2624 addl %r13d,%r11d 2625 xorl %ebx,%edi 2626 rorl $2,%r14d 2627 addl %r11d,%edx 2628 addl %edi,%r11d 2629 movl %edx,%r13d 2630 addl %r11d,%r14d 2631 rorl $14,%r13d 2632 movl %r14d,%r11d 2633 movl %r8d,%r12d 2634 rorl $9,%r14d 2635 xorl %edx,%r13d 2636 xorl %r9d,%r12d 2637 rorl $5,%r13d 2638 xorl %r11d,%r14d 2639 andl %edx,%r12d 2640 xorl %edx,%r13d 2641 addl 36(%rsp),%r10d 2642 movl %r11d,%edi 2643 xorl %r9d,%r12d 2644 rorl $11,%r14d 2645 xorl %eax,%edi 2646 addl %r12d,%r10d 2647 rorl $6,%r13d 2648 andl %edi,%r15d 2649 xorl %r11d,%r14d 2650 addl %r13d,%r10d 2651 xorl %eax,%r15d 2652 rorl $2,%r14d 2653 addl %r10d,%ecx 2654 addl %r15d,%r10d 2655 movl %ecx,%r13d 2656 addl %r10d,%r14d 2657 rorl $14,%r13d 2658 movl %r14d,%r10d 2659 movl %edx,%r12d 2660 rorl $9,%r14d 2661 xorl %ecx,%r13d 2662 xorl %r8d,%r12d 2663 rorl $5,%r13d 2664 xorl %r10d,%r14d 2665 andl %ecx,%r12d 2666 xorl %ecx,%r13d 2667 addl 40(%rsp),%r9d 2668 movl %r10d,%r15d 2669 xorl %r8d,%r12d 2670 rorl $11,%r14d 2671 xorl %r11d,%r15d 2672 addl %r12d,%r9d 2673 rorl $6,%r13d 2674 andl %r15d,%edi 2675 xorl %r10d,%r14d 2676 addl %r13d,%r9d 2677 xorl %r11d,%edi 2678 rorl $2,%r14d 2679 addl %r9d,%ebx 2680 addl %edi,%r9d 2681 movl %ebx,%r13d 2682 addl %r9d,%r14d 2683 rorl $14,%r13d 2684 movl %r14d,%r9d 2685 movl %ecx,%r12d 2686 rorl $9,%r14d 2687 xorl %ebx,%r13d 2688 xorl %edx,%r12d 2689 rorl $5,%r13d 2690 xorl %r9d,%r14d 2691 andl %ebx,%r12d 2692 xorl %ebx,%r13d 2693 addl 44(%rsp),%r8d 2694 movl %r9d,%edi 2695 xorl %edx,%r12d 2696 rorl $11,%r14d 2697 xorl %r10d,%edi 2698 addl %r12d,%r8d 2699 rorl $6,%r13d 2700 andl %edi,%r15d 2701 xorl %r9d,%r14d 2702 addl %r13d,%r8d 2703 xorl %r10d,%r15d 2704 rorl $2,%r14d 2705 addl %r8d,%eax 2706 addl %r15d,%r8d 2707 movl %eax,%r13d 2708 addl %r8d,%r14d 2709 rorl $14,%r13d 2710 movl %r14d,%r8d 2711 movl %ebx,%r12d 2712 rorl $9,%r14d 2713 xorl %eax,%r13d 2714 xorl %ecx,%r12d 2715 rorl $5,%r13d 2716 xorl %r8d,%r14d 2717 andl %eax,%r12d 2718 xorl %eax,%r13d 2719 addl 48(%rsp),%edx 2720 movl %r8d,%r15d 2721 xorl %ecx,%r12d 2722 rorl $11,%r14d 2723 xorl %r9d,%r15d 2724 addl %r12d,%edx 2725 rorl $6,%r13d 2726 andl %r15d,%edi 2727 xorl %r8d,%r14d 2728 addl %r13d,%edx 2729 xorl %r9d,%edi 2730 rorl $2,%r14d 2731 addl %edx,%r11d 2732 addl %edi,%edx 2733 movl %r11d,%r13d 2734 addl %edx,%r14d 2735 rorl $14,%r13d 2736 movl %r14d,%edx 2737 movl %eax,%r12d 2738 rorl $9,%r14d 2739 xorl %r11d,%r13d 2740 xorl %ebx,%r12d 2741 rorl $5,%r13d 2742 xorl %edx,%r14d 2743 andl %r11d,%r12d 2744 xorl %r11d,%r13d 2745 addl 52(%rsp),%ecx 2746 movl %edx,%edi 2747 xorl %ebx,%r12d 2748 rorl $11,%r14d 2749 xorl %r8d,%edi 2750 addl %r12d,%ecx 2751 rorl $6,%r13d 2752 andl %edi,%r15d 2753 xorl %edx,%r14d 2754 addl %r13d,%ecx 2755 xorl %r8d,%r15d 2756 rorl $2,%r14d 2757 addl %ecx,%r10d 2758 addl %r15d,%ecx 2759 movl %r10d,%r13d 2760 addl %ecx,%r14d 2761 rorl $14,%r13d 2762 movl %r14d,%ecx 2763 movl %r11d,%r12d 2764 rorl $9,%r14d 2765 xorl %r10d,%r13d 2766 xorl %eax,%r12d 2767 rorl $5,%r13d 2768 xorl %ecx,%r14d 2769 andl %r10d,%r12d 2770 xorl %r10d,%r13d 2771 addl 56(%rsp),%ebx 2772 movl %ecx,%r15d 2773 xorl %eax,%r12d 2774 rorl $11,%r14d 2775 xorl %edx,%r15d 2776 addl %r12d,%ebx 2777 rorl $6,%r13d 2778 andl %r15d,%edi 2779 xorl %ecx,%r14d 2780 addl %r13d,%ebx 2781 xorl %edx,%edi 2782 rorl $2,%r14d 2783 addl %ebx,%r9d 2784 addl %edi,%ebx 2785 movl %r9d,%r13d 2786 addl %ebx,%r14d 2787 rorl $14,%r13d 2788 movl %r14d,%ebx 2789 movl %r10d,%r12d 2790 rorl $9,%r14d 2791 xorl %r9d,%r13d 2792 xorl %r11d,%r12d 2793 rorl $5,%r13d 2794 xorl %ebx,%r14d 2795 andl %r9d,%r12d 2796 xorl %r9d,%r13d 2797 addl 60(%rsp),%eax 2798 movl %ebx,%edi 2799 xorl %r11d,%r12d 2800 rorl $11,%r14d 2801 xorl %ecx,%edi 2802 addl %r12d,%eax 2803 rorl $6,%r13d 2804 andl %edi,%r15d 2805 xorl %ebx,%r14d 2806 addl %r13d,%eax 2807 xorl %ecx,%r15d 2808 rorl $2,%r14d 2809 addl %eax,%r8d 2810 addl %r15d,%eax 2811 movl %r8d,%r13d 2812 addl %eax,%r14d 2813 movq 64+0(%rsp),%rdi 2814 movl %r14d,%eax 2815 2816 addl 0(%rdi),%eax 2817 leaq 64(%rsi),%rsi 2818 addl 4(%rdi),%ebx 2819 addl 8(%rdi),%ecx 2820 addl 12(%rdi),%edx 2821 addl 16(%rdi),%r8d 2822 addl 20(%rdi),%r9d 2823 addl 24(%rdi),%r10d 2824 addl 28(%rdi),%r11d 2825 2826 cmpq 64+16(%rsp),%rsi 2827 2828 movl %eax,0(%rdi) 2829 movl %ebx,4(%rdi) 2830 movl %ecx,8(%rdi) 2831 movl %edx,12(%rdi) 2832 movl %r8d,16(%rdi) 2833 movl %r9d,20(%rdi) 2834 movl %r10d,24(%rdi) 2835 movl %r11d,28(%rdi) 2836 jb .Lloop_ssse3 2837 2838 movq 64+24(%rsp),%rsi 2839 movq (%rsi),%r15 2840 movq 8(%rsi),%r14 2841 movq 16(%rsi),%r13 2842 movq 24(%rsi),%r12 2843 movq 32(%rsi),%rbp 2844 movq 40(%rsi),%rbx 2845 leaq 48(%rsi),%rsp 2846 .Lepilogue_ssse3: 2847 .byte 0xf3,0xc3 2848 .size sha256_block_data_order_ssse3,.-sha256_block_data_order_ssse3 2849 .type sha256_block_data_order_avx,@function 2850 .align 64 2851 sha256_block_data_order_avx: 2852 .Lavx_shortcut: 2853 pushq %rbx 2854 pushq %rbp 2855 pushq %r12 2856 pushq %r13 2857 pushq %r14 2858 pushq %r15 2859 movq %rsp,%r11 2860 shlq $4,%rdx 2861 subq $96,%rsp 2862 leaq (%rsi,%rdx,4),%rdx 2863 andq $-64,%rsp 2864 movq %rdi,64+0(%rsp) 2865 movq %rsi,64+8(%rsp) 2866 movq %rdx,64+16(%rsp) 2867 movq %r11,64+24(%rsp) 2868 .Lprologue_avx: 2869 2870 vzeroupper 2871 movl 0(%rdi),%eax 2872 movl 4(%rdi),%ebx 2873 movl 8(%rdi),%ecx 2874 movl 12(%rdi),%edx 2875 movl 16(%rdi),%r8d 2876 movl 20(%rdi),%r9d 2877 movl 24(%rdi),%r10d 2878 movl 28(%rdi),%r11d 2879 vmovdqa K256+512+32(%rip),%xmm8 2880 vmovdqa K256+512+64(%rip),%xmm9 2881 jmp .Lloop_avx 2882 .align 16 2883 .Lloop_avx: 2884 vmovdqa K256+512(%rip),%xmm7 2885 vmovdqu 0(%rsi),%xmm0 2886 vmovdqu 16(%rsi),%xmm1 2887 vmovdqu 32(%rsi),%xmm2 2888 vmovdqu 48(%rsi),%xmm3 2889 vpshufb %xmm7,%xmm0,%xmm0 2890 leaq K256(%rip),%rbp 2891 vpshufb %xmm7,%xmm1,%xmm1 2892 vpshufb %xmm7,%xmm2,%xmm2 2893 vpaddd 0(%rbp),%xmm0,%xmm4 2894 vpshufb %xmm7,%xmm3,%xmm3 2895 vpaddd 32(%rbp),%xmm1,%xmm5 2896 vpaddd 64(%rbp),%xmm2,%xmm6 2897 vpaddd 96(%rbp),%xmm3,%xmm7 2898 vmovdqa %xmm4,0(%rsp) 2899 movl %eax,%r14d 2900 vmovdqa %xmm5,16(%rsp) 2901 movl %ebx,%edi 2902 vmovdqa %xmm6,32(%rsp) 2903 xorl %ecx,%edi 2904 vmovdqa %xmm7,48(%rsp) 2905 movl %r8d,%r13d 2906 jmp .Lavx_00_47 2907 2908 .align 16 2909 .Lavx_00_47: 2910 subq $-128,%rbp 2911 vpalignr $4,%xmm0,%xmm1,%xmm4 2912 shrdl $14,%r13d,%r13d 2913 movl %r14d,%eax 2914 movl %r9d,%r12d 2915 vpalignr $4,%xmm2,%xmm3,%xmm7 2916 shrdl $9,%r14d,%r14d 2917 xorl %r8d,%r13d 2918 xorl %r10d,%r12d 2919 vpsrld $7,%xmm4,%xmm6 2920 shrdl $5,%r13d,%r13d 2921 xorl %eax,%r14d 2922 andl %r8d,%r12d 2923 vpaddd %xmm7,%xmm0,%xmm0 2924 xorl %r8d,%r13d 2925 addl 0(%rsp),%r11d 2926 movl %eax,%r15d 2927 vpsrld $3,%xmm4,%xmm7 2928 xorl %r10d,%r12d 2929 shrdl $11,%r14d,%r14d 2930 xorl %ebx,%r15d 2931 vpslld $14,%xmm4,%xmm5 2932 addl %r12d,%r11d 2933 shrdl $6,%r13d,%r13d 2934 andl %r15d,%edi 2935 vpxor %xmm6,%xmm7,%xmm4 2936 xorl %eax,%r14d 2937 addl %r13d,%r11d 2938 xorl %ebx,%edi 2939 vpshufd $250,%xmm3,%xmm7 2940 shrdl $2,%r14d,%r14d 2941 addl %r11d,%edx 2942 addl %edi,%r11d 2943 vpsrld $11,%xmm6,%xmm6 2944 movl %edx,%r13d 2945 addl %r11d,%r14d 2946 shrdl $14,%r13d,%r13d 2947 vpxor %xmm5,%xmm4,%xmm4 2948 movl %r14d,%r11d 2949 movl %r8d,%r12d 2950 shrdl $9,%r14d,%r14d 2951 vpslld $11,%xmm5,%xmm5 2952 xorl %edx,%r13d 2953 xorl %r9d,%r12d 2954 shrdl $5,%r13d,%r13d 2955 vpxor %xmm6,%xmm4,%xmm4 2956 xorl %r11d,%r14d 2957 andl %edx,%r12d 2958 xorl %edx,%r13d 2959 vpsrld $10,%xmm7,%xmm6 2960 addl 4(%rsp),%r10d 2961 movl %r11d,%edi 2962 xorl %r9d,%r12d 2963 vpxor %xmm5,%xmm4,%xmm4 2964 shrdl $11,%r14d,%r14d 2965 xorl %eax,%edi 2966 addl %r12d,%r10d 2967 vpsrlq $17,%xmm7,%xmm7 2968 shrdl $6,%r13d,%r13d 2969 andl %edi,%r15d 2970 xorl %r11d,%r14d 2971 vpaddd %xmm4,%xmm0,%xmm0 2972 addl %r13d,%r10d 2973 xorl %eax,%r15d 2974 shrdl $2,%r14d,%r14d 2975 vpxor %xmm7,%xmm6,%xmm6 2976 addl %r10d,%ecx 2977 addl %r15d,%r10d 2978 movl %ecx,%r13d 2979 vpsrlq $2,%xmm7,%xmm7 2980 addl %r10d,%r14d 2981 shrdl $14,%r13d,%r13d 2982 movl %r14d,%r10d 2983 vpxor %xmm7,%xmm6,%xmm6 2984 movl %edx,%r12d 2985 shrdl $9,%r14d,%r14d 2986 xorl %ecx,%r13d 2987 vpshufb %xmm8,%xmm6,%xmm6 2988 xorl %r8d,%r12d 2989 shrdl $5,%r13d,%r13d 2990 xorl %r10d,%r14d 2991 vpaddd %xmm6,%xmm0,%xmm0 2992 andl %ecx,%r12d 2993 xorl %ecx,%r13d 2994 addl 8(%rsp),%r9d 2995 vpshufd $80,%xmm0,%xmm7 2996 movl %r10d,%r15d 2997 xorl %r8d,%r12d 2998 shrdl $11,%r14d,%r14d 2999 vpsrld $10,%xmm7,%xmm6 3000 xorl %r11d,%r15d 3001 addl %r12d,%r9d 3002 shrdl $6,%r13d,%r13d 3003 vpsrlq $17,%xmm7,%xmm7 3004 andl %r15d,%edi 3005 xorl %r10d,%r14d 3006 addl %r13d,%r9d 3007 vpxor %xmm7,%xmm6,%xmm6 3008 xorl %r11d,%edi 3009 shrdl $2,%r14d,%r14d 3010 addl %r9d,%ebx 3011 vpsrlq $2,%xmm7,%xmm7 3012 addl %edi,%r9d 3013 movl %ebx,%r13d 3014 addl %r9d,%r14d 3015 vpxor %xmm7,%xmm6,%xmm6 3016 shrdl $14,%r13d,%r13d 3017 movl %r14d,%r9d 3018 movl %ecx,%r12d 3019 vpshufb %xmm9,%xmm6,%xmm6 3020 shrdl $9,%r14d,%r14d 3021 xorl %ebx,%r13d 3022 xorl %edx,%r12d 3023 vpaddd %xmm6,%xmm0,%xmm0 3024 shrdl $5,%r13d,%r13d 3025 xorl %r9d,%r14d 3026 andl %ebx,%r12d 3027 vpaddd 0(%rbp),%xmm0,%xmm6 3028 xorl %ebx,%r13d 3029 addl 12(%rsp),%r8d 3030 movl %r9d,%edi 3031 xorl %edx,%r12d 3032 shrdl $11,%r14d,%r14d 3033 xorl %r10d,%edi 3034 addl %r12d,%r8d 3035 shrdl $6,%r13d,%r13d 3036 andl %edi,%r15d 3037 xorl %r9d,%r14d 3038 addl %r13d,%r8d 3039 xorl %r10d,%r15d 3040 shrdl $2,%r14d,%r14d 3041 addl %r8d,%eax 3042 addl %r15d,%r8d 3043 movl %eax,%r13d 3044 addl %r8d,%r14d 3045 vmovdqa %xmm6,0(%rsp) 3046 vpalignr $4,%xmm1,%xmm2,%xmm4 3047 shrdl $14,%r13d,%r13d 3048 movl %r14d,%r8d 3049 movl %ebx,%r12d 3050 vpalignr $4,%xmm3,%xmm0,%xmm7 3051 shrdl $9,%r14d,%r14d 3052 xorl %eax,%r13d 3053 xorl %ecx,%r12d 3054 vpsrld $7,%xmm4,%xmm6 3055 shrdl $5,%r13d,%r13d 3056 xorl %r8d,%r14d 3057 andl %eax,%r12d 3058 vpaddd %xmm7,%xmm1,%xmm1 3059 xorl %eax,%r13d 3060 addl 16(%rsp),%edx 3061 movl %r8d,%r15d 3062 vpsrld $3,%xmm4,%xmm7 3063 xorl %ecx,%r12d 3064 shrdl $11,%r14d,%r14d 3065 xorl %r9d,%r15d 3066 vpslld $14,%xmm4,%xmm5 3067 addl %r12d,%edx 3068 shrdl $6,%r13d,%r13d 3069 andl %r15d,%edi 3070 vpxor %xmm6,%xmm7,%xmm4 3071 xorl %r8d,%r14d 3072 addl %r13d,%edx 3073 xorl %r9d,%edi 3074 vpshufd $250,%xmm0,%xmm7 3075 shrdl $2,%r14d,%r14d 3076 addl %edx,%r11d 3077 addl %edi,%edx 3078 vpsrld $11,%xmm6,%xmm6 3079 movl %r11d,%r13d 3080 addl %edx,%r14d 3081 shrdl $14,%r13d,%r13d 3082 vpxor %xmm5,%xmm4,%xmm4 3083 movl %r14d,%edx 3084 movl %eax,%r12d 3085 shrdl $9,%r14d,%r14d 3086 vpslld $11,%xmm5,%xmm5 3087 xorl %r11d,%r13d 3088 xorl %ebx,%r12d 3089 shrdl $5,%r13d,%r13d 3090 vpxor %xmm6,%xmm4,%xmm4 3091 xorl %edx,%r14d 3092 andl %r11d,%r12d 3093 xorl %r11d,%r13d 3094 vpsrld $10,%xmm7,%xmm6 3095 addl 20(%rsp),%ecx 3096 movl %edx,%edi 3097 xorl %ebx,%r12d 3098 vpxor %xmm5,%xmm4,%xmm4 3099 shrdl $11,%r14d,%r14d 3100 xorl %r8d,%edi 3101 addl %r12d,%ecx 3102 vpsrlq $17,%xmm7,%xmm7 3103 shrdl $6,%r13d,%r13d 3104 andl %edi,%r15d 3105 xorl %edx,%r14d 3106 vpaddd %xmm4,%xmm1,%xmm1 3107 addl %r13d,%ecx 3108 xorl %r8d,%r15d 3109 shrdl $2,%r14d,%r14d 3110 vpxor %xmm7,%xmm6,%xmm6 3111 addl %ecx,%r10d 3112 addl %r15d,%ecx 3113 movl %r10d,%r13d 3114 vpsrlq $2,%xmm7,%xmm7 3115 addl %ecx,%r14d 3116 shrdl $14,%r13d,%r13d 3117 movl %r14d,%ecx 3118 vpxor %xmm7,%xmm6,%xmm6 3119 movl %r11d,%r12d 3120 shrdl $9,%r14d,%r14d 3121 xorl %r10d,%r13d 3122 vpshufb %xmm8,%xmm6,%xmm6 3123 xorl %eax,%r12d 3124 shrdl $5,%r13d,%r13d 3125 xorl %ecx,%r14d 3126 vpaddd %xmm6,%xmm1,%xmm1 3127 andl %r10d,%r12d 3128 xorl %r10d,%r13d 3129 addl 24(%rsp),%ebx 3130 vpshufd $80,%xmm1,%xmm7 3131 movl %ecx,%r15d 3132 xorl %eax,%r12d 3133 shrdl $11,%r14d,%r14d 3134 vpsrld $10,%xmm7,%xmm6 3135 xorl %edx,%r15d 3136 addl %r12d,%ebx 3137 shrdl $6,%r13d,%r13d 3138 vpsrlq $17,%xmm7,%xmm7 3139 andl %r15d,%edi 3140 xorl %ecx,%r14d 3141 addl %r13d,%ebx 3142 vpxor %xmm7,%xmm6,%xmm6 3143 xorl %edx,%edi 3144 shrdl $2,%r14d,%r14d 3145 addl %ebx,%r9d 3146 vpsrlq $2,%xmm7,%xmm7 3147 addl %edi,%ebx 3148 movl %r9d,%r13d 3149 addl %ebx,%r14d 3150 vpxor %xmm7,%xmm6,%xmm6 3151 shrdl $14,%r13d,%r13d 3152 movl %r14d,%ebx 3153 movl %r10d,%r12d 3154 vpshufb %xmm9,%xmm6,%xmm6 3155 shrdl $9,%r14d,%r14d 3156 xorl %r9d,%r13d 3157 xorl %r11d,%r12d 3158 vpaddd %xmm6,%xmm1,%xmm1 3159 shrdl $5,%r13d,%r13d 3160 xorl %ebx,%r14d 3161 andl %r9d,%r12d 3162 vpaddd 32(%rbp),%xmm1,%xmm6 3163 xorl %r9d,%r13d 3164 addl 28(%rsp),%eax 3165 movl %ebx,%edi 3166 xorl %r11d,%r12d 3167 shrdl $11,%r14d,%r14d 3168 xorl %ecx,%edi 3169 addl %r12d,%eax 3170 shrdl $6,%r13d,%r13d 3171 andl %edi,%r15d 3172 xorl %ebx,%r14d 3173 addl %r13d,%eax 3174 xorl %ecx,%r15d 3175 shrdl $2,%r14d,%r14d 3176 addl %eax,%r8d 3177 addl %r15d,%eax 3178 movl %r8d,%r13d 3179 addl %eax,%r14d 3180 vmovdqa %xmm6,16(%rsp) 3181 vpalignr $4,%xmm2,%xmm3,%xmm4 3182 shrdl $14,%r13d,%r13d 3183 movl %r14d,%eax 3184 movl %r9d,%r12d 3185 vpalignr $4,%xmm0,%xmm1,%xmm7 3186 shrdl $9,%r14d,%r14d 3187 xorl %r8d,%r13d 3188 xorl %r10d,%r12d 3189 vpsrld $7,%xmm4,%xmm6 3190 shrdl $5,%r13d,%r13d 3191 xorl %eax,%r14d 3192 andl %r8d,%r12d 3193 vpaddd %xmm7,%xmm2,%xmm2 3194 xorl %r8d,%r13d 3195 addl 32(%rsp),%r11d 3196 movl %eax,%r15d 3197 vpsrld $3,%xmm4,%xmm7 3198 xorl %r10d,%r12d 3199 shrdl $11,%r14d,%r14d 3200 xorl %ebx,%r15d 3201 vpslld $14,%xmm4,%xmm5 3202 addl %r12d,%r11d 3203 shrdl $6,%r13d,%r13d 3204 andl %r15d,%edi 3205 vpxor %xmm6,%xmm7,%xmm4 3206 xorl %eax,%r14d 3207 addl %r13d,%r11d 3208 xorl %ebx,%edi 3209 vpshufd $250,%xmm1,%xmm7 3210 shrdl $2,%r14d,%r14d 3211 addl %r11d,%edx 3212 addl %edi,%r11d 3213 vpsrld $11,%xmm6,%xmm6 3214 movl %edx,%r13d 3215 addl %r11d,%r14d 3216 shrdl $14,%r13d,%r13d 3217 vpxor %xmm5,%xmm4,%xmm4 3218 movl %r14d,%r11d 3219 movl %r8d,%r12d 3220 shrdl $9,%r14d,%r14d 3221 vpslld $11,%xmm5,%xmm5 3222 xorl %edx,%r13d 3223 xorl %r9d,%r12d 3224 shrdl $5,%r13d,%r13d 3225 vpxor %xmm6,%xmm4,%xmm4 3226 xorl %r11d,%r14d 3227 andl %edx,%r12d 3228 xorl %edx,%r13d 3229 vpsrld $10,%xmm7,%xmm6 3230 addl 36(%rsp),%r10d 3231 movl %r11d,%edi 3232 xorl %r9d,%r12d 3233 vpxor %xmm5,%xmm4,%xmm4 3234 shrdl $11,%r14d,%r14d 3235 xorl %eax,%edi 3236 addl %r12d,%r10d 3237 vpsrlq $17,%xmm7,%xmm7 3238 shrdl $6,%r13d,%r13d 3239 andl %edi,%r15d 3240 xorl %r11d,%r14d 3241 vpaddd %xmm4,%xmm2,%xmm2 3242 addl %r13d,%r10d 3243 xorl %eax,%r15d 3244 shrdl $2,%r14d,%r14d 3245 vpxor %xmm7,%xmm6,%xmm6 3246 addl %r10d,%ecx 3247 addl %r15d,%r10d 3248 movl %ecx,%r13d 3249 vpsrlq $2,%xmm7,%xmm7 3250 addl %r10d,%r14d 3251 shrdl $14,%r13d,%r13d 3252 movl %r14d,%r10d 3253 vpxor %xmm7,%xmm6,%xmm6 3254 movl %edx,%r12d 3255 shrdl $9,%r14d,%r14d 3256 xorl %ecx,%r13d 3257 vpshufb %xmm8,%xmm6,%xmm6 3258 xorl %r8d,%r12d 3259 shrdl $5,%r13d,%r13d 3260 xorl %r10d,%r14d 3261 vpaddd %xmm6,%xmm2,%xmm2 3262 andl %ecx,%r12d 3263 xorl %ecx,%r13d 3264 addl 40(%rsp),%r9d 3265 vpshufd $80,%xmm2,%xmm7 3266 movl %r10d,%r15d 3267 xorl %r8d,%r12d 3268 shrdl $11,%r14d,%r14d 3269 vpsrld $10,%xmm7,%xmm6 3270 xorl %r11d,%r15d 3271 addl %r12d,%r9d 3272 shrdl $6,%r13d,%r13d 3273 vpsrlq $17,%xmm7,%xmm7 3274 andl %r15d,%edi 3275 xorl %r10d,%r14d 3276 addl %r13d,%r9d 3277 vpxor %xmm7,%xmm6,%xmm6 3278 xorl %r11d,%edi 3279 shrdl $2,%r14d,%r14d 3280 addl %r9d,%ebx 3281 vpsrlq $2,%xmm7,%xmm7 3282 addl %edi,%r9d 3283 movl %ebx,%r13d 3284 addl %r9d,%r14d 3285 vpxor %xmm7,%xmm6,%xmm6 3286 shrdl $14,%r13d,%r13d 3287 movl %r14d,%r9d 3288 movl %ecx,%r12d 3289 vpshufb %xmm9,%xmm6,%xmm6 3290 shrdl $9,%r14d,%r14d 3291 xorl %ebx,%r13d 3292 xorl %edx,%r12d 3293 vpaddd %xmm6,%xmm2,%xmm2 3294 shrdl $5,%r13d,%r13d 3295 xorl %r9d,%r14d 3296 andl %ebx,%r12d 3297 vpaddd 64(%rbp),%xmm2,%xmm6 3298 xorl %ebx,%r13d 3299 addl 44(%rsp),%r8d 3300 movl %r9d,%edi 3301 xorl %edx,%r12d 3302 shrdl $11,%r14d,%r14d 3303 xorl %r10d,%edi 3304 addl %r12d,%r8d 3305 shrdl $6,%r13d,%r13d 3306 andl %edi,%r15d 3307 xorl %r9d,%r14d 3308 addl %r13d,%r8d 3309 xorl %r10d,%r15d 3310 shrdl $2,%r14d,%r14d 3311 addl %r8d,%eax 3312 addl %r15d,%r8d 3313 movl %eax,%r13d 3314 addl %r8d,%r14d 3315 vmovdqa %xmm6,32(%rsp) 3316 vpalignr $4,%xmm3,%xmm0,%xmm4 3317 shrdl $14,%r13d,%r13d 3318 movl %r14d,%r8d 3319 movl %ebx,%r12d 3320 vpalignr $4,%xmm1,%xmm2,%xmm7 3321 shrdl $9,%r14d,%r14d 3322 xorl %eax,%r13d 3323 xorl %ecx,%r12d 3324 vpsrld $7,%xmm4,%xmm6 3325 shrdl $5,%r13d,%r13d 3326 xorl %r8d,%r14d 3327 andl %eax,%r12d 3328 vpaddd %xmm7,%xmm3,%xmm3 3329 xorl %eax,%r13d 3330 addl 48(%rsp),%edx 3331 movl %r8d,%r15d 3332 vpsrld $3,%xmm4,%xmm7 3333 xorl %ecx,%r12d 3334 shrdl $11,%r14d,%r14d 3335 xorl %r9d,%r15d 3336 vpslld $14,%xmm4,%xmm5 3337 addl %r12d,%edx 3338 shrdl $6,%r13d,%r13d 3339 andl %r15d,%edi 3340 vpxor %xmm6,%xmm7,%xmm4 3341 xorl %r8d,%r14d 3342 addl %r13d,%edx 3343 xorl %r9d,%edi 3344 vpshufd $250,%xmm2,%xmm7 3345 shrdl $2,%r14d,%r14d 3346 addl %edx,%r11d 3347 addl %edi,%edx 3348 vpsrld $11,%xmm6,%xmm6 3349 movl %r11d,%r13d 3350 addl %edx,%r14d 3351 shrdl $14,%r13d,%r13d 3352 vpxor %xmm5,%xmm4,%xmm4 3353 movl %r14d,%edx 3354 movl %eax,%r12d 3355 shrdl $9,%r14d,%r14d 3356 vpslld $11,%xmm5,%xmm5 3357 xorl %r11d,%r13d 3358 xorl %ebx,%r12d 3359 shrdl $5,%r13d,%r13d 3360 vpxor %xmm6,%xmm4,%xmm4 3361 xorl %edx,%r14d 3362 andl %r11d,%r12d 3363 xorl %r11d,%r13d 3364 vpsrld $10,%xmm7,%xmm6 3365 addl 52(%rsp),%ecx 3366 movl %edx,%edi 3367 xorl %ebx,%r12d 3368 vpxor %xmm5,%xmm4,%xmm4 3369 shrdl $11,%r14d,%r14d 3370 xorl %r8d,%edi 3371 addl %r12d,%ecx 3372 vpsrlq $17,%xmm7,%xmm7 3373 shrdl $6,%r13d,%r13d 3374 andl %edi,%r15d 3375 xorl %edx,%r14d 3376 vpaddd %xmm4,%xmm3,%xmm3 3377 addl %r13d,%ecx 3378 xorl %r8d,%r15d 3379 shrdl $2,%r14d,%r14d 3380 vpxor %xmm7,%xmm6,%xmm6 3381 addl %ecx,%r10d 3382 addl %r15d,%ecx 3383 movl %r10d,%r13d 3384 vpsrlq $2,%xmm7,%xmm7 3385 addl %ecx,%r14d 3386 shrdl $14,%r13d,%r13d 3387 movl %r14d,%ecx 3388 vpxor %xmm7,%xmm6,%xmm6 3389 movl %r11d,%r12d 3390 shrdl $9,%r14d,%r14d 3391 xorl %r10d,%r13d 3392 vpshufb %xmm8,%xmm6,%xmm6 3393 xorl %eax,%r12d 3394 shrdl $5,%r13d,%r13d 3395 xorl %ecx,%r14d 3396 vpaddd %xmm6,%xmm3,%xmm3 3397 andl %r10d,%r12d 3398 xorl %r10d,%r13d 3399 addl 56(%rsp),%ebx 3400 vpshufd $80,%xmm3,%xmm7 3401 movl %ecx,%r15d 3402 xorl %eax,%r12d 3403 shrdl $11,%r14d,%r14d 3404 vpsrld $10,%xmm7,%xmm6 3405 xorl %edx,%r15d 3406 addl %r12d,%ebx 3407 shrdl $6,%r13d,%r13d 3408 vpsrlq $17,%xmm7,%xmm7 3409 andl %r15d,%edi 3410 xorl %ecx,%r14d 3411 addl %r13d,%ebx 3412 vpxor %xmm7,%xmm6,%xmm6 3413 xorl %edx,%edi 3414 shrdl $2,%r14d,%r14d 3415 addl %ebx,%r9d 3416 vpsrlq $2,%xmm7,%xmm7 3417 addl %edi,%ebx 3418 movl %r9d,%r13d 3419 addl %ebx,%r14d 3420 vpxor %xmm7,%xmm6,%xmm6 3421 shrdl $14,%r13d,%r13d 3422 movl %r14d,%ebx 3423 movl %r10d,%r12d 3424 vpshufb %xmm9,%xmm6,%xmm6 3425 shrdl $9,%r14d,%r14d 3426 xorl %r9d,%r13d 3427 xorl %r11d,%r12d 3428 vpaddd %xmm6,%xmm3,%xmm3 3429 shrdl $5,%r13d,%r13d 3430 xorl %ebx,%r14d 3431 andl %r9d,%r12d 3432 vpaddd 96(%rbp),%xmm3,%xmm6 3433 xorl %r9d,%r13d 3434 addl 60(%rsp),%eax 3435 movl %ebx,%edi 3436 xorl %r11d,%r12d 3437 shrdl $11,%r14d,%r14d 3438 xorl %ecx,%edi 3439 addl %r12d,%eax 3440 shrdl $6,%r13d,%r13d 3441 andl %edi,%r15d 3442 xorl %ebx,%r14d 3443 addl %r13d,%eax 3444 xorl %ecx,%r15d 3445 shrdl $2,%r14d,%r14d 3446 addl %eax,%r8d 3447 addl %r15d,%eax 3448 movl %r8d,%r13d 3449 addl %eax,%r14d 3450 vmovdqa %xmm6,48(%rsp) 3451 cmpb $0,131(%rbp) 3452 jne .Lavx_00_47 3453 shrdl $14,%r13d,%r13d 3454 movl %r14d,%eax 3455 movl %r9d,%r12d 3456 shrdl $9,%r14d,%r14d 3457 xorl %r8d,%r13d 3458 xorl %r10d,%r12d 3459 shrdl $5,%r13d,%r13d 3460 xorl %eax,%r14d 3461 andl %r8d,%r12d 3462 xorl %r8d,%r13d 3463 addl 0(%rsp),%r11d 3464 movl %eax,%r15d 3465 xorl %r10d,%r12d 3466 shrdl $11,%r14d,%r14d 3467 xorl %ebx,%r15d 3468 addl %r12d,%r11d 3469 shrdl $6,%r13d,%r13d 3470 andl %r15d,%edi 3471 xorl %eax,%r14d 3472 addl %r13d,%r11d 3473 xorl %ebx,%edi 3474 shrdl $2,%r14d,%r14d 3475 addl %r11d,%edx 3476 addl %edi,%r11d 3477 movl %edx,%r13d 3478 addl %r11d,%r14d 3479 shrdl $14,%r13d,%r13d 3480 movl %r14d,%r11d 3481 movl %r8d,%r12d 3482 shrdl $9,%r14d,%r14d 3483 xorl %edx,%r13d 3484 xorl %r9d,%r12d 3485 shrdl $5,%r13d,%r13d 3486 xorl %r11d,%r14d 3487 andl %edx,%r12d 3488 xorl %edx,%r13d 3489 addl 4(%rsp),%r10d 3490 movl %r11d,%edi 3491 xorl %r9d,%r12d 3492 shrdl $11,%r14d,%r14d 3493 xorl %eax,%edi 3494 addl %r12d,%r10d 3495 shrdl $6,%r13d,%r13d 3496 andl %edi,%r15d 3497 xorl %r11d,%r14d 3498 addl %r13d,%r10d 3499 xorl %eax,%r15d 3500 shrdl $2,%r14d,%r14d 3501 addl %r10d,%ecx 3502 addl %r15d,%r10d 3503 movl %ecx,%r13d 3504 addl %r10d,%r14d 3505 shrdl $14,%r13d,%r13d 3506 movl %r14d,%r10d 3507 movl %edx,%r12d 3508 shrdl $9,%r14d,%r14d 3509 xorl %ecx,%r13d 3510 xorl %r8d,%r12d 3511 shrdl $5,%r13d,%r13d 3512 xorl %r10d,%r14d 3513 andl %ecx,%r12d 3514 xorl %ecx,%r13d 3515 addl 8(%rsp),%r9d 3516 movl %r10d,%r15d 3517 xorl %r8d,%r12d 3518 shrdl $11,%r14d,%r14d 3519 xorl %r11d,%r15d 3520 addl %r12d,%r9d 3521 shrdl $6,%r13d,%r13d 3522 andl %r15d,%edi 3523 xorl %r10d,%r14d 3524 addl %r13d,%r9d 3525 xorl %r11d,%edi 3526 shrdl $2,%r14d,%r14d 3527 addl %r9d,%ebx 3528 addl %edi,%r9d 3529 movl %ebx,%r13d 3530 addl %r9d,%r14d 3531 shrdl $14,%r13d,%r13d 3532 movl %r14d,%r9d 3533 movl %ecx,%r12d 3534 shrdl $9,%r14d,%r14d 3535 xorl %ebx,%r13d 3536 xorl %edx,%r12d 3537 shrdl $5,%r13d,%r13d 3538 xorl %r9d,%r14d 3539 andl %ebx,%r12d 3540 xorl %ebx,%r13d 3541 addl 12(%rsp),%r8d 3542 movl %r9d,%edi 3543 xorl %edx,%r12d 3544 shrdl $11,%r14d,%r14d 3545 xorl %r10d,%edi 3546 addl %r12d,%r8d 3547 shrdl $6,%r13d,%r13d 3548 andl %edi,%r15d 3549 xorl %r9d,%r14d 3550 addl %r13d,%r8d 3551 xorl %r10d,%r15d 3552 shrdl $2,%r14d,%r14d 3553 addl %r8d,%eax 3554 addl %r15d,%r8d 3555 movl %eax,%r13d 3556 addl %r8d,%r14d 3557 shrdl $14,%r13d,%r13d 3558 movl %r14d,%r8d 3559 movl %ebx,%r12d 3560 shrdl $9,%r14d,%r14d 3561 xorl %eax,%r13d 3562 xorl %ecx,%r12d 3563 shrdl $5,%r13d,%r13d 3564 xorl %r8d,%r14d 3565 andl %eax,%r12d 3566 xorl %eax,%r13d 3567 addl 16(%rsp),%edx 3568 movl %r8d,%r15d 3569 xorl %ecx,%r12d 3570 shrdl $11,%r14d,%r14d 3571 xorl %r9d,%r15d 3572 addl %r12d,%edx 3573 shrdl $6,%r13d,%r13d 3574 andl %r15d,%edi 3575 xorl %r8d,%r14d 3576 addl %r13d,%edx 3577 xorl %r9d,%edi 3578 shrdl $2,%r14d,%r14d 3579 addl %edx,%r11d 3580 addl %edi,%edx 3581 movl %r11d,%r13d 3582 addl %edx,%r14d 3583 shrdl $14,%r13d,%r13d 3584 movl %r14d,%edx 3585 movl %eax,%r12d 3586 shrdl $9,%r14d,%r14d 3587 xorl %r11d,%r13d 3588 xorl %ebx,%r12d 3589 shrdl $5,%r13d,%r13d 3590 xorl %edx,%r14d 3591 andl %r11d,%r12d 3592 xorl %r11d,%r13d 3593 addl 20(%rsp),%ecx 3594 movl %edx,%edi 3595 xorl %ebx,%r12d 3596 shrdl $11,%r14d,%r14d 3597 xorl %r8d,%edi 3598 addl %r12d,%ecx 3599 shrdl $6,%r13d,%r13d 3600 andl %edi,%r15d 3601 xorl %edx,%r14d 3602 addl %r13d,%ecx 3603 xorl %r8d,%r15d 3604 shrdl $2,%r14d,%r14d 3605 addl %ecx,%r10d 3606 addl %r15d,%ecx 3607 movl %r10d,%r13d 3608 addl %ecx,%r14d 3609 shrdl $14,%r13d,%r13d 3610 movl %r14d,%ecx 3611 movl %r11d,%r12d 3612 shrdl $9,%r14d,%r14d 3613 xorl %r10d,%r13d 3614 xorl %eax,%r12d 3615 shrdl $5,%r13d,%r13d 3616 xorl %ecx,%r14d 3617 andl %r10d,%r12d 3618 xorl %r10d,%r13d 3619 addl 24(%rsp),%ebx 3620 movl %ecx,%r15d 3621 xorl %eax,%r12d 3622 shrdl $11,%r14d,%r14d 3623 xorl %edx,%r15d 3624 addl %r12d,%ebx 3625 shrdl $6,%r13d,%r13d 3626 andl %r15d,%edi 3627 xorl %ecx,%r14d 3628 addl %r13d,%ebx 3629 xorl %edx,%edi 3630 shrdl $2,%r14d,%r14d 3631 addl %ebx,%r9d 3632 addl %edi,%ebx 3633 movl %r9d,%r13d 3634 addl %ebx,%r14d 3635 shrdl $14,%r13d,%r13d 3636 movl %r14d,%ebx 3637 movl %r10d,%r12d 3638 shrdl $9,%r14d,%r14d 3639 xorl %r9d,%r13d 3640 xorl %r11d,%r12d 3641 shrdl $5,%r13d,%r13d 3642 xorl %ebx,%r14d 3643 andl %r9d,%r12d 3644 xorl %r9d,%r13d 3645 addl 28(%rsp),%eax 3646 movl %ebx,%edi 3647 xorl %r11d,%r12d 3648 shrdl $11,%r14d,%r14d 3649 xorl %ecx,%edi 3650 addl %r12d,%eax 3651 shrdl $6,%r13d,%r13d 3652 andl %edi,%r15d 3653 xorl %ebx,%r14d 3654 addl %r13d,%eax 3655 xorl %ecx,%r15d 3656 shrdl $2,%r14d,%r14d 3657 addl %eax,%r8d 3658 addl %r15d,%eax 3659 movl %r8d,%r13d 3660 addl %eax,%r14d 3661 shrdl $14,%r13d,%r13d 3662 movl %r14d,%eax 3663 movl %r9d,%r12d 3664 shrdl $9,%r14d,%r14d 3665 xorl %r8d,%r13d 3666 xorl %r10d,%r12d 3667 shrdl $5,%r13d,%r13d 3668 xorl %eax,%r14d 3669 andl %r8d,%r12d 3670 xorl %r8d,%r13d 3671 addl 32(%rsp),%r11d 3672 movl %eax,%r15d 3673 xorl %r10d,%r12d 3674 shrdl $11,%r14d,%r14d 3675 xorl %ebx,%r15d 3676 addl %r12d,%r11d 3677 shrdl $6,%r13d,%r13d 3678 andl %r15d,%edi 3679 xorl %eax,%r14d 3680 addl %r13d,%r11d 3681 xorl %ebx,%edi 3682 shrdl $2,%r14d,%r14d 3683 addl %r11d,%edx 3684 addl %edi,%r11d 3685 movl %edx,%r13d 3686 addl %r11d,%r14d 3687 shrdl $14,%r13d,%r13d 3688 movl %r14d,%r11d 3689 movl %r8d,%r12d 3690 shrdl $9,%r14d,%r14d 3691 xorl %edx,%r13d 3692 xorl %r9d,%r12d 3693 shrdl $5,%r13d,%r13d 3694 xorl %r11d,%r14d 3695 andl %edx,%r12d 3696 xorl %edx,%r13d 3697 addl 36(%rsp),%r10d 3698 movl %r11d,%edi 3699 xorl %r9d,%r12d 3700 shrdl $11,%r14d,%r14d 3701 xorl %eax,%edi 3702 addl %r12d,%r10d 3703 shrdl $6,%r13d,%r13d 3704 andl %edi,%r15d 3705 xorl %r11d,%r14d 3706 addl %r13d,%r10d 3707 xorl %eax,%r15d 3708 shrdl $2,%r14d,%r14d 3709 addl %r10d,%ecx 3710 addl %r15d,%r10d 3711 movl %ecx,%r13d 3712 addl %r10d,%r14d 3713 shrdl $14,%r13d,%r13d 3714 movl %r14d,%r10d 3715 movl %edx,%r12d 3716 shrdl $9,%r14d,%r14d 3717 xorl %ecx,%r13d 3718 xorl %r8d,%r12d 3719 shrdl $5,%r13d,%r13d 3720 xorl %r10d,%r14d 3721 andl %ecx,%r12d 3722 xorl %ecx,%r13d 3723 addl 40(%rsp),%r9d 3724 movl %r10d,%r15d 3725 xorl %r8d,%r12d 3726 shrdl $11,%r14d,%r14d 3727 xorl %r11d,%r15d 3728 addl %r12d,%r9d 3729 shrdl $6,%r13d,%r13d 3730 andl %r15d,%edi 3731 xorl %r10d,%r14d 3732 addl %r13d,%r9d 3733 xorl %r11d,%edi 3734 shrdl $2,%r14d,%r14d 3735 addl %r9d,%ebx 3736 addl %edi,%r9d 3737 movl %ebx,%r13d 3738 addl %r9d,%r14d 3739 shrdl $14,%r13d,%r13d 3740 movl %r14d,%r9d 3741 movl %ecx,%r12d 3742 shrdl $9,%r14d,%r14d 3743 xorl %ebx,%r13d 3744 xorl %edx,%r12d 3745 shrdl $5,%r13d,%r13d 3746 xorl %r9d,%r14d 3747 andl %ebx,%r12d 3748 xorl %ebx,%r13d 3749 addl 44(%rsp),%r8d 3750 movl %r9d,%edi 3751 xorl %edx,%r12d 3752 shrdl $11,%r14d,%r14d 3753 xorl %r10d,%edi 3754 addl %r12d,%r8d 3755 shrdl $6,%r13d,%r13d 3756 andl %edi,%r15d 3757 xorl %r9d,%r14d 3758 addl %r13d,%r8d 3759 xorl %r10d,%r15d 3760 shrdl $2,%r14d,%r14d 3761 addl %r8d,%eax 3762 addl %r15d,%r8d 3763 movl %eax,%r13d 3764 addl %r8d,%r14d 3765 shrdl $14,%r13d,%r13d 3766 movl %r14d,%r8d 3767 movl %ebx,%r12d 3768 shrdl $9,%r14d,%r14d 3769 xorl %eax,%r13d 3770 xorl %ecx,%r12d 3771 shrdl $5,%r13d,%r13d 3772 xorl %r8d,%r14d 3773 andl %eax,%r12d 3774 xorl %eax,%r13d 3775 addl 48(%rsp),%edx 3776 movl %r8d,%r15d 3777 xorl %ecx,%r12d 3778 shrdl $11,%r14d,%r14d 3779 xorl %r9d,%r15d 3780 addl %r12d,%edx 3781 shrdl $6,%r13d,%r13d 3782 andl %r15d,%edi 3783 xorl %r8d,%r14d 3784 addl %r13d,%edx 3785 xorl %r9d,%edi 3786 shrdl $2,%r14d,%r14d 3787 addl %edx,%r11d 3788 addl %edi,%edx 3789 movl %r11d,%r13d 3790 addl %edx,%r14d 3791 shrdl $14,%r13d,%r13d 3792 movl %r14d,%edx 3793 movl %eax,%r12d 3794 shrdl $9,%r14d,%r14d 3795 xorl %r11d,%r13d 3796 xorl %ebx,%r12d 3797 shrdl $5,%r13d,%r13d 3798 xorl %edx,%r14d 3799 andl %r11d,%r12d 3800 xorl %r11d,%r13d 3801 addl 52(%rsp),%ecx 3802 movl %edx,%edi 3803 xorl %ebx,%r12d 3804 shrdl $11,%r14d,%r14d 3805 xorl %r8d,%edi 3806 addl %r12d,%ecx 3807 shrdl $6,%r13d,%r13d 3808 andl %edi,%r15d 3809 xorl %edx,%r14d 3810 addl %r13d,%ecx 3811 xorl %r8d,%r15d 3812 shrdl $2,%r14d,%r14d 3813 addl %ecx,%r10d 3814 addl %r15d,%ecx 3815 movl %r10d,%r13d 3816 addl %ecx,%r14d 3817 shrdl $14,%r13d,%r13d 3818 movl %r14d,%ecx 3819 movl %r11d,%r12d 3820 shrdl $9,%r14d,%r14d 3821 xorl %r10d,%r13d 3822 xorl %eax,%r12d 3823 shrdl $5,%r13d,%r13d 3824 xorl %ecx,%r14d 3825 andl %r10d,%r12d 3826 xorl %r10d,%r13d 3827 addl 56(%rsp),%ebx 3828 movl %ecx,%r15d 3829 xorl %eax,%r12d 3830 shrdl $11,%r14d,%r14d 3831 xorl %edx,%r15d 3832 addl %r12d,%ebx 3833 shrdl $6,%r13d,%r13d 3834 andl %r15d,%edi 3835 xorl %ecx,%r14d 3836 addl %r13d,%ebx 3837 xorl %edx,%edi 3838 shrdl $2,%r14d,%r14d 3839 addl %ebx,%r9d 3840 addl %edi,%ebx 3841 movl %r9d,%r13d 3842 addl %ebx,%r14d 3843 shrdl $14,%r13d,%r13d 3844 movl %r14d,%ebx 3845 movl %r10d,%r12d 3846 shrdl $9,%r14d,%r14d 3847 xorl %r9d,%r13d 3848 xorl %r11d,%r12d 3849 shrdl $5,%r13d,%r13d 3850 xorl %ebx,%r14d 3851 andl %r9d,%r12d 3852 xorl %r9d,%r13d 3853 addl 60(%rsp),%eax 3854 movl %ebx,%edi 3855 xorl %r11d,%r12d 3856 shrdl $11,%r14d,%r14d 3857 xorl %ecx,%edi 3858 addl %r12d,%eax 3859 shrdl $6,%r13d,%r13d 3860 andl %edi,%r15d 3861 xorl %ebx,%r14d 3862 addl %r13d,%eax 3863 xorl %ecx,%r15d 3864 shrdl $2,%r14d,%r14d 3865 addl %eax,%r8d 3866 addl %r15d,%eax 3867 movl %r8d,%r13d 3868 addl %eax,%r14d 3869 movq 64+0(%rsp),%rdi 3870 movl %r14d,%eax 3871 3872 addl 0(%rdi),%eax 3873 leaq 64(%rsi),%rsi 3874 addl 4(%rdi),%ebx 3875 addl 8(%rdi),%ecx 3876 addl 12(%rdi),%edx 3877 addl 16(%rdi),%r8d 3878 addl 20(%rdi),%r9d 3879 addl 24(%rdi),%r10d 3880 addl 28(%rdi),%r11d 3881 3882 cmpq 64+16(%rsp),%rsi 3883 3884 movl %eax,0(%rdi) 3885 movl %ebx,4(%rdi) 3886 movl %ecx,8(%rdi) 3887 movl %edx,12(%rdi) 3888 movl %r8d,16(%rdi) 3889 movl %r9d,20(%rdi) 3890 movl %r10d,24(%rdi) 3891 movl %r11d,28(%rdi) 3892 jb .Lloop_avx 3893 3894 movq 64+24(%rsp),%rsi 3895 vzeroupper 3896 movq (%rsi),%r15 3897 movq 8(%rsi),%r14 3898 movq 16(%rsi),%r13 3899 movq 24(%rsi),%r12 3900 movq 32(%rsi),%rbp 3901 movq 40(%rsi),%rbx 3902 leaq 48(%rsi),%rsp 3903 .Lepilogue_avx: 3904 .byte 0xf3,0xc3 3905 .size sha256_block_data_order_avx,.-sha256_block_data_order_avx 3906 #endif 3907