1.text 2 3 4.globl sha512_block_data_order 5.type sha512_block_data_order,@function 6.align 16 7sha512_block_data_order: 8.cfi_startproc 9 leaq OPENSSL_ia32cap_P(%rip),%r11 10 movl 0(%r11),%r9d 11 movl 4(%r11),%r10d 12 movl 8(%r11),%r11d 13 testl $2048,%r10d 14 jnz .Lxop_shortcut 15 andl $296,%r11d 16 cmpl $296,%r11d 17 je .Lavx2_shortcut 18 andl $1073741824,%r9d 19 andl $268435968,%r10d 20 orl %r9d,%r10d 21 cmpl $1342177792,%r10d 22 je .Lavx_shortcut 23 movq %rsp,%rax 24.cfi_def_cfa_register %rax 25 pushq %rbx 26.cfi_offset %rbx,-16 27 pushq %rbp 28.cfi_offset %rbp,-24 29 pushq %r12 30.cfi_offset %r12,-32 31 pushq %r13 32.cfi_offset %r13,-40 33 pushq %r14 34.cfi_offset %r14,-48 35 pushq %r15 36.cfi_offset %r15,-56 37 shlq $4,%rdx 38 subq $128+32,%rsp 39 leaq (%rsi,%rdx,8),%rdx 40 andq $-64,%rsp 41 movq %rdi,128+0(%rsp) 42 movq %rsi,128+8(%rsp) 43 movq %rdx,128+16(%rsp) 44 movq %rax,152(%rsp) 45.cfi_escape 0x0f,0x06,0x77,0x98,0x01,0x06,0x23,0x08 46.Lprologue: 47 48 movq 0(%rdi),%rax 49 movq 8(%rdi),%rbx 50 movq 16(%rdi),%rcx 51 movq 24(%rdi),%rdx 52 movq 32(%rdi),%r8 53 movq 40(%rdi),%r9 54 movq 48(%rdi),%r10 55 movq 56(%rdi),%r11 56 jmp .Lloop 57 58.align 16 59.Lloop: 60 movq %rbx,%rdi 61 leaq K512(%rip),%rbp 62 xorq %rcx,%rdi 63 movq 0(%rsi),%r12 64 movq %r8,%r13 65 movq %rax,%r14 66 bswapq %r12 67 rorq $23,%r13 68 movq %r9,%r15 69 70 xorq %r8,%r13 71 rorq $5,%r14 72 xorq %r10,%r15 73 74 movq %r12,0(%rsp) 75 xorq %rax,%r14 76 andq %r8,%r15 77 78 rorq $4,%r13 79 addq %r11,%r12 80 xorq %r10,%r15 81 82 rorq $6,%r14 83 xorq %r8,%r13 84 addq %r15,%r12 85 86 movq %rax,%r15 87 addq (%rbp),%r12 88 xorq %rax,%r14 89 90 xorq %rbx,%r15 91 rorq $14,%r13 92 movq %rbx,%r11 93 94 andq %r15,%rdi 95 rorq $28,%r14 96 addq %r13,%r12 97 98 xorq %rdi,%r11 99 addq %r12,%rdx 100 addq %r12,%r11 101 102 leaq 8(%rbp),%rbp 103 addq %r14,%r11 104 movq 8(%rsi),%r12 105 movq %rdx,%r13 106 movq %r11,%r14 107 bswapq %r12 108 rorq $23,%r13 109 movq %r8,%rdi 110 111 xorq %rdx,%r13 112 rorq $5,%r14 113 xorq %r9,%rdi 114 115 movq %r12,8(%rsp) 116 xorq %r11,%r14 117 andq %rdx,%rdi 118 119 rorq $4,%r13 120 addq %r10,%r12 121 xorq %r9,%rdi 122 123 rorq $6,%r14 124 xorq %rdx,%r13 125 addq %rdi,%r12 126 127 movq %r11,%rdi 128 addq (%rbp),%r12 129 xorq %r11,%r14 130 131 xorq %rax,%rdi 132 rorq $14,%r13 133 movq %rax,%r10 134 135 andq %rdi,%r15 136 rorq $28,%r14 137 addq %r13,%r12 138 139 xorq %r15,%r10 140 addq %r12,%rcx 141 addq %r12,%r10 142 143 leaq 24(%rbp),%rbp 144 addq %r14,%r10 145 movq 16(%rsi),%r12 146 movq %rcx,%r13 147 movq %r10,%r14 148 bswapq %r12 149 rorq $23,%r13 150 movq %rdx,%r15 151 152 xorq %rcx,%r13 153 rorq $5,%r14 154 xorq %r8,%r15 155 156 movq %r12,16(%rsp) 157 xorq %r10,%r14 158 andq %rcx,%r15 159 160 rorq $4,%r13 161 addq %r9,%r12 162 xorq %r8,%r15 163 164 rorq $6,%r14 165 xorq %rcx,%r13 166 addq %r15,%r12 167 168 movq %r10,%r15 169 addq (%rbp),%r12 170 xorq %r10,%r14 171 172 xorq %r11,%r15 173 rorq $14,%r13 174 movq %r11,%r9 175 176 andq %r15,%rdi 177 rorq $28,%r14 178 addq %r13,%r12 179 180 xorq %rdi,%r9 181 addq %r12,%rbx 182 addq %r12,%r9 183 184 leaq 8(%rbp),%rbp 185 addq %r14,%r9 186 movq 24(%rsi),%r12 187 movq %rbx,%r13 188 movq %r9,%r14 189 bswapq %r12 190 rorq $23,%r13 191 movq %rcx,%rdi 192 193 xorq %rbx,%r13 194 rorq $5,%r14 195 xorq %rdx,%rdi 196 197 movq %r12,24(%rsp) 198 xorq %r9,%r14 199 andq %rbx,%rdi 200 201 rorq $4,%r13 202 addq %r8,%r12 203 xorq %rdx,%rdi 204 205 rorq $6,%r14 206 xorq %rbx,%r13 207 addq %rdi,%r12 208 209 movq %r9,%rdi 210 addq (%rbp),%r12 211 xorq %r9,%r14 212 213 xorq %r10,%rdi 214 rorq $14,%r13 215 movq %r10,%r8 216 217 andq %rdi,%r15 218 rorq $28,%r14 219 addq %r13,%r12 220 221 xorq %r15,%r8 222 addq %r12,%rax 223 addq %r12,%r8 224 225 leaq 24(%rbp),%rbp 226 addq %r14,%r8 227 movq 32(%rsi),%r12 228 movq %rax,%r13 229 movq %r8,%r14 230 bswapq %r12 231 rorq $23,%r13 232 movq %rbx,%r15 233 234 xorq %rax,%r13 235 rorq $5,%r14 236 xorq %rcx,%r15 237 238 movq %r12,32(%rsp) 239 xorq %r8,%r14 240 andq %rax,%r15 241 242 rorq $4,%r13 243 addq %rdx,%r12 244 xorq %rcx,%r15 245 246 rorq $6,%r14 247 xorq %rax,%r13 248 addq %r15,%r12 249 250 movq %r8,%r15 251 addq (%rbp),%r12 252 xorq %r8,%r14 253 254 xorq %r9,%r15 255 rorq $14,%r13 256 movq %r9,%rdx 257 258 andq %r15,%rdi 259 rorq $28,%r14 260 addq %r13,%r12 261 262 xorq %rdi,%rdx 263 addq %r12,%r11 264 addq %r12,%rdx 265 266 leaq 8(%rbp),%rbp 267 addq %r14,%rdx 268 movq 40(%rsi),%r12 269 movq %r11,%r13 270 movq %rdx,%r14 271 bswapq %r12 272 rorq $23,%r13 273 movq %rax,%rdi 274 275 xorq %r11,%r13 276 rorq $5,%r14 277 xorq %rbx,%rdi 278 279 movq %r12,40(%rsp) 280 xorq %rdx,%r14 281 andq %r11,%rdi 282 283 rorq $4,%r13 284 addq %rcx,%r12 285 xorq %rbx,%rdi 286 287 rorq $6,%r14 288 xorq %r11,%r13 289 addq %rdi,%r12 290 291 movq %rdx,%rdi 292 addq (%rbp),%r12 293 xorq %rdx,%r14 294 295 xorq %r8,%rdi 296 rorq $14,%r13 297 movq %r8,%rcx 298 299 andq %rdi,%r15 300 rorq $28,%r14 301 addq %r13,%r12 302 303 xorq %r15,%rcx 304 addq %r12,%r10 305 addq %r12,%rcx 306 307 leaq 24(%rbp),%rbp 308 addq %r14,%rcx 309 movq 48(%rsi),%r12 310 movq %r10,%r13 311 movq %rcx,%r14 312 bswapq %r12 313 rorq $23,%r13 314 movq %r11,%r15 315 316 xorq %r10,%r13 317 rorq $5,%r14 318 xorq %rax,%r15 319 320 movq %r12,48(%rsp) 321 xorq %rcx,%r14 322 andq %r10,%r15 323 324 rorq $4,%r13 325 addq %rbx,%r12 326 xorq %rax,%r15 327 328 rorq $6,%r14 329 xorq %r10,%r13 330 addq %r15,%r12 331 332 movq %rcx,%r15 333 addq (%rbp),%r12 334 xorq %rcx,%r14 335 336 xorq %rdx,%r15 337 rorq $14,%r13 338 movq %rdx,%rbx 339 340 andq %r15,%rdi 341 rorq $28,%r14 342 addq %r13,%r12 343 344 xorq %rdi,%rbx 345 addq %r12,%r9 346 addq %r12,%rbx 347 348 leaq 8(%rbp),%rbp 349 addq %r14,%rbx 350 movq 56(%rsi),%r12 351 movq %r9,%r13 352 movq %rbx,%r14 353 bswapq %r12 354 rorq $23,%r13 355 movq %r10,%rdi 356 357 xorq %r9,%r13 358 rorq $5,%r14 359 xorq %r11,%rdi 360 361 movq %r12,56(%rsp) 362 xorq %rbx,%r14 363 andq %r9,%rdi 364 365 rorq $4,%r13 366 addq %rax,%r12 367 xorq %r11,%rdi 368 369 rorq $6,%r14 370 xorq %r9,%r13 371 addq %rdi,%r12 372 373 movq %rbx,%rdi 374 addq (%rbp),%r12 375 xorq %rbx,%r14 376 377 xorq %rcx,%rdi 378 rorq $14,%r13 379 movq %rcx,%rax 380 381 andq %rdi,%r15 382 rorq $28,%r14 383 addq %r13,%r12 384 385 xorq %r15,%rax 386 addq %r12,%r8 387 addq %r12,%rax 388 389 leaq 24(%rbp),%rbp 390 addq %r14,%rax 391 movq 64(%rsi),%r12 392 movq %r8,%r13 393 movq %rax,%r14 394 bswapq %r12 395 rorq $23,%r13 396 movq %r9,%r15 397 398 xorq %r8,%r13 399 rorq $5,%r14 400 xorq %r10,%r15 401 402 movq %r12,64(%rsp) 403 xorq %rax,%r14 404 andq %r8,%r15 405 406 rorq $4,%r13 407 addq %r11,%r12 408 xorq %r10,%r15 409 410 rorq $6,%r14 411 xorq %r8,%r13 412 addq %r15,%r12 413 414 movq %rax,%r15 415 addq (%rbp),%r12 416 xorq %rax,%r14 417 418 xorq %rbx,%r15 419 rorq $14,%r13 420 movq %rbx,%r11 421 422 andq %r15,%rdi 423 rorq $28,%r14 424 addq %r13,%r12 425 426 xorq %rdi,%r11 427 addq %r12,%rdx 428 addq %r12,%r11 429 430 leaq 8(%rbp),%rbp 431 addq %r14,%r11 432 movq 72(%rsi),%r12 433 movq %rdx,%r13 434 movq %r11,%r14 435 bswapq %r12 436 rorq $23,%r13 437 movq %r8,%rdi 438 439 xorq %rdx,%r13 440 rorq $5,%r14 441 xorq %r9,%rdi 442 443 movq %r12,72(%rsp) 444 xorq %r11,%r14 445 andq %rdx,%rdi 446 447 rorq $4,%r13 448 addq %r10,%r12 449 xorq %r9,%rdi 450 451 rorq $6,%r14 452 xorq %rdx,%r13 453 addq %rdi,%r12 454 455 movq %r11,%rdi 456 addq (%rbp),%r12 457 xorq %r11,%r14 458 459 xorq %rax,%rdi 460 rorq $14,%r13 461 movq %rax,%r10 462 463 andq %rdi,%r15 464 rorq $28,%r14 465 addq %r13,%r12 466 467 xorq %r15,%r10 468 addq %r12,%rcx 469 addq %r12,%r10 470 471 leaq 24(%rbp),%rbp 472 addq %r14,%r10 473 movq 80(%rsi),%r12 474 movq %rcx,%r13 475 movq %r10,%r14 476 bswapq %r12 477 rorq $23,%r13 478 movq %rdx,%r15 479 480 xorq %rcx,%r13 481 rorq $5,%r14 482 xorq %r8,%r15 483 484 movq %r12,80(%rsp) 485 xorq %r10,%r14 486 andq %rcx,%r15 487 488 rorq $4,%r13 489 addq %r9,%r12 490 xorq %r8,%r15 491 492 rorq $6,%r14 493 xorq %rcx,%r13 494 addq %r15,%r12 495 496 movq %r10,%r15 497 addq (%rbp),%r12 498 xorq %r10,%r14 499 500 xorq %r11,%r15 501 rorq $14,%r13 502 movq %r11,%r9 503 504 andq %r15,%rdi 505 rorq $28,%r14 506 addq %r13,%r12 507 508 xorq %rdi,%r9 509 addq %r12,%rbx 510 addq %r12,%r9 511 512 leaq 8(%rbp),%rbp 513 addq %r14,%r9 514 movq 88(%rsi),%r12 515 movq %rbx,%r13 516 movq %r9,%r14 517 bswapq %r12 518 rorq $23,%r13 519 movq %rcx,%rdi 520 521 xorq %rbx,%r13 522 rorq $5,%r14 523 xorq %rdx,%rdi 524 525 movq %r12,88(%rsp) 526 xorq %r9,%r14 527 andq %rbx,%rdi 528 529 rorq $4,%r13 530 addq %r8,%r12 531 xorq %rdx,%rdi 532 533 rorq $6,%r14 534 xorq %rbx,%r13 535 addq %rdi,%r12 536 537 movq %r9,%rdi 538 addq (%rbp),%r12 539 xorq %r9,%r14 540 541 xorq %r10,%rdi 542 rorq $14,%r13 543 movq %r10,%r8 544 545 andq %rdi,%r15 546 rorq $28,%r14 547 addq %r13,%r12 548 549 xorq %r15,%r8 550 addq %r12,%rax 551 addq %r12,%r8 552 553 leaq 24(%rbp),%rbp 554 addq %r14,%r8 555 movq 96(%rsi),%r12 556 movq %rax,%r13 557 movq %r8,%r14 558 bswapq %r12 559 rorq $23,%r13 560 movq %rbx,%r15 561 562 xorq %rax,%r13 563 rorq $5,%r14 564 xorq %rcx,%r15 565 566 movq %r12,96(%rsp) 567 xorq %r8,%r14 568 andq %rax,%r15 569 570 rorq $4,%r13 571 addq %rdx,%r12 572 xorq %rcx,%r15 573 574 rorq $6,%r14 575 xorq %rax,%r13 576 addq %r15,%r12 577 578 movq %r8,%r15 579 addq (%rbp),%r12 580 xorq %r8,%r14 581 582 xorq %r9,%r15 583 rorq $14,%r13 584 movq %r9,%rdx 585 586 andq %r15,%rdi 587 rorq $28,%r14 588 addq %r13,%r12 589 590 xorq %rdi,%rdx 591 addq %r12,%r11 592 addq %r12,%rdx 593 594 leaq 8(%rbp),%rbp 595 addq %r14,%rdx 596 movq 104(%rsi),%r12 597 movq %r11,%r13 598 movq %rdx,%r14 599 bswapq %r12 600 rorq $23,%r13 601 movq %rax,%rdi 602 603 xorq %r11,%r13 604 rorq $5,%r14 605 xorq %rbx,%rdi 606 607 movq %r12,104(%rsp) 608 xorq %rdx,%r14 609 andq %r11,%rdi 610 611 rorq $4,%r13 612 addq %rcx,%r12 613 xorq %rbx,%rdi 614 615 rorq $6,%r14 616 xorq %r11,%r13 617 addq %rdi,%r12 618 619 movq %rdx,%rdi 620 addq (%rbp),%r12 621 xorq %rdx,%r14 622 623 xorq %r8,%rdi 624 rorq $14,%r13 625 movq %r8,%rcx 626 627 andq %rdi,%r15 628 rorq $28,%r14 629 addq %r13,%r12 630 631 xorq %r15,%rcx 632 addq %r12,%r10 633 addq %r12,%rcx 634 635 leaq 24(%rbp),%rbp 636 addq %r14,%rcx 637 movq 112(%rsi),%r12 638 movq %r10,%r13 639 movq %rcx,%r14 640 bswapq %r12 641 rorq $23,%r13 642 movq %r11,%r15 643 644 xorq %r10,%r13 645 rorq $5,%r14 646 xorq %rax,%r15 647 648 movq %r12,112(%rsp) 649 xorq %rcx,%r14 650 andq %r10,%r15 651 652 rorq $4,%r13 653 addq %rbx,%r12 654 xorq %rax,%r15 655 656 rorq $6,%r14 657 xorq %r10,%r13 658 addq %r15,%r12 659 660 movq %rcx,%r15 661 addq (%rbp),%r12 662 xorq %rcx,%r14 663 664 xorq %rdx,%r15 665 rorq $14,%r13 666 movq %rdx,%rbx 667 668 andq %r15,%rdi 669 rorq $28,%r14 670 addq %r13,%r12 671 672 xorq %rdi,%rbx 673 addq %r12,%r9 674 addq %r12,%rbx 675 676 leaq 8(%rbp),%rbp 677 addq %r14,%rbx 678 movq 120(%rsi),%r12 679 movq %r9,%r13 680 movq %rbx,%r14 681 bswapq %r12 682 rorq $23,%r13 683 movq %r10,%rdi 684 685 xorq %r9,%r13 686 rorq $5,%r14 687 xorq %r11,%rdi 688 689 movq %r12,120(%rsp) 690 xorq %rbx,%r14 691 andq %r9,%rdi 692 693 rorq $4,%r13 694 addq %rax,%r12 695 xorq %r11,%rdi 696 697 rorq $6,%r14 698 xorq %r9,%r13 699 addq %rdi,%r12 700 701 movq %rbx,%rdi 702 addq (%rbp),%r12 703 xorq %rbx,%r14 704 705 xorq %rcx,%rdi 706 rorq $14,%r13 707 movq %rcx,%rax 708 709 andq %rdi,%r15 710 rorq $28,%r14 711 addq %r13,%r12 712 713 xorq %r15,%rax 714 addq %r12,%r8 715 addq %r12,%rax 716 717 leaq 24(%rbp),%rbp 718 jmp .Lrounds_16_xx 719.align 16 720.Lrounds_16_xx: 721 movq 8(%rsp),%r13 722 movq 112(%rsp),%r15 723 724 movq %r13,%r12 725 rorq $7,%r13 726 addq %r14,%rax 727 movq %r15,%r14 728 rorq $42,%r15 729 730 xorq %r12,%r13 731 shrq $7,%r12 732 rorq $1,%r13 733 xorq %r14,%r15 734 shrq $6,%r14 735 736 rorq $19,%r15 737 xorq %r13,%r12 738 xorq %r14,%r15 739 addq 72(%rsp),%r12 740 741 addq 0(%rsp),%r12 742 movq %r8,%r13 743 addq %r15,%r12 744 movq %rax,%r14 745 rorq $23,%r13 746 movq %r9,%r15 747 748 xorq %r8,%r13 749 rorq $5,%r14 750 xorq %r10,%r15 751 752 movq %r12,0(%rsp) 753 xorq %rax,%r14 754 andq %r8,%r15 755 756 rorq $4,%r13 757 addq %r11,%r12 758 xorq %r10,%r15 759 760 rorq $6,%r14 761 xorq %r8,%r13 762 addq %r15,%r12 763 764 movq %rax,%r15 765 addq (%rbp),%r12 766 xorq %rax,%r14 767 768 xorq %rbx,%r15 769 rorq $14,%r13 770 movq %rbx,%r11 771 772 andq %r15,%rdi 773 rorq $28,%r14 774 addq %r13,%r12 775 776 xorq %rdi,%r11 777 addq %r12,%rdx 778 addq %r12,%r11 779 780 leaq 8(%rbp),%rbp 781 movq 16(%rsp),%r13 782 movq 120(%rsp),%rdi 783 784 movq %r13,%r12 785 rorq $7,%r13 786 addq %r14,%r11 787 movq %rdi,%r14 788 rorq $42,%rdi 789 790 xorq %r12,%r13 791 shrq $7,%r12 792 rorq $1,%r13 793 xorq %r14,%rdi 794 shrq $6,%r14 795 796 rorq $19,%rdi 797 xorq %r13,%r12 798 xorq %r14,%rdi 799 addq 80(%rsp),%r12 800 801 addq 8(%rsp),%r12 802 movq %rdx,%r13 803 addq %rdi,%r12 804 movq %r11,%r14 805 rorq $23,%r13 806 movq %r8,%rdi 807 808 xorq %rdx,%r13 809 rorq $5,%r14 810 xorq %r9,%rdi 811 812 movq %r12,8(%rsp) 813 xorq %r11,%r14 814 andq %rdx,%rdi 815 816 rorq $4,%r13 817 addq %r10,%r12 818 xorq %r9,%rdi 819 820 rorq $6,%r14 821 xorq %rdx,%r13 822 addq %rdi,%r12 823 824 movq %r11,%rdi 825 addq (%rbp),%r12 826 xorq %r11,%r14 827 828 xorq %rax,%rdi 829 rorq $14,%r13 830 movq %rax,%r10 831 832 andq %rdi,%r15 833 rorq $28,%r14 834 addq %r13,%r12 835 836 xorq %r15,%r10 837 addq %r12,%rcx 838 addq %r12,%r10 839 840 leaq 24(%rbp),%rbp 841 movq 24(%rsp),%r13 842 movq 0(%rsp),%r15 843 844 movq %r13,%r12 845 rorq $7,%r13 846 addq %r14,%r10 847 movq %r15,%r14 848 rorq $42,%r15 849 850 xorq %r12,%r13 851 shrq $7,%r12 852 rorq $1,%r13 853 xorq %r14,%r15 854 shrq $6,%r14 855 856 rorq $19,%r15 857 xorq %r13,%r12 858 xorq %r14,%r15 859 addq 88(%rsp),%r12 860 861 addq 16(%rsp),%r12 862 movq %rcx,%r13 863 addq %r15,%r12 864 movq %r10,%r14 865 rorq $23,%r13 866 movq %rdx,%r15 867 868 xorq %rcx,%r13 869 rorq $5,%r14 870 xorq %r8,%r15 871 872 movq %r12,16(%rsp) 873 xorq %r10,%r14 874 andq %rcx,%r15 875 876 rorq $4,%r13 877 addq %r9,%r12 878 xorq %r8,%r15 879 880 rorq $6,%r14 881 xorq %rcx,%r13 882 addq %r15,%r12 883 884 movq %r10,%r15 885 addq (%rbp),%r12 886 xorq %r10,%r14 887 888 xorq %r11,%r15 889 rorq $14,%r13 890 movq %r11,%r9 891 892 andq %r15,%rdi 893 rorq $28,%r14 894 addq %r13,%r12 895 896 xorq %rdi,%r9 897 addq %r12,%rbx 898 addq %r12,%r9 899 900 leaq 8(%rbp),%rbp 901 movq 32(%rsp),%r13 902 movq 8(%rsp),%rdi 903 904 movq %r13,%r12 905 rorq $7,%r13 906 addq %r14,%r9 907 movq %rdi,%r14 908 rorq $42,%rdi 909 910 xorq %r12,%r13 911 shrq $7,%r12 912 rorq $1,%r13 913 xorq %r14,%rdi 914 shrq $6,%r14 915 916 rorq $19,%rdi 917 xorq %r13,%r12 918 xorq %r14,%rdi 919 addq 96(%rsp),%r12 920 921 addq 24(%rsp),%r12 922 movq %rbx,%r13 923 addq %rdi,%r12 924 movq %r9,%r14 925 rorq $23,%r13 926 movq %rcx,%rdi 927 928 xorq %rbx,%r13 929 rorq $5,%r14 930 xorq %rdx,%rdi 931 932 movq %r12,24(%rsp) 933 xorq %r9,%r14 934 andq %rbx,%rdi 935 936 rorq $4,%r13 937 addq %r8,%r12 938 xorq %rdx,%rdi 939 940 rorq $6,%r14 941 xorq %rbx,%r13 942 addq %rdi,%r12 943 944 movq %r9,%rdi 945 addq (%rbp),%r12 946 xorq %r9,%r14 947 948 xorq %r10,%rdi 949 rorq $14,%r13 950 movq %r10,%r8 951 952 andq %rdi,%r15 953 rorq $28,%r14 954 addq %r13,%r12 955 956 xorq %r15,%r8 957 addq %r12,%rax 958 addq %r12,%r8 959 960 leaq 24(%rbp),%rbp 961 movq 40(%rsp),%r13 962 movq 16(%rsp),%r15 963 964 movq %r13,%r12 965 rorq $7,%r13 966 addq %r14,%r8 967 movq %r15,%r14 968 rorq $42,%r15 969 970 xorq %r12,%r13 971 shrq $7,%r12 972 rorq $1,%r13 973 xorq %r14,%r15 974 shrq $6,%r14 975 976 rorq $19,%r15 977 xorq %r13,%r12 978 xorq %r14,%r15 979 addq 104(%rsp),%r12 980 981 addq 32(%rsp),%r12 982 movq %rax,%r13 983 addq %r15,%r12 984 movq %r8,%r14 985 rorq $23,%r13 986 movq %rbx,%r15 987 988 xorq %rax,%r13 989 rorq $5,%r14 990 xorq %rcx,%r15 991 992 movq %r12,32(%rsp) 993 xorq %r8,%r14 994 andq %rax,%r15 995 996 rorq $4,%r13 997 addq %rdx,%r12 998 xorq %rcx,%r15 999 1000 rorq $6,%r14 1001 xorq %rax,%r13 1002 addq %r15,%r12 1003 1004 movq %r8,%r15 1005 addq (%rbp),%r12 1006 xorq %r8,%r14 1007 1008 xorq %r9,%r15 1009 rorq $14,%r13 1010 movq %r9,%rdx 1011 1012 andq %r15,%rdi 1013 rorq $28,%r14 1014 addq %r13,%r12 1015 1016 xorq %rdi,%rdx 1017 addq %r12,%r11 1018 addq %r12,%rdx 1019 1020 leaq 8(%rbp),%rbp 1021 movq 48(%rsp),%r13 1022 movq 24(%rsp),%rdi 1023 1024 movq %r13,%r12 1025 rorq $7,%r13 1026 addq %r14,%rdx 1027 movq %rdi,%r14 1028 rorq $42,%rdi 1029 1030 xorq %r12,%r13 1031 shrq $7,%r12 1032 rorq $1,%r13 1033 xorq %r14,%rdi 1034 shrq $6,%r14 1035 1036 rorq $19,%rdi 1037 xorq %r13,%r12 1038 xorq %r14,%rdi 1039 addq 112(%rsp),%r12 1040 1041 addq 40(%rsp),%r12 1042 movq %r11,%r13 1043 addq %rdi,%r12 1044 movq %rdx,%r14 1045 rorq $23,%r13 1046 movq %rax,%rdi 1047 1048 xorq %r11,%r13 1049 rorq $5,%r14 1050 xorq %rbx,%rdi 1051 1052 movq %r12,40(%rsp) 1053 xorq %rdx,%r14 1054 andq %r11,%rdi 1055 1056 rorq $4,%r13 1057 addq %rcx,%r12 1058 xorq %rbx,%rdi 1059 1060 rorq $6,%r14 1061 xorq %r11,%r13 1062 addq %rdi,%r12 1063 1064 movq %rdx,%rdi 1065 addq (%rbp),%r12 1066 xorq %rdx,%r14 1067 1068 xorq %r8,%rdi 1069 rorq $14,%r13 1070 movq %r8,%rcx 1071 1072 andq %rdi,%r15 1073 rorq $28,%r14 1074 addq %r13,%r12 1075 1076 xorq %r15,%rcx 1077 addq %r12,%r10 1078 addq %r12,%rcx 1079 1080 leaq 24(%rbp),%rbp 1081 movq 56(%rsp),%r13 1082 movq 32(%rsp),%r15 1083 1084 movq %r13,%r12 1085 rorq $7,%r13 1086 addq %r14,%rcx 1087 movq %r15,%r14 1088 rorq $42,%r15 1089 1090 xorq %r12,%r13 1091 shrq $7,%r12 1092 rorq $1,%r13 1093 xorq %r14,%r15 1094 shrq $6,%r14 1095 1096 rorq $19,%r15 1097 xorq %r13,%r12 1098 xorq %r14,%r15 1099 addq 120(%rsp),%r12 1100 1101 addq 48(%rsp),%r12 1102 movq %r10,%r13 1103 addq %r15,%r12 1104 movq %rcx,%r14 1105 rorq $23,%r13 1106 movq %r11,%r15 1107 1108 xorq %r10,%r13 1109 rorq $5,%r14 1110 xorq %rax,%r15 1111 1112 movq %r12,48(%rsp) 1113 xorq %rcx,%r14 1114 andq %r10,%r15 1115 1116 rorq $4,%r13 1117 addq %rbx,%r12 1118 xorq %rax,%r15 1119 1120 rorq $6,%r14 1121 xorq %r10,%r13 1122 addq %r15,%r12 1123 1124 movq %rcx,%r15 1125 addq (%rbp),%r12 1126 xorq %rcx,%r14 1127 1128 xorq %rdx,%r15 1129 rorq $14,%r13 1130 movq %rdx,%rbx 1131 1132 andq %r15,%rdi 1133 rorq $28,%r14 1134 addq %r13,%r12 1135 1136 xorq %rdi,%rbx 1137 addq %r12,%r9 1138 addq %r12,%rbx 1139 1140 leaq 8(%rbp),%rbp 1141 movq 64(%rsp),%r13 1142 movq 40(%rsp),%rdi 1143 1144 movq %r13,%r12 1145 rorq $7,%r13 1146 addq %r14,%rbx 1147 movq %rdi,%r14 1148 rorq $42,%rdi 1149 1150 xorq %r12,%r13 1151 shrq $7,%r12 1152 rorq $1,%r13 1153 xorq %r14,%rdi 1154 shrq $6,%r14 1155 1156 rorq $19,%rdi 1157 xorq %r13,%r12 1158 xorq %r14,%rdi 1159 addq 0(%rsp),%r12 1160 1161 addq 56(%rsp),%r12 1162 movq %r9,%r13 1163 addq %rdi,%r12 1164 movq %rbx,%r14 1165 rorq $23,%r13 1166 movq %r10,%rdi 1167 1168 xorq %r9,%r13 1169 rorq $5,%r14 1170 xorq %r11,%rdi 1171 1172 movq %r12,56(%rsp) 1173 xorq %rbx,%r14 1174 andq %r9,%rdi 1175 1176 rorq $4,%r13 1177 addq %rax,%r12 1178 xorq %r11,%rdi 1179 1180 rorq $6,%r14 1181 xorq %r9,%r13 1182 addq %rdi,%r12 1183 1184 movq %rbx,%rdi 1185 addq (%rbp),%r12 1186 xorq %rbx,%r14 1187 1188 xorq %rcx,%rdi 1189 rorq $14,%r13 1190 movq %rcx,%rax 1191 1192 andq %rdi,%r15 1193 rorq $28,%r14 1194 addq %r13,%r12 1195 1196 xorq %r15,%rax 1197 addq %r12,%r8 1198 addq %r12,%rax 1199 1200 leaq 24(%rbp),%rbp 1201 movq 72(%rsp),%r13 1202 movq 48(%rsp),%r15 1203 1204 movq %r13,%r12 1205 rorq $7,%r13 1206 addq %r14,%rax 1207 movq %r15,%r14 1208 rorq $42,%r15 1209 1210 xorq %r12,%r13 1211 shrq $7,%r12 1212 rorq $1,%r13 1213 xorq %r14,%r15 1214 shrq $6,%r14 1215 1216 rorq $19,%r15 1217 xorq %r13,%r12 1218 xorq %r14,%r15 1219 addq 8(%rsp),%r12 1220 1221 addq 64(%rsp),%r12 1222 movq %r8,%r13 1223 addq %r15,%r12 1224 movq %rax,%r14 1225 rorq $23,%r13 1226 movq %r9,%r15 1227 1228 xorq %r8,%r13 1229 rorq $5,%r14 1230 xorq %r10,%r15 1231 1232 movq %r12,64(%rsp) 1233 xorq %rax,%r14 1234 andq %r8,%r15 1235 1236 rorq $4,%r13 1237 addq %r11,%r12 1238 xorq %r10,%r15 1239 1240 rorq $6,%r14 1241 xorq %r8,%r13 1242 addq %r15,%r12 1243 1244 movq %rax,%r15 1245 addq (%rbp),%r12 1246 xorq %rax,%r14 1247 1248 xorq %rbx,%r15 1249 rorq $14,%r13 1250 movq %rbx,%r11 1251 1252 andq %r15,%rdi 1253 rorq $28,%r14 1254 addq %r13,%r12 1255 1256 xorq %rdi,%r11 1257 addq %r12,%rdx 1258 addq %r12,%r11 1259 1260 leaq 8(%rbp),%rbp 1261 movq 80(%rsp),%r13 1262 movq 56(%rsp),%rdi 1263 1264 movq %r13,%r12 1265 rorq $7,%r13 1266 addq %r14,%r11 1267 movq %rdi,%r14 1268 rorq $42,%rdi 1269 1270 xorq %r12,%r13 1271 shrq $7,%r12 1272 rorq $1,%r13 1273 xorq %r14,%rdi 1274 shrq $6,%r14 1275 1276 rorq $19,%rdi 1277 xorq %r13,%r12 1278 xorq %r14,%rdi 1279 addq 16(%rsp),%r12 1280 1281 addq 72(%rsp),%r12 1282 movq %rdx,%r13 1283 addq %rdi,%r12 1284 movq %r11,%r14 1285 rorq $23,%r13 1286 movq %r8,%rdi 1287 1288 xorq %rdx,%r13 1289 rorq $5,%r14 1290 xorq %r9,%rdi 1291 1292 movq %r12,72(%rsp) 1293 xorq %r11,%r14 1294 andq %rdx,%rdi 1295 1296 rorq $4,%r13 1297 addq %r10,%r12 1298 xorq %r9,%rdi 1299 1300 rorq $6,%r14 1301 xorq %rdx,%r13 1302 addq %rdi,%r12 1303 1304 movq %r11,%rdi 1305 addq (%rbp),%r12 1306 xorq %r11,%r14 1307 1308 xorq %rax,%rdi 1309 rorq $14,%r13 1310 movq %rax,%r10 1311 1312 andq %rdi,%r15 1313 rorq $28,%r14 1314 addq %r13,%r12 1315 1316 xorq %r15,%r10 1317 addq %r12,%rcx 1318 addq %r12,%r10 1319 1320 leaq 24(%rbp),%rbp 1321 movq 88(%rsp),%r13 1322 movq 64(%rsp),%r15 1323 1324 movq %r13,%r12 1325 rorq $7,%r13 1326 addq %r14,%r10 1327 movq %r15,%r14 1328 rorq $42,%r15 1329 1330 xorq %r12,%r13 1331 shrq $7,%r12 1332 rorq $1,%r13 1333 xorq %r14,%r15 1334 shrq $6,%r14 1335 1336 rorq $19,%r15 1337 xorq %r13,%r12 1338 xorq %r14,%r15 1339 addq 24(%rsp),%r12 1340 1341 addq 80(%rsp),%r12 1342 movq %rcx,%r13 1343 addq %r15,%r12 1344 movq %r10,%r14 1345 rorq $23,%r13 1346 movq %rdx,%r15 1347 1348 xorq %rcx,%r13 1349 rorq $5,%r14 1350 xorq %r8,%r15 1351 1352 movq %r12,80(%rsp) 1353 xorq %r10,%r14 1354 andq %rcx,%r15 1355 1356 rorq $4,%r13 1357 addq %r9,%r12 1358 xorq %r8,%r15 1359 1360 rorq $6,%r14 1361 xorq %rcx,%r13 1362 addq %r15,%r12 1363 1364 movq %r10,%r15 1365 addq (%rbp),%r12 1366 xorq %r10,%r14 1367 1368 xorq %r11,%r15 1369 rorq $14,%r13 1370 movq %r11,%r9 1371 1372 andq %r15,%rdi 1373 rorq $28,%r14 1374 addq %r13,%r12 1375 1376 xorq %rdi,%r9 1377 addq %r12,%rbx 1378 addq %r12,%r9 1379 1380 leaq 8(%rbp),%rbp 1381 movq 96(%rsp),%r13 1382 movq 72(%rsp),%rdi 1383 1384 movq %r13,%r12 1385 rorq $7,%r13 1386 addq %r14,%r9 1387 movq %rdi,%r14 1388 rorq $42,%rdi 1389 1390 xorq %r12,%r13 1391 shrq $7,%r12 1392 rorq $1,%r13 1393 xorq %r14,%rdi 1394 shrq $6,%r14 1395 1396 rorq $19,%rdi 1397 xorq %r13,%r12 1398 xorq %r14,%rdi 1399 addq 32(%rsp),%r12 1400 1401 addq 88(%rsp),%r12 1402 movq %rbx,%r13 1403 addq %rdi,%r12 1404 movq %r9,%r14 1405 rorq $23,%r13 1406 movq %rcx,%rdi 1407 1408 xorq %rbx,%r13 1409 rorq $5,%r14 1410 xorq %rdx,%rdi 1411 1412 movq %r12,88(%rsp) 1413 xorq %r9,%r14 1414 andq %rbx,%rdi 1415 1416 rorq $4,%r13 1417 addq %r8,%r12 1418 xorq %rdx,%rdi 1419 1420 rorq $6,%r14 1421 xorq %rbx,%r13 1422 addq %rdi,%r12 1423 1424 movq %r9,%rdi 1425 addq (%rbp),%r12 1426 xorq %r9,%r14 1427 1428 xorq %r10,%rdi 1429 rorq $14,%r13 1430 movq %r10,%r8 1431 1432 andq %rdi,%r15 1433 rorq $28,%r14 1434 addq %r13,%r12 1435 1436 xorq %r15,%r8 1437 addq %r12,%rax 1438 addq %r12,%r8 1439 1440 leaq 24(%rbp),%rbp 1441 movq 104(%rsp),%r13 1442 movq 80(%rsp),%r15 1443 1444 movq %r13,%r12 1445 rorq $7,%r13 1446 addq %r14,%r8 1447 movq %r15,%r14 1448 rorq $42,%r15 1449 1450 xorq %r12,%r13 1451 shrq $7,%r12 1452 rorq $1,%r13 1453 xorq %r14,%r15 1454 shrq $6,%r14 1455 1456 rorq $19,%r15 1457 xorq %r13,%r12 1458 xorq %r14,%r15 1459 addq 40(%rsp),%r12 1460 1461 addq 96(%rsp),%r12 1462 movq %rax,%r13 1463 addq %r15,%r12 1464 movq %r8,%r14 1465 rorq $23,%r13 1466 movq %rbx,%r15 1467 1468 xorq %rax,%r13 1469 rorq $5,%r14 1470 xorq %rcx,%r15 1471 1472 movq %r12,96(%rsp) 1473 xorq %r8,%r14 1474 andq %rax,%r15 1475 1476 rorq $4,%r13 1477 addq %rdx,%r12 1478 xorq %rcx,%r15 1479 1480 rorq $6,%r14 1481 xorq %rax,%r13 1482 addq %r15,%r12 1483 1484 movq %r8,%r15 1485 addq (%rbp),%r12 1486 xorq %r8,%r14 1487 1488 xorq %r9,%r15 1489 rorq $14,%r13 1490 movq %r9,%rdx 1491 1492 andq %r15,%rdi 1493 rorq $28,%r14 1494 addq %r13,%r12 1495 1496 xorq %rdi,%rdx 1497 addq %r12,%r11 1498 addq %r12,%rdx 1499 1500 leaq 8(%rbp),%rbp 1501 movq 112(%rsp),%r13 1502 movq 88(%rsp),%rdi 1503 1504 movq %r13,%r12 1505 rorq $7,%r13 1506 addq %r14,%rdx 1507 movq %rdi,%r14 1508 rorq $42,%rdi 1509 1510 xorq %r12,%r13 1511 shrq $7,%r12 1512 rorq $1,%r13 1513 xorq %r14,%rdi 1514 shrq $6,%r14 1515 1516 rorq $19,%rdi 1517 xorq %r13,%r12 1518 xorq %r14,%rdi 1519 addq 48(%rsp),%r12 1520 1521 addq 104(%rsp),%r12 1522 movq %r11,%r13 1523 addq %rdi,%r12 1524 movq %rdx,%r14 1525 rorq $23,%r13 1526 movq %rax,%rdi 1527 1528 xorq %r11,%r13 1529 rorq $5,%r14 1530 xorq %rbx,%rdi 1531 1532 movq %r12,104(%rsp) 1533 xorq %rdx,%r14 1534 andq %r11,%rdi 1535 1536 rorq $4,%r13 1537 addq %rcx,%r12 1538 xorq %rbx,%rdi 1539 1540 rorq $6,%r14 1541 xorq %r11,%r13 1542 addq %rdi,%r12 1543 1544 movq %rdx,%rdi 1545 addq (%rbp),%r12 1546 xorq %rdx,%r14 1547 1548 xorq %r8,%rdi 1549 rorq $14,%r13 1550 movq %r8,%rcx 1551 1552 andq %rdi,%r15 1553 rorq $28,%r14 1554 addq %r13,%r12 1555 1556 xorq %r15,%rcx 1557 addq %r12,%r10 1558 addq %r12,%rcx 1559 1560 leaq 24(%rbp),%rbp 1561 movq 120(%rsp),%r13 1562 movq 96(%rsp),%r15 1563 1564 movq %r13,%r12 1565 rorq $7,%r13 1566 addq %r14,%rcx 1567 movq %r15,%r14 1568 rorq $42,%r15 1569 1570 xorq %r12,%r13 1571 shrq $7,%r12 1572 rorq $1,%r13 1573 xorq %r14,%r15 1574 shrq $6,%r14 1575 1576 rorq $19,%r15 1577 xorq %r13,%r12 1578 xorq %r14,%r15 1579 addq 56(%rsp),%r12 1580 1581 addq 112(%rsp),%r12 1582 movq %r10,%r13 1583 addq %r15,%r12 1584 movq %rcx,%r14 1585 rorq $23,%r13 1586 movq %r11,%r15 1587 1588 xorq %r10,%r13 1589 rorq $5,%r14 1590 xorq %rax,%r15 1591 1592 movq %r12,112(%rsp) 1593 xorq %rcx,%r14 1594 andq %r10,%r15 1595 1596 rorq $4,%r13 1597 addq %rbx,%r12 1598 xorq %rax,%r15 1599 1600 rorq $6,%r14 1601 xorq %r10,%r13 1602 addq %r15,%r12 1603 1604 movq %rcx,%r15 1605 addq (%rbp),%r12 1606 xorq %rcx,%r14 1607 1608 xorq %rdx,%r15 1609 rorq $14,%r13 1610 movq %rdx,%rbx 1611 1612 andq %r15,%rdi 1613 rorq $28,%r14 1614 addq %r13,%r12 1615 1616 xorq %rdi,%rbx 1617 addq %r12,%r9 1618 addq %r12,%rbx 1619 1620 leaq 8(%rbp),%rbp 1621 movq 0(%rsp),%r13 1622 movq 104(%rsp),%rdi 1623 1624 movq %r13,%r12 1625 rorq $7,%r13 1626 addq %r14,%rbx 1627 movq %rdi,%r14 1628 rorq $42,%rdi 1629 1630 xorq %r12,%r13 1631 shrq $7,%r12 1632 rorq $1,%r13 1633 xorq %r14,%rdi 1634 shrq $6,%r14 1635 1636 rorq $19,%rdi 1637 xorq %r13,%r12 1638 xorq %r14,%rdi 1639 addq 64(%rsp),%r12 1640 1641 addq 120(%rsp),%r12 1642 movq %r9,%r13 1643 addq %rdi,%r12 1644 movq %rbx,%r14 1645 rorq $23,%r13 1646 movq %r10,%rdi 1647 1648 xorq %r9,%r13 1649 rorq $5,%r14 1650 xorq %r11,%rdi 1651 1652 movq %r12,120(%rsp) 1653 xorq %rbx,%r14 1654 andq %r9,%rdi 1655 1656 rorq $4,%r13 1657 addq %rax,%r12 1658 xorq %r11,%rdi 1659 1660 rorq $6,%r14 1661 xorq %r9,%r13 1662 addq %rdi,%r12 1663 1664 movq %rbx,%rdi 1665 addq (%rbp),%r12 1666 xorq %rbx,%r14 1667 1668 xorq %rcx,%rdi 1669 rorq $14,%r13 1670 movq %rcx,%rax 1671 1672 andq %rdi,%r15 1673 rorq $28,%r14 1674 addq %r13,%r12 1675 1676 xorq %r15,%rax 1677 addq %r12,%r8 1678 addq %r12,%rax 1679 1680 leaq 24(%rbp),%rbp 1681 cmpb $0,7(%rbp) 1682 jnz .Lrounds_16_xx 1683 1684 movq 128+0(%rsp),%rdi 1685 addq %r14,%rax 1686 leaq 128(%rsi),%rsi 1687 1688 addq 0(%rdi),%rax 1689 addq 8(%rdi),%rbx 1690 addq 16(%rdi),%rcx 1691 addq 24(%rdi),%rdx 1692 addq 32(%rdi),%r8 1693 addq 40(%rdi),%r9 1694 addq 48(%rdi),%r10 1695 addq 56(%rdi),%r11 1696 1697 cmpq 128+16(%rsp),%rsi 1698 1699 movq %rax,0(%rdi) 1700 movq %rbx,8(%rdi) 1701 movq %rcx,16(%rdi) 1702 movq %rdx,24(%rdi) 1703 movq %r8,32(%rdi) 1704 movq %r9,40(%rdi) 1705 movq %r10,48(%rdi) 1706 movq %r11,56(%rdi) 1707 jb .Lloop 1708 1709 movq 152(%rsp),%rsi 1710.cfi_def_cfa %rsi,8 1711 movq -48(%rsi),%r15 1712.cfi_restore %r15 1713 movq -40(%rsi),%r14 1714.cfi_restore %r14 1715 movq -32(%rsi),%r13 1716.cfi_restore %r13 1717 movq -24(%rsi),%r12 1718.cfi_restore %r12 1719 movq -16(%rsi),%rbp 1720.cfi_restore %rbp 1721 movq -8(%rsi),%rbx 1722.cfi_restore %rbx 1723 leaq (%rsi),%rsp 1724.cfi_def_cfa_register %rsp 1725.Lepilogue: 1726 .byte 0xf3,0xc3 1727.cfi_endproc 1728.size sha512_block_data_order,.-sha512_block_data_order 1729.align 64 1730.type K512,@object 1731K512: 1732.quad 0x428a2f98d728ae22,0x7137449123ef65cd 1733.quad 0x428a2f98d728ae22,0x7137449123ef65cd 1734.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc 1735.quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc 1736.quad 0x3956c25bf348b538,0x59f111f1b605d019 1737.quad 0x3956c25bf348b538,0x59f111f1b605d019 1738.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 1739.quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118 1740.quad 0xd807aa98a3030242,0x12835b0145706fbe 1741.quad 0xd807aa98a3030242,0x12835b0145706fbe 1742.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 1743.quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2 1744.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 1745.quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1 1746.quad 0x9bdc06a725c71235,0xc19bf174cf692694 1747.quad 0x9bdc06a725c71235,0xc19bf174cf692694 1748.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 1749.quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3 1750.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 1751.quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65 1752.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 1753.quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483 1754.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 1755.quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5 1756.quad 0x983e5152ee66dfab,0xa831c66d2db43210 1757.quad 0x983e5152ee66dfab,0xa831c66d2db43210 1758.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 1759.quad 0xb00327c898fb213f,0xbf597fc7beef0ee4 1760.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 1761.quad 0xc6e00bf33da88fc2,0xd5a79147930aa725 1762.quad 0x06ca6351e003826f,0x142929670a0e6e70 1763.quad 0x06ca6351e003826f,0x142929670a0e6e70 1764.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 1765.quad 0x27b70a8546d22ffc,0x2e1b21385c26c926 1766.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df 1767.quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df 1768.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 1769.quad 0x650a73548baf63de,0x766a0abb3c77b2a8 1770.quad 0x81c2c92e47edaee6,0x92722c851482353b 1771.quad 0x81c2c92e47edaee6,0x92722c851482353b 1772.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 1773.quad 0xa2bfe8a14cf10364,0xa81a664bbc423001 1774.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 1775.quad 0xc24b8b70d0f89791,0xc76c51a30654be30 1776.quad 0xd192e819d6ef5218,0xd69906245565a910 1777.quad 0xd192e819d6ef5218,0xd69906245565a910 1778.quad 0xf40e35855771202a,0x106aa07032bbd1b8 1779.quad 0xf40e35855771202a,0x106aa07032bbd1b8 1780.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 1781.quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53 1782.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 1783.quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8 1784.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb 1785.quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb 1786.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 1787.quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3 1788.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 1789.quad 0x748f82ee5defb2fc,0x78a5636f43172f60 1790.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec 1791.quad 0x84c87814a1f0ab72,0x8cc702081a6439ec 1792.quad 0x90befffa23631e28,0xa4506cebde82bde9 1793.quad 0x90befffa23631e28,0xa4506cebde82bde9 1794.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b 1795.quad 0xbef9a3f7b2c67915,0xc67178f2e372532b 1796.quad 0xca273eceea26619c,0xd186b8c721c0c207 1797.quad 0xca273eceea26619c,0xd186b8c721c0c207 1798.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 1799.quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178 1800.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 1801.quad 0x06f067aa72176fba,0x0a637dc5a2c898a6 1802.quad 0x113f9804bef90dae,0x1b710b35131c471b 1803.quad 0x113f9804bef90dae,0x1b710b35131c471b 1804.quad 0x28db77f523047d84,0x32caab7b40c72493 1805.quad 0x28db77f523047d84,0x32caab7b40c72493 1806.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c 1807.quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c 1808.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a 1809.quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a 1810.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 1811.quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817 1812 1813.quad 0x0001020304050607,0x08090a0b0c0d0e0f 1814.quad 0x0001020304050607,0x08090a0b0c0d0e0f 1815.byte 83,72,65,53,49,50,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 1816.type sha512_block_data_order_xop,@function 1817.align 64 1818sha512_block_data_order_xop: 1819.cfi_startproc 1820.Lxop_shortcut: 1821 movq %rsp,%rax 1822.cfi_def_cfa_register %rax 1823 pushq %rbx 1824.cfi_offset %rbx,-16 1825 pushq %rbp 1826.cfi_offset %rbp,-24 1827 pushq %r12 1828.cfi_offset %r12,-32 1829 pushq %r13 1830.cfi_offset %r13,-40 1831 pushq %r14 1832.cfi_offset %r14,-48 1833 pushq %r15 1834.cfi_offset %r15,-56 1835 shlq $4,%rdx 1836 subq $160,%rsp 1837 leaq (%rsi,%rdx,8),%rdx 1838 andq $-64,%rsp 1839 movq %rdi,128+0(%rsp) 1840 movq %rsi,128+8(%rsp) 1841 movq %rdx,128+16(%rsp) 1842 movq %rax,152(%rsp) 1843.cfi_escape 0x0f,0x06,0x77,0x98,0x01,0x06,0x23,0x08 1844.Lprologue_xop: 1845 1846 vzeroupper 1847 movq 0(%rdi),%rax 1848 movq 8(%rdi),%rbx 1849 movq 16(%rdi),%rcx 1850 movq 24(%rdi),%rdx 1851 movq 32(%rdi),%r8 1852 movq 40(%rdi),%r9 1853 movq 48(%rdi),%r10 1854 movq 56(%rdi),%r11 1855 jmp .Lloop_xop 1856.align 16 1857.Lloop_xop: 1858 vmovdqa K512+1280(%rip),%xmm11 1859 vmovdqu 0(%rsi),%xmm0 1860 leaq K512+128(%rip),%rbp 1861 vmovdqu 16(%rsi),%xmm1 1862 vmovdqu 32(%rsi),%xmm2 1863 vpshufb %xmm11,%xmm0,%xmm0 1864 vmovdqu 48(%rsi),%xmm3 1865 vpshufb %xmm11,%xmm1,%xmm1 1866 vmovdqu 64(%rsi),%xmm4 1867 vpshufb %xmm11,%xmm2,%xmm2 1868 vmovdqu 80(%rsi),%xmm5 1869 vpshufb %xmm11,%xmm3,%xmm3 1870 vmovdqu 96(%rsi),%xmm6 1871 vpshufb %xmm11,%xmm4,%xmm4 1872 vmovdqu 112(%rsi),%xmm7 1873 vpshufb %xmm11,%xmm5,%xmm5 1874 vpaddq -128(%rbp),%xmm0,%xmm8 1875 vpshufb %xmm11,%xmm6,%xmm6 1876 vpaddq -96(%rbp),%xmm1,%xmm9 1877 vpshufb %xmm11,%xmm7,%xmm7 1878 vpaddq -64(%rbp),%xmm2,%xmm10 1879 vpaddq -32(%rbp),%xmm3,%xmm11 1880 vmovdqa %xmm8,0(%rsp) 1881 vpaddq 0(%rbp),%xmm4,%xmm8 1882 vmovdqa %xmm9,16(%rsp) 1883 vpaddq 32(%rbp),%xmm5,%xmm9 1884 vmovdqa %xmm10,32(%rsp) 1885 vpaddq 64(%rbp),%xmm6,%xmm10 1886 vmovdqa %xmm11,48(%rsp) 1887 vpaddq 96(%rbp),%xmm7,%xmm11 1888 vmovdqa %xmm8,64(%rsp) 1889 movq %rax,%r14 1890 vmovdqa %xmm9,80(%rsp) 1891 movq %rbx,%rdi 1892 vmovdqa %xmm10,96(%rsp) 1893 xorq %rcx,%rdi 1894 vmovdqa %xmm11,112(%rsp) 1895 movq %r8,%r13 1896 jmp .Lxop_00_47 1897 1898.align 16 1899.Lxop_00_47: 1900 addq $256,%rbp 1901 vpalignr $8,%xmm0,%xmm1,%xmm8 1902 rorq $23,%r13 1903 movq %r14,%rax 1904 vpalignr $8,%xmm4,%xmm5,%xmm11 1905 movq %r9,%r12 1906 rorq $5,%r14 1907.byte 143,72,120,195,200,56 1908 xorq %r8,%r13 1909 xorq %r10,%r12 1910 vpsrlq $7,%xmm8,%xmm8 1911 rorq $4,%r13 1912 xorq %rax,%r14 1913 vpaddq %xmm11,%xmm0,%xmm0 1914 andq %r8,%r12 1915 xorq %r8,%r13 1916 addq 0(%rsp),%r11 1917 movq %rax,%r15 1918.byte 143,72,120,195,209,7 1919 xorq %r10,%r12 1920 rorq $6,%r14 1921 vpxor %xmm9,%xmm8,%xmm8 1922 xorq %rbx,%r15 1923 addq %r12,%r11 1924 rorq $14,%r13 1925 andq %r15,%rdi 1926.byte 143,104,120,195,223,3 1927 xorq %rax,%r14 1928 addq %r13,%r11 1929 vpxor %xmm10,%xmm8,%xmm8 1930 xorq %rbx,%rdi 1931 rorq $28,%r14 1932 vpsrlq $6,%xmm7,%xmm10 1933 addq %r11,%rdx 1934 addq %rdi,%r11 1935 vpaddq %xmm8,%xmm0,%xmm0 1936 movq %rdx,%r13 1937 addq %r11,%r14 1938.byte 143,72,120,195,203,42 1939 rorq $23,%r13 1940 movq %r14,%r11 1941 vpxor %xmm10,%xmm11,%xmm11 1942 movq %r8,%r12 1943 rorq $5,%r14 1944 xorq %rdx,%r13 1945 xorq %r9,%r12 1946 vpxor %xmm9,%xmm11,%xmm11 1947 rorq $4,%r13 1948 xorq %r11,%r14 1949 andq %rdx,%r12 1950 xorq %rdx,%r13 1951 vpaddq %xmm11,%xmm0,%xmm0 1952 addq 8(%rsp),%r10 1953 movq %r11,%rdi 1954 xorq %r9,%r12 1955 rorq $6,%r14 1956 vpaddq -128(%rbp),%xmm0,%xmm10 1957 xorq %rax,%rdi 1958 addq %r12,%r10 1959 rorq $14,%r13 1960 andq %rdi,%r15 1961 xorq %r11,%r14 1962 addq %r13,%r10 1963 xorq %rax,%r15 1964 rorq $28,%r14 1965 addq %r10,%rcx 1966 addq %r15,%r10 1967 movq %rcx,%r13 1968 addq %r10,%r14 1969 vmovdqa %xmm10,0(%rsp) 1970 vpalignr $8,%xmm1,%xmm2,%xmm8 1971 rorq $23,%r13 1972 movq %r14,%r10 1973 vpalignr $8,%xmm5,%xmm6,%xmm11 1974 movq %rdx,%r12 1975 rorq $5,%r14 1976.byte 143,72,120,195,200,56 1977 xorq %rcx,%r13 1978 xorq %r8,%r12 1979 vpsrlq $7,%xmm8,%xmm8 1980 rorq $4,%r13 1981 xorq %r10,%r14 1982 vpaddq %xmm11,%xmm1,%xmm1 1983 andq %rcx,%r12 1984 xorq %rcx,%r13 1985 addq 16(%rsp),%r9 1986 movq %r10,%r15 1987.byte 143,72,120,195,209,7 1988 xorq %r8,%r12 1989 rorq $6,%r14 1990 vpxor %xmm9,%xmm8,%xmm8 1991 xorq %r11,%r15 1992 addq %r12,%r9 1993 rorq $14,%r13 1994 andq %r15,%rdi 1995.byte 143,104,120,195,216,3 1996 xorq %r10,%r14 1997 addq %r13,%r9 1998 vpxor %xmm10,%xmm8,%xmm8 1999 xorq %r11,%rdi 2000 rorq $28,%r14 2001 vpsrlq $6,%xmm0,%xmm10 2002 addq %r9,%rbx 2003 addq %rdi,%r9 2004 vpaddq %xmm8,%xmm1,%xmm1 2005 movq %rbx,%r13 2006 addq %r9,%r14 2007.byte 143,72,120,195,203,42 2008 rorq $23,%r13 2009 movq %r14,%r9 2010 vpxor %xmm10,%xmm11,%xmm11 2011 movq %rcx,%r12 2012 rorq $5,%r14 2013 xorq %rbx,%r13 2014 xorq %rdx,%r12 2015 vpxor %xmm9,%xmm11,%xmm11 2016 rorq $4,%r13 2017 xorq %r9,%r14 2018 andq %rbx,%r12 2019 xorq %rbx,%r13 2020 vpaddq %xmm11,%xmm1,%xmm1 2021 addq 24(%rsp),%r8 2022 movq %r9,%rdi 2023 xorq %rdx,%r12 2024 rorq $6,%r14 2025 vpaddq -96(%rbp),%xmm1,%xmm10 2026 xorq %r10,%rdi 2027 addq %r12,%r8 2028 rorq $14,%r13 2029 andq %rdi,%r15 2030 xorq %r9,%r14 2031 addq %r13,%r8 2032 xorq %r10,%r15 2033 rorq $28,%r14 2034 addq %r8,%rax 2035 addq %r15,%r8 2036 movq %rax,%r13 2037 addq %r8,%r14 2038 vmovdqa %xmm10,16(%rsp) 2039 vpalignr $8,%xmm2,%xmm3,%xmm8 2040 rorq $23,%r13 2041 movq %r14,%r8 2042 vpalignr $8,%xmm6,%xmm7,%xmm11 2043 movq %rbx,%r12 2044 rorq $5,%r14 2045.byte 143,72,120,195,200,56 2046 xorq %rax,%r13 2047 xorq %rcx,%r12 2048 vpsrlq $7,%xmm8,%xmm8 2049 rorq $4,%r13 2050 xorq %r8,%r14 2051 vpaddq %xmm11,%xmm2,%xmm2 2052 andq %rax,%r12 2053 xorq %rax,%r13 2054 addq 32(%rsp),%rdx 2055 movq %r8,%r15 2056.byte 143,72,120,195,209,7 2057 xorq %rcx,%r12 2058 rorq $6,%r14 2059 vpxor %xmm9,%xmm8,%xmm8 2060 xorq %r9,%r15 2061 addq %r12,%rdx 2062 rorq $14,%r13 2063 andq %r15,%rdi 2064.byte 143,104,120,195,217,3 2065 xorq %r8,%r14 2066 addq %r13,%rdx 2067 vpxor %xmm10,%xmm8,%xmm8 2068 xorq %r9,%rdi 2069 rorq $28,%r14 2070 vpsrlq $6,%xmm1,%xmm10 2071 addq %rdx,%r11 2072 addq %rdi,%rdx 2073 vpaddq %xmm8,%xmm2,%xmm2 2074 movq %r11,%r13 2075 addq %rdx,%r14 2076.byte 143,72,120,195,203,42 2077 rorq $23,%r13 2078 movq %r14,%rdx 2079 vpxor %xmm10,%xmm11,%xmm11 2080 movq %rax,%r12 2081 rorq $5,%r14 2082 xorq %r11,%r13 2083 xorq %rbx,%r12 2084 vpxor %xmm9,%xmm11,%xmm11 2085 rorq $4,%r13 2086 xorq %rdx,%r14 2087 andq %r11,%r12 2088 xorq %r11,%r13 2089 vpaddq %xmm11,%xmm2,%xmm2 2090 addq 40(%rsp),%rcx 2091 movq %rdx,%rdi 2092 xorq %rbx,%r12 2093 rorq $6,%r14 2094 vpaddq -64(%rbp),%xmm2,%xmm10 2095 xorq %r8,%rdi 2096 addq %r12,%rcx 2097 rorq $14,%r13 2098 andq %rdi,%r15 2099 xorq %rdx,%r14 2100 addq %r13,%rcx 2101 xorq %r8,%r15 2102 rorq $28,%r14 2103 addq %rcx,%r10 2104 addq %r15,%rcx 2105 movq %r10,%r13 2106 addq %rcx,%r14 2107 vmovdqa %xmm10,32(%rsp) 2108 vpalignr $8,%xmm3,%xmm4,%xmm8 2109 rorq $23,%r13 2110 movq %r14,%rcx 2111 vpalignr $8,%xmm7,%xmm0,%xmm11 2112 movq %r11,%r12 2113 rorq $5,%r14 2114.byte 143,72,120,195,200,56 2115 xorq %r10,%r13 2116 xorq %rax,%r12 2117 vpsrlq $7,%xmm8,%xmm8 2118 rorq $4,%r13 2119 xorq %rcx,%r14 2120 vpaddq %xmm11,%xmm3,%xmm3 2121 andq %r10,%r12 2122 xorq %r10,%r13 2123 addq 48(%rsp),%rbx 2124 movq %rcx,%r15 2125.byte 143,72,120,195,209,7 2126 xorq %rax,%r12 2127 rorq $6,%r14 2128 vpxor %xmm9,%xmm8,%xmm8 2129 xorq %rdx,%r15 2130 addq %r12,%rbx 2131 rorq $14,%r13 2132 andq %r15,%rdi 2133.byte 143,104,120,195,218,3 2134 xorq %rcx,%r14 2135 addq %r13,%rbx 2136 vpxor %xmm10,%xmm8,%xmm8 2137 xorq %rdx,%rdi 2138 rorq $28,%r14 2139 vpsrlq $6,%xmm2,%xmm10 2140 addq %rbx,%r9 2141 addq %rdi,%rbx 2142 vpaddq %xmm8,%xmm3,%xmm3 2143 movq %r9,%r13 2144 addq %rbx,%r14 2145.byte 143,72,120,195,203,42 2146 rorq $23,%r13 2147 movq %r14,%rbx 2148 vpxor %xmm10,%xmm11,%xmm11 2149 movq %r10,%r12 2150 rorq $5,%r14 2151 xorq %r9,%r13 2152 xorq %r11,%r12 2153 vpxor %xmm9,%xmm11,%xmm11 2154 rorq $4,%r13 2155 xorq %rbx,%r14 2156 andq %r9,%r12 2157 xorq %r9,%r13 2158 vpaddq %xmm11,%xmm3,%xmm3 2159 addq 56(%rsp),%rax 2160 movq %rbx,%rdi 2161 xorq %r11,%r12 2162 rorq $6,%r14 2163 vpaddq -32(%rbp),%xmm3,%xmm10 2164 xorq %rcx,%rdi 2165 addq %r12,%rax 2166 rorq $14,%r13 2167 andq %rdi,%r15 2168 xorq %rbx,%r14 2169 addq %r13,%rax 2170 xorq %rcx,%r15 2171 rorq $28,%r14 2172 addq %rax,%r8 2173 addq %r15,%rax 2174 movq %r8,%r13 2175 addq %rax,%r14 2176 vmovdqa %xmm10,48(%rsp) 2177 vpalignr $8,%xmm4,%xmm5,%xmm8 2178 rorq $23,%r13 2179 movq %r14,%rax 2180 vpalignr $8,%xmm0,%xmm1,%xmm11 2181 movq %r9,%r12 2182 rorq $5,%r14 2183.byte 143,72,120,195,200,56 2184 xorq %r8,%r13 2185 xorq %r10,%r12 2186 vpsrlq $7,%xmm8,%xmm8 2187 rorq $4,%r13 2188 xorq %rax,%r14 2189 vpaddq %xmm11,%xmm4,%xmm4 2190 andq %r8,%r12 2191 xorq %r8,%r13 2192 addq 64(%rsp),%r11 2193 movq %rax,%r15 2194.byte 143,72,120,195,209,7 2195 xorq %r10,%r12 2196 rorq $6,%r14 2197 vpxor %xmm9,%xmm8,%xmm8 2198 xorq %rbx,%r15 2199 addq %r12,%r11 2200 rorq $14,%r13 2201 andq %r15,%rdi 2202.byte 143,104,120,195,219,3 2203 xorq %rax,%r14 2204 addq %r13,%r11 2205 vpxor %xmm10,%xmm8,%xmm8 2206 xorq %rbx,%rdi 2207 rorq $28,%r14 2208 vpsrlq $6,%xmm3,%xmm10 2209 addq %r11,%rdx 2210 addq %rdi,%r11 2211 vpaddq %xmm8,%xmm4,%xmm4 2212 movq %rdx,%r13 2213 addq %r11,%r14 2214.byte 143,72,120,195,203,42 2215 rorq $23,%r13 2216 movq %r14,%r11 2217 vpxor %xmm10,%xmm11,%xmm11 2218 movq %r8,%r12 2219 rorq $5,%r14 2220 xorq %rdx,%r13 2221 xorq %r9,%r12 2222 vpxor %xmm9,%xmm11,%xmm11 2223 rorq $4,%r13 2224 xorq %r11,%r14 2225 andq %rdx,%r12 2226 xorq %rdx,%r13 2227 vpaddq %xmm11,%xmm4,%xmm4 2228 addq 72(%rsp),%r10 2229 movq %r11,%rdi 2230 xorq %r9,%r12 2231 rorq $6,%r14 2232 vpaddq 0(%rbp),%xmm4,%xmm10 2233 xorq %rax,%rdi 2234 addq %r12,%r10 2235 rorq $14,%r13 2236 andq %rdi,%r15 2237 xorq %r11,%r14 2238 addq %r13,%r10 2239 xorq %rax,%r15 2240 rorq $28,%r14 2241 addq %r10,%rcx 2242 addq %r15,%r10 2243 movq %rcx,%r13 2244 addq %r10,%r14 2245 vmovdqa %xmm10,64(%rsp) 2246 vpalignr $8,%xmm5,%xmm6,%xmm8 2247 rorq $23,%r13 2248 movq %r14,%r10 2249 vpalignr $8,%xmm1,%xmm2,%xmm11 2250 movq %rdx,%r12 2251 rorq $5,%r14 2252.byte 143,72,120,195,200,56 2253 xorq %rcx,%r13 2254 xorq %r8,%r12 2255 vpsrlq $7,%xmm8,%xmm8 2256 rorq $4,%r13 2257 xorq %r10,%r14 2258 vpaddq %xmm11,%xmm5,%xmm5 2259 andq %rcx,%r12 2260 xorq %rcx,%r13 2261 addq 80(%rsp),%r9 2262 movq %r10,%r15 2263.byte 143,72,120,195,209,7 2264 xorq %r8,%r12 2265 rorq $6,%r14 2266 vpxor %xmm9,%xmm8,%xmm8 2267 xorq %r11,%r15 2268 addq %r12,%r9 2269 rorq $14,%r13 2270 andq %r15,%rdi 2271.byte 143,104,120,195,220,3 2272 xorq %r10,%r14 2273 addq %r13,%r9 2274 vpxor %xmm10,%xmm8,%xmm8 2275 xorq %r11,%rdi 2276 rorq $28,%r14 2277 vpsrlq $6,%xmm4,%xmm10 2278 addq %r9,%rbx 2279 addq %rdi,%r9 2280 vpaddq %xmm8,%xmm5,%xmm5 2281 movq %rbx,%r13 2282 addq %r9,%r14 2283.byte 143,72,120,195,203,42 2284 rorq $23,%r13 2285 movq %r14,%r9 2286 vpxor %xmm10,%xmm11,%xmm11 2287 movq %rcx,%r12 2288 rorq $5,%r14 2289 xorq %rbx,%r13 2290 xorq %rdx,%r12 2291 vpxor %xmm9,%xmm11,%xmm11 2292 rorq $4,%r13 2293 xorq %r9,%r14 2294 andq %rbx,%r12 2295 xorq %rbx,%r13 2296 vpaddq %xmm11,%xmm5,%xmm5 2297 addq 88(%rsp),%r8 2298 movq %r9,%rdi 2299 xorq %rdx,%r12 2300 rorq $6,%r14 2301 vpaddq 32(%rbp),%xmm5,%xmm10 2302 xorq %r10,%rdi 2303 addq %r12,%r8 2304 rorq $14,%r13 2305 andq %rdi,%r15 2306 xorq %r9,%r14 2307 addq %r13,%r8 2308 xorq %r10,%r15 2309 rorq $28,%r14 2310 addq %r8,%rax 2311 addq %r15,%r8 2312 movq %rax,%r13 2313 addq %r8,%r14 2314 vmovdqa %xmm10,80(%rsp) 2315 vpalignr $8,%xmm6,%xmm7,%xmm8 2316 rorq $23,%r13 2317 movq %r14,%r8 2318 vpalignr $8,%xmm2,%xmm3,%xmm11 2319 movq %rbx,%r12 2320 rorq $5,%r14 2321.byte 143,72,120,195,200,56 2322 xorq %rax,%r13 2323 xorq %rcx,%r12 2324 vpsrlq $7,%xmm8,%xmm8 2325 rorq $4,%r13 2326 xorq %r8,%r14 2327 vpaddq %xmm11,%xmm6,%xmm6 2328 andq %rax,%r12 2329 xorq %rax,%r13 2330 addq 96(%rsp),%rdx 2331 movq %r8,%r15 2332.byte 143,72,120,195,209,7 2333 xorq %rcx,%r12 2334 rorq $6,%r14 2335 vpxor %xmm9,%xmm8,%xmm8 2336 xorq %r9,%r15 2337 addq %r12,%rdx 2338 rorq $14,%r13 2339 andq %r15,%rdi 2340.byte 143,104,120,195,221,3 2341 xorq %r8,%r14 2342 addq %r13,%rdx 2343 vpxor %xmm10,%xmm8,%xmm8 2344 xorq %r9,%rdi 2345 rorq $28,%r14 2346 vpsrlq $6,%xmm5,%xmm10 2347 addq %rdx,%r11 2348 addq %rdi,%rdx 2349 vpaddq %xmm8,%xmm6,%xmm6 2350 movq %r11,%r13 2351 addq %rdx,%r14 2352.byte 143,72,120,195,203,42 2353 rorq $23,%r13 2354 movq %r14,%rdx 2355 vpxor %xmm10,%xmm11,%xmm11 2356 movq %rax,%r12 2357 rorq $5,%r14 2358 xorq %r11,%r13 2359 xorq %rbx,%r12 2360 vpxor %xmm9,%xmm11,%xmm11 2361 rorq $4,%r13 2362 xorq %rdx,%r14 2363 andq %r11,%r12 2364 xorq %r11,%r13 2365 vpaddq %xmm11,%xmm6,%xmm6 2366 addq 104(%rsp),%rcx 2367 movq %rdx,%rdi 2368 xorq %rbx,%r12 2369 rorq $6,%r14 2370 vpaddq 64(%rbp),%xmm6,%xmm10 2371 xorq %r8,%rdi 2372 addq %r12,%rcx 2373 rorq $14,%r13 2374 andq %rdi,%r15 2375 xorq %rdx,%r14 2376 addq %r13,%rcx 2377 xorq %r8,%r15 2378 rorq $28,%r14 2379 addq %rcx,%r10 2380 addq %r15,%rcx 2381 movq %r10,%r13 2382 addq %rcx,%r14 2383 vmovdqa %xmm10,96(%rsp) 2384 vpalignr $8,%xmm7,%xmm0,%xmm8 2385 rorq $23,%r13 2386 movq %r14,%rcx 2387 vpalignr $8,%xmm3,%xmm4,%xmm11 2388 movq %r11,%r12 2389 rorq $5,%r14 2390.byte 143,72,120,195,200,56 2391 xorq %r10,%r13 2392 xorq %rax,%r12 2393 vpsrlq $7,%xmm8,%xmm8 2394 rorq $4,%r13 2395 xorq %rcx,%r14 2396 vpaddq %xmm11,%xmm7,%xmm7 2397 andq %r10,%r12 2398 xorq %r10,%r13 2399 addq 112(%rsp),%rbx 2400 movq %rcx,%r15 2401.byte 143,72,120,195,209,7 2402 xorq %rax,%r12 2403 rorq $6,%r14 2404 vpxor %xmm9,%xmm8,%xmm8 2405 xorq %rdx,%r15 2406 addq %r12,%rbx 2407 rorq $14,%r13 2408 andq %r15,%rdi 2409.byte 143,104,120,195,222,3 2410 xorq %rcx,%r14 2411 addq %r13,%rbx 2412 vpxor %xmm10,%xmm8,%xmm8 2413 xorq %rdx,%rdi 2414 rorq $28,%r14 2415 vpsrlq $6,%xmm6,%xmm10 2416 addq %rbx,%r9 2417 addq %rdi,%rbx 2418 vpaddq %xmm8,%xmm7,%xmm7 2419 movq %r9,%r13 2420 addq %rbx,%r14 2421.byte 143,72,120,195,203,42 2422 rorq $23,%r13 2423 movq %r14,%rbx 2424 vpxor %xmm10,%xmm11,%xmm11 2425 movq %r10,%r12 2426 rorq $5,%r14 2427 xorq %r9,%r13 2428 xorq %r11,%r12 2429 vpxor %xmm9,%xmm11,%xmm11 2430 rorq $4,%r13 2431 xorq %rbx,%r14 2432 andq %r9,%r12 2433 xorq %r9,%r13 2434 vpaddq %xmm11,%xmm7,%xmm7 2435 addq 120(%rsp),%rax 2436 movq %rbx,%rdi 2437 xorq %r11,%r12 2438 rorq $6,%r14 2439 vpaddq 96(%rbp),%xmm7,%xmm10 2440 xorq %rcx,%rdi 2441 addq %r12,%rax 2442 rorq $14,%r13 2443 andq %rdi,%r15 2444 xorq %rbx,%r14 2445 addq %r13,%rax 2446 xorq %rcx,%r15 2447 rorq $28,%r14 2448 addq %rax,%r8 2449 addq %r15,%rax 2450 movq %r8,%r13 2451 addq %rax,%r14 2452 vmovdqa %xmm10,112(%rsp) 2453 cmpb $0,135(%rbp) 2454 jne .Lxop_00_47 2455 rorq $23,%r13 2456 movq %r14,%rax 2457 movq %r9,%r12 2458 rorq $5,%r14 2459 xorq %r8,%r13 2460 xorq %r10,%r12 2461 rorq $4,%r13 2462 xorq %rax,%r14 2463 andq %r8,%r12 2464 xorq %r8,%r13 2465 addq 0(%rsp),%r11 2466 movq %rax,%r15 2467 xorq %r10,%r12 2468 rorq $6,%r14 2469 xorq %rbx,%r15 2470 addq %r12,%r11 2471 rorq $14,%r13 2472 andq %r15,%rdi 2473 xorq %rax,%r14 2474 addq %r13,%r11 2475 xorq %rbx,%rdi 2476 rorq $28,%r14 2477 addq %r11,%rdx 2478 addq %rdi,%r11 2479 movq %rdx,%r13 2480 addq %r11,%r14 2481 rorq $23,%r13 2482 movq %r14,%r11 2483 movq %r8,%r12 2484 rorq $5,%r14 2485 xorq %rdx,%r13 2486 xorq %r9,%r12 2487 rorq $4,%r13 2488 xorq %r11,%r14 2489 andq %rdx,%r12 2490 xorq %rdx,%r13 2491 addq 8(%rsp),%r10 2492 movq %r11,%rdi 2493 xorq %r9,%r12 2494 rorq $6,%r14 2495 xorq %rax,%rdi 2496 addq %r12,%r10 2497 rorq $14,%r13 2498 andq %rdi,%r15 2499 xorq %r11,%r14 2500 addq %r13,%r10 2501 xorq %rax,%r15 2502 rorq $28,%r14 2503 addq %r10,%rcx 2504 addq %r15,%r10 2505 movq %rcx,%r13 2506 addq %r10,%r14 2507 rorq $23,%r13 2508 movq %r14,%r10 2509 movq %rdx,%r12 2510 rorq $5,%r14 2511 xorq %rcx,%r13 2512 xorq %r8,%r12 2513 rorq $4,%r13 2514 xorq %r10,%r14 2515 andq %rcx,%r12 2516 xorq %rcx,%r13 2517 addq 16(%rsp),%r9 2518 movq %r10,%r15 2519 xorq %r8,%r12 2520 rorq $6,%r14 2521 xorq %r11,%r15 2522 addq %r12,%r9 2523 rorq $14,%r13 2524 andq %r15,%rdi 2525 xorq %r10,%r14 2526 addq %r13,%r9 2527 xorq %r11,%rdi 2528 rorq $28,%r14 2529 addq %r9,%rbx 2530 addq %rdi,%r9 2531 movq %rbx,%r13 2532 addq %r9,%r14 2533 rorq $23,%r13 2534 movq %r14,%r9 2535 movq %rcx,%r12 2536 rorq $5,%r14 2537 xorq %rbx,%r13 2538 xorq %rdx,%r12 2539 rorq $4,%r13 2540 xorq %r9,%r14 2541 andq %rbx,%r12 2542 xorq %rbx,%r13 2543 addq 24(%rsp),%r8 2544 movq %r9,%rdi 2545 xorq %rdx,%r12 2546 rorq $6,%r14 2547 xorq %r10,%rdi 2548 addq %r12,%r8 2549 rorq $14,%r13 2550 andq %rdi,%r15 2551 xorq %r9,%r14 2552 addq %r13,%r8 2553 xorq %r10,%r15 2554 rorq $28,%r14 2555 addq %r8,%rax 2556 addq %r15,%r8 2557 movq %rax,%r13 2558 addq %r8,%r14 2559 rorq $23,%r13 2560 movq %r14,%r8 2561 movq %rbx,%r12 2562 rorq $5,%r14 2563 xorq %rax,%r13 2564 xorq %rcx,%r12 2565 rorq $4,%r13 2566 xorq %r8,%r14 2567 andq %rax,%r12 2568 xorq %rax,%r13 2569 addq 32(%rsp),%rdx 2570 movq %r8,%r15 2571 xorq %rcx,%r12 2572 rorq $6,%r14 2573 xorq %r9,%r15 2574 addq %r12,%rdx 2575 rorq $14,%r13 2576 andq %r15,%rdi 2577 xorq %r8,%r14 2578 addq %r13,%rdx 2579 xorq %r9,%rdi 2580 rorq $28,%r14 2581 addq %rdx,%r11 2582 addq %rdi,%rdx 2583 movq %r11,%r13 2584 addq %rdx,%r14 2585 rorq $23,%r13 2586 movq %r14,%rdx 2587 movq %rax,%r12 2588 rorq $5,%r14 2589 xorq %r11,%r13 2590 xorq %rbx,%r12 2591 rorq $4,%r13 2592 xorq %rdx,%r14 2593 andq %r11,%r12 2594 xorq %r11,%r13 2595 addq 40(%rsp),%rcx 2596 movq %rdx,%rdi 2597 xorq %rbx,%r12 2598 rorq $6,%r14 2599 xorq %r8,%rdi 2600 addq %r12,%rcx 2601 rorq $14,%r13 2602 andq %rdi,%r15 2603 xorq %rdx,%r14 2604 addq %r13,%rcx 2605 xorq %r8,%r15 2606 rorq $28,%r14 2607 addq %rcx,%r10 2608 addq %r15,%rcx 2609 movq %r10,%r13 2610 addq %rcx,%r14 2611 rorq $23,%r13 2612 movq %r14,%rcx 2613 movq %r11,%r12 2614 rorq $5,%r14 2615 xorq %r10,%r13 2616 xorq %rax,%r12 2617 rorq $4,%r13 2618 xorq %rcx,%r14 2619 andq %r10,%r12 2620 xorq %r10,%r13 2621 addq 48(%rsp),%rbx 2622 movq %rcx,%r15 2623 xorq %rax,%r12 2624 rorq $6,%r14 2625 xorq %rdx,%r15 2626 addq %r12,%rbx 2627 rorq $14,%r13 2628 andq %r15,%rdi 2629 xorq %rcx,%r14 2630 addq %r13,%rbx 2631 xorq %rdx,%rdi 2632 rorq $28,%r14 2633 addq %rbx,%r9 2634 addq %rdi,%rbx 2635 movq %r9,%r13 2636 addq %rbx,%r14 2637 rorq $23,%r13 2638 movq %r14,%rbx 2639 movq %r10,%r12 2640 rorq $5,%r14 2641 xorq %r9,%r13 2642 xorq %r11,%r12 2643 rorq $4,%r13 2644 xorq %rbx,%r14 2645 andq %r9,%r12 2646 xorq %r9,%r13 2647 addq 56(%rsp),%rax 2648 movq %rbx,%rdi 2649 xorq %r11,%r12 2650 rorq $6,%r14 2651 xorq %rcx,%rdi 2652 addq %r12,%rax 2653 rorq $14,%r13 2654 andq %rdi,%r15 2655 xorq %rbx,%r14 2656 addq %r13,%rax 2657 xorq %rcx,%r15 2658 rorq $28,%r14 2659 addq %rax,%r8 2660 addq %r15,%rax 2661 movq %r8,%r13 2662 addq %rax,%r14 2663 rorq $23,%r13 2664 movq %r14,%rax 2665 movq %r9,%r12 2666 rorq $5,%r14 2667 xorq %r8,%r13 2668 xorq %r10,%r12 2669 rorq $4,%r13 2670 xorq %rax,%r14 2671 andq %r8,%r12 2672 xorq %r8,%r13 2673 addq 64(%rsp),%r11 2674 movq %rax,%r15 2675 xorq %r10,%r12 2676 rorq $6,%r14 2677 xorq %rbx,%r15 2678 addq %r12,%r11 2679 rorq $14,%r13 2680 andq %r15,%rdi 2681 xorq %rax,%r14 2682 addq %r13,%r11 2683 xorq %rbx,%rdi 2684 rorq $28,%r14 2685 addq %r11,%rdx 2686 addq %rdi,%r11 2687 movq %rdx,%r13 2688 addq %r11,%r14 2689 rorq $23,%r13 2690 movq %r14,%r11 2691 movq %r8,%r12 2692 rorq $5,%r14 2693 xorq %rdx,%r13 2694 xorq %r9,%r12 2695 rorq $4,%r13 2696 xorq %r11,%r14 2697 andq %rdx,%r12 2698 xorq %rdx,%r13 2699 addq 72(%rsp),%r10 2700 movq %r11,%rdi 2701 xorq %r9,%r12 2702 rorq $6,%r14 2703 xorq %rax,%rdi 2704 addq %r12,%r10 2705 rorq $14,%r13 2706 andq %rdi,%r15 2707 xorq %r11,%r14 2708 addq %r13,%r10 2709 xorq %rax,%r15 2710 rorq $28,%r14 2711 addq %r10,%rcx 2712 addq %r15,%r10 2713 movq %rcx,%r13 2714 addq %r10,%r14 2715 rorq $23,%r13 2716 movq %r14,%r10 2717 movq %rdx,%r12 2718 rorq $5,%r14 2719 xorq %rcx,%r13 2720 xorq %r8,%r12 2721 rorq $4,%r13 2722 xorq %r10,%r14 2723 andq %rcx,%r12 2724 xorq %rcx,%r13 2725 addq 80(%rsp),%r9 2726 movq %r10,%r15 2727 xorq %r8,%r12 2728 rorq $6,%r14 2729 xorq %r11,%r15 2730 addq %r12,%r9 2731 rorq $14,%r13 2732 andq %r15,%rdi 2733 xorq %r10,%r14 2734 addq %r13,%r9 2735 xorq %r11,%rdi 2736 rorq $28,%r14 2737 addq %r9,%rbx 2738 addq %rdi,%r9 2739 movq %rbx,%r13 2740 addq %r9,%r14 2741 rorq $23,%r13 2742 movq %r14,%r9 2743 movq %rcx,%r12 2744 rorq $5,%r14 2745 xorq %rbx,%r13 2746 xorq %rdx,%r12 2747 rorq $4,%r13 2748 xorq %r9,%r14 2749 andq %rbx,%r12 2750 xorq %rbx,%r13 2751 addq 88(%rsp),%r8 2752 movq %r9,%rdi 2753 xorq %rdx,%r12 2754 rorq $6,%r14 2755 xorq %r10,%rdi 2756 addq %r12,%r8 2757 rorq $14,%r13 2758 andq %rdi,%r15 2759 xorq %r9,%r14 2760 addq %r13,%r8 2761 xorq %r10,%r15 2762 rorq $28,%r14 2763 addq %r8,%rax 2764 addq %r15,%r8 2765 movq %rax,%r13 2766 addq %r8,%r14 2767 rorq $23,%r13 2768 movq %r14,%r8 2769 movq %rbx,%r12 2770 rorq $5,%r14 2771 xorq %rax,%r13 2772 xorq %rcx,%r12 2773 rorq $4,%r13 2774 xorq %r8,%r14 2775 andq %rax,%r12 2776 xorq %rax,%r13 2777 addq 96(%rsp),%rdx 2778 movq %r8,%r15 2779 xorq %rcx,%r12 2780 rorq $6,%r14 2781 xorq %r9,%r15 2782 addq %r12,%rdx 2783 rorq $14,%r13 2784 andq %r15,%rdi 2785 xorq %r8,%r14 2786 addq %r13,%rdx 2787 xorq %r9,%rdi 2788 rorq $28,%r14 2789 addq %rdx,%r11 2790 addq %rdi,%rdx 2791 movq %r11,%r13 2792 addq %rdx,%r14 2793 rorq $23,%r13 2794 movq %r14,%rdx 2795 movq %rax,%r12 2796 rorq $5,%r14 2797 xorq %r11,%r13 2798 xorq %rbx,%r12 2799 rorq $4,%r13 2800 xorq %rdx,%r14 2801 andq %r11,%r12 2802 xorq %r11,%r13 2803 addq 104(%rsp),%rcx 2804 movq %rdx,%rdi 2805 xorq %rbx,%r12 2806 rorq $6,%r14 2807 xorq %r8,%rdi 2808 addq %r12,%rcx 2809 rorq $14,%r13 2810 andq %rdi,%r15 2811 xorq %rdx,%r14 2812 addq %r13,%rcx 2813 xorq %r8,%r15 2814 rorq $28,%r14 2815 addq %rcx,%r10 2816 addq %r15,%rcx 2817 movq %r10,%r13 2818 addq %rcx,%r14 2819 rorq $23,%r13 2820 movq %r14,%rcx 2821 movq %r11,%r12 2822 rorq $5,%r14 2823 xorq %r10,%r13 2824 xorq %rax,%r12 2825 rorq $4,%r13 2826 xorq %rcx,%r14 2827 andq %r10,%r12 2828 xorq %r10,%r13 2829 addq 112(%rsp),%rbx 2830 movq %rcx,%r15 2831 xorq %rax,%r12 2832 rorq $6,%r14 2833 xorq %rdx,%r15 2834 addq %r12,%rbx 2835 rorq $14,%r13 2836 andq %r15,%rdi 2837 xorq %rcx,%r14 2838 addq %r13,%rbx 2839 xorq %rdx,%rdi 2840 rorq $28,%r14 2841 addq %rbx,%r9 2842 addq %rdi,%rbx 2843 movq %r9,%r13 2844 addq %rbx,%r14 2845 rorq $23,%r13 2846 movq %r14,%rbx 2847 movq %r10,%r12 2848 rorq $5,%r14 2849 xorq %r9,%r13 2850 xorq %r11,%r12 2851 rorq $4,%r13 2852 xorq %rbx,%r14 2853 andq %r9,%r12 2854 xorq %r9,%r13 2855 addq 120(%rsp),%rax 2856 movq %rbx,%rdi 2857 xorq %r11,%r12 2858 rorq $6,%r14 2859 xorq %rcx,%rdi 2860 addq %r12,%rax 2861 rorq $14,%r13 2862 andq %rdi,%r15 2863 xorq %rbx,%r14 2864 addq %r13,%rax 2865 xorq %rcx,%r15 2866 rorq $28,%r14 2867 addq %rax,%r8 2868 addq %r15,%rax 2869 movq %r8,%r13 2870 addq %rax,%r14 2871 movq 128+0(%rsp),%rdi 2872 movq %r14,%rax 2873 2874 addq 0(%rdi),%rax 2875 leaq 128(%rsi),%rsi 2876 addq 8(%rdi),%rbx 2877 addq 16(%rdi),%rcx 2878 addq 24(%rdi),%rdx 2879 addq 32(%rdi),%r8 2880 addq 40(%rdi),%r9 2881 addq 48(%rdi),%r10 2882 addq 56(%rdi),%r11 2883 2884 cmpq 128+16(%rsp),%rsi 2885 2886 movq %rax,0(%rdi) 2887 movq %rbx,8(%rdi) 2888 movq %rcx,16(%rdi) 2889 movq %rdx,24(%rdi) 2890 movq %r8,32(%rdi) 2891 movq %r9,40(%rdi) 2892 movq %r10,48(%rdi) 2893 movq %r11,56(%rdi) 2894 jb .Lloop_xop 2895 2896 movq 152(%rsp),%rsi 2897.cfi_def_cfa %rsi,8 2898 vzeroupper 2899 movq -48(%rsi),%r15 2900.cfi_restore %r15 2901 movq -40(%rsi),%r14 2902.cfi_restore %r14 2903 movq -32(%rsi),%r13 2904.cfi_restore %r13 2905 movq -24(%rsi),%r12 2906.cfi_restore %r12 2907 movq -16(%rsi),%rbp 2908.cfi_restore %rbp 2909 movq -8(%rsi),%rbx 2910.cfi_restore %rbx 2911 leaq (%rsi),%rsp 2912.cfi_def_cfa_register %rsp 2913.Lepilogue_xop: 2914 .byte 0xf3,0xc3 2915.cfi_endproc 2916.size sha512_block_data_order_xop,.-sha512_block_data_order_xop 2917.type sha512_block_data_order_avx,@function 2918.align 64 2919sha512_block_data_order_avx: 2920.cfi_startproc 2921.Lavx_shortcut: 2922 movq %rsp,%rax 2923.cfi_def_cfa_register %rax 2924 pushq %rbx 2925.cfi_offset %rbx,-16 2926 pushq %rbp 2927.cfi_offset %rbp,-24 2928 pushq %r12 2929.cfi_offset %r12,-32 2930 pushq %r13 2931.cfi_offset %r13,-40 2932 pushq %r14 2933.cfi_offset %r14,-48 2934 pushq %r15 2935.cfi_offset %r15,-56 2936 shlq $4,%rdx 2937 subq $160,%rsp 2938 leaq (%rsi,%rdx,8),%rdx 2939 andq $-64,%rsp 2940 movq %rdi,128+0(%rsp) 2941 movq %rsi,128+8(%rsp) 2942 movq %rdx,128+16(%rsp) 2943 movq %rax,152(%rsp) 2944.cfi_escape 0x0f,0x06,0x77,0x98,0x01,0x06,0x23,0x08 2945.Lprologue_avx: 2946 2947 vzeroupper 2948 movq 0(%rdi),%rax 2949 movq 8(%rdi),%rbx 2950 movq 16(%rdi),%rcx 2951 movq 24(%rdi),%rdx 2952 movq 32(%rdi),%r8 2953 movq 40(%rdi),%r9 2954 movq 48(%rdi),%r10 2955 movq 56(%rdi),%r11 2956 jmp .Lloop_avx 2957.align 16 2958.Lloop_avx: 2959 vmovdqa K512+1280(%rip),%xmm11 2960 vmovdqu 0(%rsi),%xmm0 2961 leaq K512+128(%rip),%rbp 2962 vmovdqu 16(%rsi),%xmm1 2963 vmovdqu 32(%rsi),%xmm2 2964 vpshufb %xmm11,%xmm0,%xmm0 2965 vmovdqu 48(%rsi),%xmm3 2966 vpshufb %xmm11,%xmm1,%xmm1 2967 vmovdqu 64(%rsi),%xmm4 2968 vpshufb %xmm11,%xmm2,%xmm2 2969 vmovdqu 80(%rsi),%xmm5 2970 vpshufb %xmm11,%xmm3,%xmm3 2971 vmovdqu 96(%rsi),%xmm6 2972 vpshufb %xmm11,%xmm4,%xmm4 2973 vmovdqu 112(%rsi),%xmm7 2974 vpshufb %xmm11,%xmm5,%xmm5 2975 vpaddq -128(%rbp),%xmm0,%xmm8 2976 vpshufb %xmm11,%xmm6,%xmm6 2977 vpaddq -96(%rbp),%xmm1,%xmm9 2978 vpshufb %xmm11,%xmm7,%xmm7 2979 vpaddq -64(%rbp),%xmm2,%xmm10 2980 vpaddq -32(%rbp),%xmm3,%xmm11 2981 vmovdqa %xmm8,0(%rsp) 2982 vpaddq 0(%rbp),%xmm4,%xmm8 2983 vmovdqa %xmm9,16(%rsp) 2984 vpaddq 32(%rbp),%xmm5,%xmm9 2985 vmovdqa %xmm10,32(%rsp) 2986 vpaddq 64(%rbp),%xmm6,%xmm10 2987 vmovdqa %xmm11,48(%rsp) 2988 vpaddq 96(%rbp),%xmm7,%xmm11 2989 vmovdqa %xmm8,64(%rsp) 2990 movq %rax,%r14 2991 vmovdqa %xmm9,80(%rsp) 2992 movq %rbx,%rdi 2993 vmovdqa %xmm10,96(%rsp) 2994 xorq %rcx,%rdi 2995 vmovdqa %xmm11,112(%rsp) 2996 movq %r8,%r13 2997 jmp .Lavx_00_47 2998 2999.align 16 3000.Lavx_00_47: 3001 addq $256,%rbp 3002 vpalignr $8,%xmm0,%xmm1,%xmm8 3003 shrdq $23,%r13,%r13 3004 movq %r14,%rax 3005 vpalignr $8,%xmm4,%xmm5,%xmm11 3006 movq %r9,%r12 3007 shrdq $5,%r14,%r14 3008 vpsrlq $1,%xmm8,%xmm10 3009 xorq %r8,%r13 3010 xorq %r10,%r12 3011 vpaddq %xmm11,%xmm0,%xmm0 3012 shrdq $4,%r13,%r13 3013 xorq %rax,%r14 3014 vpsrlq $7,%xmm8,%xmm11 3015 andq %r8,%r12 3016 xorq %r8,%r13 3017 vpsllq $56,%xmm8,%xmm9 3018 addq 0(%rsp),%r11 3019 movq %rax,%r15 3020 vpxor %xmm10,%xmm11,%xmm8 3021 xorq %r10,%r12 3022 shrdq $6,%r14,%r14 3023 vpsrlq $7,%xmm10,%xmm10 3024 xorq %rbx,%r15 3025 addq %r12,%r11 3026 vpxor %xmm9,%xmm8,%xmm8 3027 shrdq $14,%r13,%r13 3028 andq %r15,%rdi 3029 vpsllq $7,%xmm9,%xmm9 3030 xorq %rax,%r14 3031 addq %r13,%r11 3032 vpxor %xmm10,%xmm8,%xmm8 3033 xorq %rbx,%rdi 3034 shrdq $28,%r14,%r14 3035 vpsrlq $6,%xmm7,%xmm11 3036 addq %r11,%rdx 3037 addq %rdi,%r11 3038 vpxor %xmm9,%xmm8,%xmm8 3039 movq %rdx,%r13 3040 addq %r11,%r14 3041 vpsllq $3,%xmm7,%xmm10 3042 shrdq $23,%r13,%r13 3043 movq %r14,%r11 3044 vpaddq %xmm8,%xmm0,%xmm0 3045 movq %r8,%r12 3046 shrdq $5,%r14,%r14 3047 vpsrlq $19,%xmm7,%xmm9 3048 xorq %rdx,%r13 3049 xorq %r9,%r12 3050 vpxor %xmm10,%xmm11,%xmm11 3051 shrdq $4,%r13,%r13 3052 xorq %r11,%r14 3053 vpsllq $42,%xmm10,%xmm10 3054 andq %rdx,%r12 3055 xorq %rdx,%r13 3056 vpxor %xmm9,%xmm11,%xmm11 3057 addq 8(%rsp),%r10 3058 movq %r11,%rdi 3059 vpsrlq $42,%xmm9,%xmm9 3060 xorq %r9,%r12 3061 shrdq $6,%r14,%r14 3062 vpxor %xmm10,%xmm11,%xmm11 3063 xorq %rax,%rdi 3064 addq %r12,%r10 3065 vpxor %xmm9,%xmm11,%xmm11 3066 shrdq $14,%r13,%r13 3067 andq %rdi,%r15 3068 vpaddq %xmm11,%xmm0,%xmm0 3069 xorq %r11,%r14 3070 addq %r13,%r10 3071 vpaddq -128(%rbp),%xmm0,%xmm10 3072 xorq %rax,%r15 3073 shrdq $28,%r14,%r14 3074 addq %r10,%rcx 3075 addq %r15,%r10 3076 movq %rcx,%r13 3077 addq %r10,%r14 3078 vmovdqa %xmm10,0(%rsp) 3079 vpalignr $8,%xmm1,%xmm2,%xmm8 3080 shrdq $23,%r13,%r13 3081 movq %r14,%r10 3082 vpalignr $8,%xmm5,%xmm6,%xmm11 3083 movq %rdx,%r12 3084 shrdq $5,%r14,%r14 3085 vpsrlq $1,%xmm8,%xmm10 3086 xorq %rcx,%r13 3087 xorq %r8,%r12 3088 vpaddq %xmm11,%xmm1,%xmm1 3089 shrdq $4,%r13,%r13 3090 xorq %r10,%r14 3091 vpsrlq $7,%xmm8,%xmm11 3092 andq %rcx,%r12 3093 xorq %rcx,%r13 3094 vpsllq $56,%xmm8,%xmm9 3095 addq 16(%rsp),%r9 3096 movq %r10,%r15 3097 vpxor %xmm10,%xmm11,%xmm8 3098 xorq %r8,%r12 3099 shrdq $6,%r14,%r14 3100 vpsrlq $7,%xmm10,%xmm10 3101 xorq %r11,%r15 3102 addq %r12,%r9 3103 vpxor %xmm9,%xmm8,%xmm8 3104 shrdq $14,%r13,%r13 3105 andq %r15,%rdi 3106 vpsllq $7,%xmm9,%xmm9 3107 xorq %r10,%r14 3108 addq %r13,%r9 3109 vpxor %xmm10,%xmm8,%xmm8 3110 xorq %r11,%rdi 3111 shrdq $28,%r14,%r14 3112 vpsrlq $6,%xmm0,%xmm11 3113 addq %r9,%rbx 3114 addq %rdi,%r9 3115 vpxor %xmm9,%xmm8,%xmm8 3116 movq %rbx,%r13 3117 addq %r9,%r14 3118 vpsllq $3,%xmm0,%xmm10 3119 shrdq $23,%r13,%r13 3120 movq %r14,%r9 3121 vpaddq %xmm8,%xmm1,%xmm1 3122 movq %rcx,%r12 3123 shrdq $5,%r14,%r14 3124 vpsrlq $19,%xmm0,%xmm9 3125 xorq %rbx,%r13 3126 xorq %rdx,%r12 3127 vpxor %xmm10,%xmm11,%xmm11 3128 shrdq $4,%r13,%r13 3129 xorq %r9,%r14 3130 vpsllq $42,%xmm10,%xmm10 3131 andq %rbx,%r12 3132 xorq %rbx,%r13 3133 vpxor %xmm9,%xmm11,%xmm11 3134 addq 24(%rsp),%r8 3135 movq %r9,%rdi 3136 vpsrlq $42,%xmm9,%xmm9 3137 xorq %rdx,%r12 3138 shrdq $6,%r14,%r14 3139 vpxor %xmm10,%xmm11,%xmm11 3140 xorq %r10,%rdi 3141 addq %r12,%r8 3142 vpxor %xmm9,%xmm11,%xmm11 3143 shrdq $14,%r13,%r13 3144 andq %rdi,%r15 3145 vpaddq %xmm11,%xmm1,%xmm1 3146 xorq %r9,%r14 3147 addq %r13,%r8 3148 vpaddq -96(%rbp),%xmm1,%xmm10 3149 xorq %r10,%r15 3150 shrdq $28,%r14,%r14 3151 addq %r8,%rax 3152 addq %r15,%r8 3153 movq %rax,%r13 3154 addq %r8,%r14 3155 vmovdqa %xmm10,16(%rsp) 3156 vpalignr $8,%xmm2,%xmm3,%xmm8 3157 shrdq $23,%r13,%r13 3158 movq %r14,%r8 3159 vpalignr $8,%xmm6,%xmm7,%xmm11 3160 movq %rbx,%r12 3161 shrdq $5,%r14,%r14 3162 vpsrlq $1,%xmm8,%xmm10 3163 xorq %rax,%r13 3164 xorq %rcx,%r12 3165 vpaddq %xmm11,%xmm2,%xmm2 3166 shrdq $4,%r13,%r13 3167 xorq %r8,%r14 3168 vpsrlq $7,%xmm8,%xmm11 3169 andq %rax,%r12 3170 xorq %rax,%r13 3171 vpsllq $56,%xmm8,%xmm9 3172 addq 32(%rsp),%rdx 3173 movq %r8,%r15 3174 vpxor %xmm10,%xmm11,%xmm8 3175 xorq %rcx,%r12 3176 shrdq $6,%r14,%r14 3177 vpsrlq $7,%xmm10,%xmm10 3178 xorq %r9,%r15 3179 addq %r12,%rdx 3180 vpxor %xmm9,%xmm8,%xmm8 3181 shrdq $14,%r13,%r13 3182 andq %r15,%rdi 3183 vpsllq $7,%xmm9,%xmm9 3184 xorq %r8,%r14 3185 addq %r13,%rdx 3186 vpxor %xmm10,%xmm8,%xmm8 3187 xorq %r9,%rdi 3188 shrdq $28,%r14,%r14 3189 vpsrlq $6,%xmm1,%xmm11 3190 addq %rdx,%r11 3191 addq %rdi,%rdx 3192 vpxor %xmm9,%xmm8,%xmm8 3193 movq %r11,%r13 3194 addq %rdx,%r14 3195 vpsllq $3,%xmm1,%xmm10 3196 shrdq $23,%r13,%r13 3197 movq %r14,%rdx 3198 vpaddq %xmm8,%xmm2,%xmm2 3199 movq %rax,%r12 3200 shrdq $5,%r14,%r14 3201 vpsrlq $19,%xmm1,%xmm9 3202 xorq %r11,%r13 3203 xorq %rbx,%r12 3204 vpxor %xmm10,%xmm11,%xmm11 3205 shrdq $4,%r13,%r13 3206 xorq %rdx,%r14 3207 vpsllq $42,%xmm10,%xmm10 3208 andq %r11,%r12 3209 xorq %r11,%r13 3210 vpxor %xmm9,%xmm11,%xmm11 3211 addq 40(%rsp),%rcx 3212 movq %rdx,%rdi 3213 vpsrlq $42,%xmm9,%xmm9 3214 xorq %rbx,%r12 3215 shrdq $6,%r14,%r14 3216 vpxor %xmm10,%xmm11,%xmm11 3217 xorq %r8,%rdi 3218 addq %r12,%rcx 3219 vpxor %xmm9,%xmm11,%xmm11 3220 shrdq $14,%r13,%r13 3221 andq %rdi,%r15 3222 vpaddq %xmm11,%xmm2,%xmm2 3223 xorq %rdx,%r14 3224 addq %r13,%rcx 3225 vpaddq -64(%rbp),%xmm2,%xmm10 3226 xorq %r8,%r15 3227 shrdq $28,%r14,%r14 3228 addq %rcx,%r10 3229 addq %r15,%rcx 3230 movq %r10,%r13 3231 addq %rcx,%r14 3232 vmovdqa %xmm10,32(%rsp) 3233 vpalignr $8,%xmm3,%xmm4,%xmm8 3234 shrdq $23,%r13,%r13 3235 movq %r14,%rcx 3236 vpalignr $8,%xmm7,%xmm0,%xmm11 3237 movq %r11,%r12 3238 shrdq $5,%r14,%r14 3239 vpsrlq $1,%xmm8,%xmm10 3240 xorq %r10,%r13 3241 xorq %rax,%r12 3242 vpaddq %xmm11,%xmm3,%xmm3 3243 shrdq $4,%r13,%r13 3244 xorq %rcx,%r14 3245 vpsrlq $7,%xmm8,%xmm11 3246 andq %r10,%r12 3247 xorq %r10,%r13 3248 vpsllq $56,%xmm8,%xmm9 3249 addq 48(%rsp),%rbx 3250 movq %rcx,%r15 3251 vpxor %xmm10,%xmm11,%xmm8 3252 xorq %rax,%r12 3253 shrdq $6,%r14,%r14 3254 vpsrlq $7,%xmm10,%xmm10 3255 xorq %rdx,%r15 3256 addq %r12,%rbx 3257 vpxor %xmm9,%xmm8,%xmm8 3258 shrdq $14,%r13,%r13 3259 andq %r15,%rdi 3260 vpsllq $7,%xmm9,%xmm9 3261 xorq %rcx,%r14 3262 addq %r13,%rbx 3263 vpxor %xmm10,%xmm8,%xmm8 3264 xorq %rdx,%rdi 3265 shrdq $28,%r14,%r14 3266 vpsrlq $6,%xmm2,%xmm11 3267 addq %rbx,%r9 3268 addq %rdi,%rbx 3269 vpxor %xmm9,%xmm8,%xmm8 3270 movq %r9,%r13 3271 addq %rbx,%r14 3272 vpsllq $3,%xmm2,%xmm10 3273 shrdq $23,%r13,%r13 3274 movq %r14,%rbx 3275 vpaddq %xmm8,%xmm3,%xmm3 3276 movq %r10,%r12 3277 shrdq $5,%r14,%r14 3278 vpsrlq $19,%xmm2,%xmm9 3279 xorq %r9,%r13 3280 xorq %r11,%r12 3281 vpxor %xmm10,%xmm11,%xmm11 3282 shrdq $4,%r13,%r13 3283 xorq %rbx,%r14 3284 vpsllq $42,%xmm10,%xmm10 3285 andq %r9,%r12 3286 xorq %r9,%r13 3287 vpxor %xmm9,%xmm11,%xmm11 3288 addq 56(%rsp),%rax 3289 movq %rbx,%rdi 3290 vpsrlq $42,%xmm9,%xmm9 3291 xorq %r11,%r12 3292 shrdq $6,%r14,%r14 3293 vpxor %xmm10,%xmm11,%xmm11 3294 xorq %rcx,%rdi 3295 addq %r12,%rax 3296 vpxor %xmm9,%xmm11,%xmm11 3297 shrdq $14,%r13,%r13 3298 andq %rdi,%r15 3299 vpaddq %xmm11,%xmm3,%xmm3 3300 xorq %rbx,%r14 3301 addq %r13,%rax 3302 vpaddq -32(%rbp),%xmm3,%xmm10 3303 xorq %rcx,%r15 3304 shrdq $28,%r14,%r14 3305 addq %rax,%r8 3306 addq %r15,%rax 3307 movq %r8,%r13 3308 addq %rax,%r14 3309 vmovdqa %xmm10,48(%rsp) 3310 vpalignr $8,%xmm4,%xmm5,%xmm8 3311 shrdq $23,%r13,%r13 3312 movq %r14,%rax 3313 vpalignr $8,%xmm0,%xmm1,%xmm11 3314 movq %r9,%r12 3315 shrdq $5,%r14,%r14 3316 vpsrlq $1,%xmm8,%xmm10 3317 xorq %r8,%r13 3318 xorq %r10,%r12 3319 vpaddq %xmm11,%xmm4,%xmm4 3320 shrdq $4,%r13,%r13 3321 xorq %rax,%r14 3322 vpsrlq $7,%xmm8,%xmm11 3323 andq %r8,%r12 3324 xorq %r8,%r13 3325 vpsllq $56,%xmm8,%xmm9 3326 addq 64(%rsp),%r11 3327 movq %rax,%r15 3328 vpxor %xmm10,%xmm11,%xmm8 3329 xorq %r10,%r12 3330 shrdq $6,%r14,%r14 3331 vpsrlq $7,%xmm10,%xmm10 3332 xorq %rbx,%r15 3333 addq %r12,%r11 3334 vpxor %xmm9,%xmm8,%xmm8 3335 shrdq $14,%r13,%r13 3336 andq %r15,%rdi 3337 vpsllq $7,%xmm9,%xmm9 3338 xorq %rax,%r14 3339 addq %r13,%r11 3340 vpxor %xmm10,%xmm8,%xmm8 3341 xorq %rbx,%rdi 3342 shrdq $28,%r14,%r14 3343 vpsrlq $6,%xmm3,%xmm11 3344 addq %r11,%rdx 3345 addq %rdi,%r11 3346 vpxor %xmm9,%xmm8,%xmm8 3347 movq %rdx,%r13 3348 addq %r11,%r14 3349 vpsllq $3,%xmm3,%xmm10 3350 shrdq $23,%r13,%r13 3351 movq %r14,%r11 3352 vpaddq %xmm8,%xmm4,%xmm4 3353 movq %r8,%r12 3354 shrdq $5,%r14,%r14 3355 vpsrlq $19,%xmm3,%xmm9 3356 xorq %rdx,%r13 3357 xorq %r9,%r12 3358 vpxor %xmm10,%xmm11,%xmm11 3359 shrdq $4,%r13,%r13 3360 xorq %r11,%r14 3361 vpsllq $42,%xmm10,%xmm10 3362 andq %rdx,%r12 3363 xorq %rdx,%r13 3364 vpxor %xmm9,%xmm11,%xmm11 3365 addq 72(%rsp),%r10 3366 movq %r11,%rdi 3367 vpsrlq $42,%xmm9,%xmm9 3368 xorq %r9,%r12 3369 shrdq $6,%r14,%r14 3370 vpxor %xmm10,%xmm11,%xmm11 3371 xorq %rax,%rdi 3372 addq %r12,%r10 3373 vpxor %xmm9,%xmm11,%xmm11 3374 shrdq $14,%r13,%r13 3375 andq %rdi,%r15 3376 vpaddq %xmm11,%xmm4,%xmm4 3377 xorq %r11,%r14 3378 addq %r13,%r10 3379 vpaddq 0(%rbp),%xmm4,%xmm10 3380 xorq %rax,%r15 3381 shrdq $28,%r14,%r14 3382 addq %r10,%rcx 3383 addq %r15,%r10 3384 movq %rcx,%r13 3385 addq %r10,%r14 3386 vmovdqa %xmm10,64(%rsp) 3387 vpalignr $8,%xmm5,%xmm6,%xmm8 3388 shrdq $23,%r13,%r13 3389 movq %r14,%r10 3390 vpalignr $8,%xmm1,%xmm2,%xmm11 3391 movq %rdx,%r12 3392 shrdq $5,%r14,%r14 3393 vpsrlq $1,%xmm8,%xmm10 3394 xorq %rcx,%r13 3395 xorq %r8,%r12 3396 vpaddq %xmm11,%xmm5,%xmm5 3397 shrdq $4,%r13,%r13 3398 xorq %r10,%r14 3399 vpsrlq $7,%xmm8,%xmm11 3400 andq %rcx,%r12 3401 xorq %rcx,%r13 3402 vpsllq $56,%xmm8,%xmm9 3403 addq 80(%rsp),%r9 3404 movq %r10,%r15 3405 vpxor %xmm10,%xmm11,%xmm8 3406 xorq %r8,%r12 3407 shrdq $6,%r14,%r14 3408 vpsrlq $7,%xmm10,%xmm10 3409 xorq %r11,%r15 3410 addq %r12,%r9 3411 vpxor %xmm9,%xmm8,%xmm8 3412 shrdq $14,%r13,%r13 3413 andq %r15,%rdi 3414 vpsllq $7,%xmm9,%xmm9 3415 xorq %r10,%r14 3416 addq %r13,%r9 3417 vpxor %xmm10,%xmm8,%xmm8 3418 xorq %r11,%rdi 3419 shrdq $28,%r14,%r14 3420 vpsrlq $6,%xmm4,%xmm11 3421 addq %r9,%rbx 3422 addq %rdi,%r9 3423 vpxor %xmm9,%xmm8,%xmm8 3424 movq %rbx,%r13 3425 addq %r9,%r14 3426 vpsllq $3,%xmm4,%xmm10 3427 shrdq $23,%r13,%r13 3428 movq %r14,%r9 3429 vpaddq %xmm8,%xmm5,%xmm5 3430 movq %rcx,%r12 3431 shrdq $5,%r14,%r14 3432 vpsrlq $19,%xmm4,%xmm9 3433 xorq %rbx,%r13 3434 xorq %rdx,%r12 3435 vpxor %xmm10,%xmm11,%xmm11 3436 shrdq $4,%r13,%r13 3437 xorq %r9,%r14 3438 vpsllq $42,%xmm10,%xmm10 3439 andq %rbx,%r12 3440 xorq %rbx,%r13 3441 vpxor %xmm9,%xmm11,%xmm11 3442 addq 88(%rsp),%r8 3443 movq %r9,%rdi 3444 vpsrlq $42,%xmm9,%xmm9 3445 xorq %rdx,%r12 3446 shrdq $6,%r14,%r14 3447 vpxor %xmm10,%xmm11,%xmm11 3448 xorq %r10,%rdi 3449 addq %r12,%r8 3450 vpxor %xmm9,%xmm11,%xmm11 3451 shrdq $14,%r13,%r13 3452 andq %rdi,%r15 3453 vpaddq %xmm11,%xmm5,%xmm5 3454 xorq %r9,%r14 3455 addq %r13,%r8 3456 vpaddq 32(%rbp),%xmm5,%xmm10 3457 xorq %r10,%r15 3458 shrdq $28,%r14,%r14 3459 addq %r8,%rax 3460 addq %r15,%r8 3461 movq %rax,%r13 3462 addq %r8,%r14 3463 vmovdqa %xmm10,80(%rsp) 3464 vpalignr $8,%xmm6,%xmm7,%xmm8 3465 shrdq $23,%r13,%r13 3466 movq %r14,%r8 3467 vpalignr $8,%xmm2,%xmm3,%xmm11 3468 movq %rbx,%r12 3469 shrdq $5,%r14,%r14 3470 vpsrlq $1,%xmm8,%xmm10 3471 xorq %rax,%r13 3472 xorq %rcx,%r12 3473 vpaddq %xmm11,%xmm6,%xmm6 3474 shrdq $4,%r13,%r13 3475 xorq %r8,%r14 3476 vpsrlq $7,%xmm8,%xmm11 3477 andq %rax,%r12 3478 xorq %rax,%r13 3479 vpsllq $56,%xmm8,%xmm9 3480 addq 96(%rsp),%rdx 3481 movq %r8,%r15 3482 vpxor %xmm10,%xmm11,%xmm8 3483 xorq %rcx,%r12 3484 shrdq $6,%r14,%r14 3485 vpsrlq $7,%xmm10,%xmm10 3486 xorq %r9,%r15 3487 addq %r12,%rdx 3488 vpxor %xmm9,%xmm8,%xmm8 3489 shrdq $14,%r13,%r13 3490 andq %r15,%rdi 3491 vpsllq $7,%xmm9,%xmm9 3492 xorq %r8,%r14 3493 addq %r13,%rdx 3494 vpxor %xmm10,%xmm8,%xmm8 3495 xorq %r9,%rdi 3496 shrdq $28,%r14,%r14 3497 vpsrlq $6,%xmm5,%xmm11 3498 addq %rdx,%r11 3499 addq %rdi,%rdx 3500 vpxor %xmm9,%xmm8,%xmm8 3501 movq %r11,%r13 3502 addq %rdx,%r14 3503 vpsllq $3,%xmm5,%xmm10 3504 shrdq $23,%r13,%r13 3505 movq %r14,%rdx 3506 vpaddq %xmm8,%xmm6,%xmm6 3507 movq %rax,%r12 3508 shrdq $5,%r14,%r14 3509 vpsrlq $19,%xmm5,%xmm9 3510 xorq %r11,%r13 3511 xorq %rbx,%r12 3512 vpxor %xmm10,%xmm11,%xmm11 3513 shrdq $4,%r13,%r13 3514 xorq %rdx,%r14 3515 vpsllq $42,%xmm10,%xmm10 3516 andq %r11,%r12 3517 xorq %r11,%r13 3518 vpxor %xmm9,%xmm11,%xmm11 3519 addq 104(%rsp),%rcx 3520 movq %rdx,%rdi 3521 vpsrlq $42,%xmm9,%xmm9 3522 xorq %rbx,%r12 3523 shrdq $6,%r14,%r14 3524 vpxor %xmm10,%xmm11,%xmm11 3525 xorq %r8,%rdi 3526 addq %r12,%rcx 3527 vpxor %xmm9,%xmm11,%xmm11 3528 shrdq $14,%r13,%r13 3529 andq %rdi,%r15 3530 vpaddq %xmm11,%xmm6,%xmm6 3531 xorq %rdx,%r14 3532 addq %r13,%rcx 3533 vpaddq 64(%rbp),%xmm6,%xmm10 3534 xorq %r8,%r15 3535 shrdq $28,%r14,%r14 3536 addq %rcx,%r10 3537 addq %r15,%rcx 3538 movq %r10,%r13 3539 addq %rcx,%r14 3540 vmovdqa %xmm10,96(%rsp) 3541 vpalignr $8,%xmm7,%xmm0,%xmm8 3542 shrdq $23,%r13,%r13 3543 movq %r14,%rcx 3544 vpalignr $8,%xmm3,%xmm4,%xmm11 3545 movq %r11,%r12 3546 shrdq $5,%r14,%r14 3547 vpsrlq $1,%xmm8,%xmm10 3548 xorq %r10,%r13 3549 xorq %rax,%r12 3550 vpaddq %xmm11,%xmm7,%xmm7 3551 shrdq $4,%r13,%r13 3552 xorq %rcx,%r14 3553 vpsrlq $7,%xmm8,%xmm11 3554 andq %r10,%r12 3555 xorq %r10,%r13 3556 vpsllq $56,%xmm8,%xmm9 3557 addq 112(%rsp),%rbx 3558 movq %rcx,%r15 3559 vpxor %xmm10,%xmm11,%xmm8 3560 xorq %rax,%r12 3561 shrdq $6,%r14,%r14 3562 vpsrlq $7,%xmm10,%xmm10 3563 xorq %rdx,%r15 3564 addq %r12,%rbx 3565 vpxor %xmm9,%xmm8,%xmm8 3566 shrdq $14,%r13,%r13 3567 andq %r15,%rdi 3568 vpsllq $7,%xmm9,%xmm9 3569 xorq %rcx,%r14 3570 addq %r13,%rbx 3571 vpxor %xmm10,%xmm8,%xmm8 3572 xorq %rdx,%rdi 3573 shrdq $28,%r14,%r14 3574 vpsrlq $6,%xmm6,%xmm11 3575 addq %rbx,%r9 3576 addq %rdi,%rbx 3577 vpxor %xmm9,%xmm8,%xmm8 3578 movq %r9,%r13 3579 addq %rbx,%r14 3580 vpsllq $3,%xmm6,%xmm10 3581 shrdq $23,%r13,%r13 3582 movq %r14,%rbx 3583 vpaddq %xmm8,%xmm7,%xmm7 3584 movq %r10,%r12 3585 shrdq $5,%r14,%r14 3586 vpsrlq $19,%xmm6,%xmm9 3587 xorq %r9,%r13 3588 xorq %r11,%r12 3589 vpxor %xmm10,%xmm11,%xmm11 3590 shrdq $4,%r13,%r13 3591 xorq %rbx,%r14 3592 vpsllq $42,%xmm10,%xmm10 3593 andq %r9,%r12 3594 xorq %r9,%r13 3595 vpxor %xmm9,%xmm11,%xmm11 3596 addq 120(%rsp),%rax 3597 movq %rbx,%rdi 3598 vpsrlq $42,%xmm9,%xmm9 3599 xorq %r11,%r12 3600 shrdq $6,%r14,%r14 3601 vpxor %xmm10,%xmm11,%xmm11 3602 xorq %rcx,%rdi 3603 addq %r12,%rax 3604 vpxor %xmm9,%xmm11,%xmm11 3605 shrdq $14,%r13,%r13 3606 andq %rdi,%r15 3607 vpaddq %xmm11,%xmm7,%xmm7 3608 xorq %rbx,%r14 3609 addq %r13,%rax 3610 vpaddq 96(%rbp),%xmm7,%xmm10 3611 xorq %rcx,%r15 3612 shrdq $28,%r14,%r14 3613 addq %rax,%r8 3614 addq %r15,%rax 3615 movq %r8,%r13 3616 addq %rax,%r14 3617 vmovdqa %xmm10,112(%rsp) 3618 cmpb $0,135(%rbp) 3619 jne .Lavx_00_47 3620 shrdq $23,%r13,%r13 3621 movq %r14,%rax 3622 movq %r9,%r12 3623 shrdq $5,%r14,%r14 3624 xorq %r8,%r13 3625 xorq %r10,%r12 3626 shrdq $4,%r13,%r13 3627 xorq %rax,%r14 3628 andq %r8,%r12 3629 xorq %r8,%r13 3630 addq 0(%rsp),%r11 3631 movq %rax,%r15 3632 xorq %r10,%r12 3633 shrdq $6,%r14,%r14 3634 xorq %rbx,%r15 3635 addq %r12,%r11 3636 shrdq $14,%r13,%r13 3637 andq %r15,%rdi 3638 xorq %rax,%r14 3639 addq %r13,%r11 3640 xorq %rbx,%rdi 3641 shrdq $28,%r14,%r14 3642 addq %r11,%rdx 3643 addq %rdi,%r11 3644 movq %rdx,%r13 3645 addq %r11,%r14 3646 shrdq $23,%r13,%r13 3647 movq %r14,%r11 3648 movq %r8,%r12 3649 shrdq $5,%r14,%r14 3650 xorq %rdx,%r13 3651 xorq %r9,%r12 3652 shrdq $4,%r13,%r13 3653 xorq %r11,%r14 3654 andq %rdx,%r12 3655 xorq %rdx,%r13 3656 addq 8(%rsp),%r10 3657 movq %r11,%rdi 3658 xorq %r9,%r12 3659 shrdq $6,%r14,%r14 3660 xorq %rax,%rdi 3661 addq %r12,%r10 3662 shrdq $14,%r13,%r13 3663 andq %rdi,%r15 3664 xorq %r11,%r14 3665 addq %r13,%r10 3666 xorq %rax,%r15 3667 shrdq $28,%r14,%r14 3668 addq %r10,%rcx 3669 addq %r15,%r10 3670 movq %rcx,%r13 3671 addq %r10,%r14 3672 shrdq $23,%r13,%r13 3673 movq %r14,%r10 3674 movq %rdx,%r12 3675 shrdq $5,%r14,%r14 3676 xorq %rcx,%r13 3677 xorq %r8,%r12 3678 shrdq $4,%r13,%r13 3679 xorq %r10,%r14 3680 andq %rcx,%r12 3681 xorq %rcx,%r13 3682 addq 16(%rsp),%r9 3683 movq %r10,%r15 3684 xorq %r8,%r12 3685 shrdq $6,%r14,%r14 3686 xorq %r11,%r15 3687 addq %r12,%r9 3688 shrdq $14,%r13,%r13 3689 andq %r15,%rdi 3690 xorq %r10,%r14 3691 addq %r13,%r9 3692 xorq %r11,%rdi 3693 shrdq $28,%r14,%r14 3694 addq %r9,%rbx 3695 addq %rdi,%r9 3696 movq %rbx,%r13 3697 addq %r9,%r14 3698 shrdq $23,%r13,%r13 3699 movq %r14,%r9 3700 movq %rcx,%r12 3701 shrdq $5,%r14,%r14 3702 xorq %rbx,%r13 3703 xorq %rdx,%r12 3704 shrdq $4,%r13,%r13 3705 xorq %r9,%r14 3706 andq %rbx,%r12 3707 xorq %rbx,%r13 3708 addq 24(%rsp),%r8 3709 movq %r9,%rdi 3710 xorq %rdx,%r12 3711 shrdq $6,%r14,%r14 3712 xorq %r10,%rdi 3713 addq %r12,%r8 3714 shrdq $14,%r13,%r13 3715 andq %rdi,%r15 3716 xorq %r9,%r14 3717 addq %r13,%r8 3718 xorq %r10,%r15 3719 shrdq $28,%r14,%r14 3720 addq %r8,%rax 3721 addq %r15,%r8 3722 movq %rax,%r13 3723 addq %r8,%r14 3724 shrdq $23,%r13,%r13 3725 movq %r14,%r8 3726 movq %rbx,%r12 3727 shrdq $5,%r14,%r14 3728 xorq %rax,%r13 3729 xorq %rcx,%r12 3730 shrdq $4,%r13,%r13 3731 xorq %r8,%r14 3732 andq %rax,%r12 3733 xorq %rax,%r13 3734 addq 32(%rsp),%rdx 3735 movq %r8,%r15 3736 xorq %rcx,%r12 3737 shrdq $6,%r14,%r14 3738 xorq %r9,%r15 3739 addq %r12,%rdx 3740 shrdq $14,%r13,%r13 3741 andq %r15,%rdi 3742 xorq %r8,%r14 3743 addq %r13,%rdx 3744 xorq %r9,%rdi 3745 shrdq $28,%r14,%r14 3746 addq %rdx,%r11 3747 addq %rdi,%rdx 3748 movq %r11,%r13 3749 addq %rdx,%r14 3750 shrdq $23,%r13,%r13 3751 movq %r14,%rdx 3752 movq %rax,%r12 3753 shrdq $5,%r14,%r14 3754 xorq %r11,%r13 3755 xorq %rbx,%r12 3756 shrdq $4,%r13,%r13 3757 xorq %rdx,%r14 3758 andq %r11,%r12 3759 xorq %r11,%r13 3760 addq 40(%rsp),%rcx 3761 movq %rdx,%rdi 3762 xorq %rbx,%r12 3763 shrdq $6,%r14,%r14 3764 xorq %r8,%rdi 3765 addq %r12,%rcx 3766 shrdq $14,%r13,%r13 3767 andq %rdi,%r15 3768 xorq %rdx,%r14 3769 addq %r13,%rcx 3770 xorq %r8,%r15 3771 shrdq $28,%r14,%r14 3772 addq %rcx,%r10 3773 addq %r15,%rcx 3774 movq %r10,%r13 3775 addq %rcx,%r14 3776 shrdq $23,%r13,%r13 3777 movq %r14,%rcx 3778 movq %r11,%r12 3779 shrdq $5,%r14,%r14 3780 xorq %r10,%r13 3781 xorq %rax,%r12 3782 shrdq $4,%r13,%r13 3783 xorq %rcx,%r14 3784 andq %r10,%r12 3785 xorq %r10,%r13 3786 addq 48(%rsp),%rbx 3787 movq %rcx,%r15 3788 xorq %rax,%r12 3789 shrdq $6,%r14,%r14 3790 xorq %rdx,%r15 3791 addq %r12,%rbx 3792 shrdq $14,%r13,%r13 3793 andq %r15,%rdi 3794 xorq %rcx,%r14 3795 addq %r13,%rbx 3796 xorq %rdx,%rdi 3797 shrdq $28,%r14,%r14 3798 addq %rbx,%r9 3799 addq %rdi,%rbx 3800 movq %r9,%r13 3801 addq %rbx,%r14 3802 shrdq $23,%r13,%r13 3803 movq %r14,%rbx 3804 movq %r10,%r12 3805 shrdq $5,%r14,%r14 3806 xorq %r9,%r13 3807 xorq %r11,%r12 3808 shrdq $4,%r13,%r13 3809 xorq %rbx,%r14 3810 andq %r9,%r12 3811 xorq %r9,%r13 3812 addq 56(%rsp),%rax 3813 movq %rbx,%rdi 3814 xorq %r11,%r12 3815 shrdq $6,%r14,%r14 3816 xorq %rcx,%rdi 3817 addq %r12,%rax 3818 shrdq $14,%r13,%r13 3819 andq %rdi,%r15 3820 xorq %rbx,%r14 3821 addq %r13,%rax 3822 xorq %rcx,%r15 3823 shrdq $28,%r14,%r14 3824 addq %rax,%r8 3825 addq %r15,%rax 3826 movq %r8,%r13 3827 addq %rax,%r14 3828 shrdq $23,%r13,%r13 3829 movq %r14,%rax 3830 movq %r9,%r12 3831 shrdq $5,%r14,%r14 3832 xorq %r8,%r13 3833 xorq %r10,%r12 3834 shrdq $4,%r13,%r13 3835 xorq %rax,%r14 3836 andq %r8,%r12 3837 xorq %r8,%r13 3838 addq 64(%rsp),%r11 3839 movq %rax,%r15 3840 xorq %r10,%r12 3841 shrdq $6,%r14,%r14 3842 xorq %rbx,%r15 3843 addq %r12,%r11 3844 shrdq $14,%r13,%r13 3845 andq %r15,%rdi 3846 xorq %rax,%r14 3847 addq %r13,%r11 3848 xorq %rbx,%rdi 3849 shrdq $28,%r14,%r14 3850 addq %r11,%rdx 3851 addq %rdi,%r11 3852 movq %rdx,%r13 3853 addq %r11,%r14 3854 shrdq $23,%r13,%r13 3855 movq %r14,%r11 3856 movq %r8,%r12 3857 shrdq $5,%r14,%r14 3858 xorq %rdx,%r13 3859 xorq %r9,%r12 3860 shrdq $4,%r13,%r13 3861 xorq %r11,%r14 3862 andq %rdx,%r12 3863 xorq %rdx,%r13 3864 addq 72(%rsp),%r10 3865 movq %r11,%rdi 3866 xorq %r9,%r12 3867 shrdq $6,%r14,%r14 3868 xorq %rax,%rdi 3869 addq %r12,%r10 3870 shrdq $14,%r13,%r13 3871 andq %rdi,%r15 3872 xorq %r11,%r14 3873 addq %r13,%r10 3874 xorq %rax,%r15 3875 shrdq $28,%r14,%r14 3876 addq %r10,%rcx 3877 addq %r15,%r10 3878 movq %rcx,%r13 3879 addq %r10,%r14 3880 shrdq $23,%r13,%r13 3881 movq %r14,%r10 3882 movq %rdx,%r12 3883 shrdq $5,%r14,%r14 3884 xorq %rcx,%r13 3885 xorq %r8,%r12 3886 shrdq $4,%r13,%r13 3887 xorq %r10,%r14 3888 andq %rcx,%r12 3889 xorq %rcx,%r13 3890 addq 80(%rsp),%r9 3891 movq %r10,%r15 3892 xorq %r8,%r12 3893 shrdq $6,%r14,%r14 3894 xorq %r11,%r15 3895 addq %r12,%r9 3896 shrdq $14,%r13,%r13 3897 andq %r15,%rdi 3898 xorq %r10,%r14 3899 addq %r13,%r9 3900 xorq %r11,%rdi 3901 shrdq $28,%r14,%r14 3902 addq %r9,%rbx 3903 addq %rdi,%r9 3904 movq %rbx,%r13 3905 addq %r9,%r14 3906 shrdq $23,%r13,%r13 3907 movq %r14,%r9 3908 movq %rcx,%r12 3909 shrdq $5,%r14,%r14 3910 xorq %rbx,%r13 3911 xorq %rdx,%r12 3912 shrdq $4,%r13,%r13 3913 xorq %r9,%r14 3914 andq %rbx,%r12 3915 xorq %rbx,%r13 3916 addq 88(%rsp),%r8 3917 movq %r9,%rdi 3918 xorq %rdx,%r12 3919 shrdq $6,%r14,%r14 3920 xorq %r10,%rdi 3921 addq %r12,%r8 3922 shrdq $14,%r13,%r13 3923 andq %rdi,%r15 3924 xorq %r9,%r14 3925 addq %r13,%r8 3926 xorq %r10,%r15 3927 shrdq $28,%r14,%r14 3928 addq %r8,%rax 3929 addq %r15,%r8 3930 movq %rax,%r13 3931 addq %r8,%r14 3932 shrdq $23,%r13,%r13 3933 movq %r14,%r8 3934 movq %rbx,%r12 3935 shrdq $5,%r14,%r14 3936 xorq %rax,%r13 3937 xorq %rcx,%r12 3938 shrdq $4,%r13,%r13 3939 xorq %r8,%r14 3940 andq %rax,%r12 3941 xorq %rax,%r13 3942 addq 96(%rsp),%rdx 3943 movq %r8,%r15 3944 xorq %rcx,%r12 3945 shrdq $6,%r14,%r14 3946 xorq %r9,%r15 3947 addq %r12,%rdx 3948 shrdq $14,%r13,%r13 3949 andq %r15,%rdi 3950 xorq %r8,%r14 3951 addq %r13,%rdx 3952 xorq %r9,%rdi 3953 shrdq $28,%r14,%r14 3954 addq %rdx,%r11 3955 addq %rdi,%rdx 3956 movq %r11,%r13 3957 addq %rdx,%r14 3958 shrdq $23,%r13,%r13 3959 movq %r14,%rdx 3960 movq %rax,%r12 3961 shrdq $5,%r14,%r14 3962 xorq %r11,%r13 3963 xorq %rbx,%r12 3964 shrdq $4,%r13,%r13 3965 xorq %rdx,%r14 3966 andq %r11,%r12 3967 xorq %r11,%r13 3968 addq 104(%rsp),%rcx 3969 movq %rdx,%rdi 3970 xorq %rbx,%r12 3971 shrdq $6,%r14,%r14 3972 xorq %r8,%rdi 3973 addq %r12,%rcx 3974 shrdq $14,%r13,%r13 3975 andq %rdi,%r15 3976 xorq %rdx,%r14 3977 addq %r13,%rcx 3978 xorq %r8,%r15 3979 shrdq $28,%r14,%r14 3980 addq %rcx,%r10 3981 addq %r15,%rcx 3982 movq %r10,%r13 3983 addq %rcx,%r14 3984 shrdq $23,%r13,%r13 3985 movq %r14,%rcx 3986 movq %r11,%r12 3987 shrdq $5,%r14,%r14 3988 xorq %r10,%r13 3989 xorq %rax,%r12 3990 shrdq $4,%r13,%r13 3991 xorq %rcx,%r14 3992 andq %r10,%r12 3993 xorq %r10,%r13 3994 addq 112(%rsp),%rbx 3995 movq %rcx,%r15 3996 xorq %rax,%r12 3997 shrdq $6,%r14,%r14 3998 xorq %rdx,%r15 3999 addq %r12,%rbx 4000 shrdq $14,%r13,%r13 4001 andq %r15,%rdi 4002 xorq %rcx,%r14 4003 addq %r13,%rbx 4004 xorq %rdx,%rdi 4005 shrdq $28,%r14,%r14 4006 addq %rbx,%r9 4007 addq %rdi,%rbx 4008 movq %r9,%r13 4009 addq %rbx,%r14 4010 shrdq $23,%r13,%r13 4011 movq %r14,%rbx 4012 movq %r10,%r12 4013 shrdq $5,%r14,%r14 4014 xorq %r9,%r13 4015 xorq %r11,%r12 4016 shrdq $4,%r13,%r13 4017 xorq %rbx,%r14 4018 andq %r9,%r12 4019 xorq %r9,%r13 4020 addq 120(%rsp),%rax 4021 movq %rbx,%rdi 4022 xorq %r11,%r12 4023 shrdq $6,%r14,%r14 4024 xorq %rcx,%rdi 4025 addq %r12,%rax 4026 shrdq $14,%r13,%r13 4027 andq %rdi,%r15 4028 xorq %rbx,%r14 4029 addq %r13,%rax 4030 xorq %rcx,%r15 4031 shrdq $28,%r14,%r14 4032 addq %rax,%r8 4033 addq %r15,%rax 4034 movq %r8,%r13 4035 addq %rax,%r14 4036 movq 128+0(%rsp),%rdi 4037 movq %r14,%rax 4038 4039 addq 0(%rdi),%rax 4040 leaq 128(%rsi),%rsi 4041 addq 8(%rdi),%rbx 4042 addq 16(%rdi),%rcx 4043 addq 24(%rdi),%rdx 4044 addq 32(%rdi),%r8 4045 addq 40(%rdi),%r9 4046 addq 48(%rdi),%r10 4047 addq 56(%rdi),%r11 4048 4049 cmpq 128+16(%rsp),%rsi 4050 4051 movq %rax,0(%rdi) 4052 movq %rbx,8(%rdi) 4053 movq %rcx,16(%rdi) 4054 movq %rdx,24(%rdi) 4055 movq %r8,32(%rdi) 4056 movq %r9,40(%rdi) 4057 movq %r10,48(%rdi) 4058 movq %r11,56(%rdi) 4059 jb .Lloop_avx 4060 4061 movq 152(%rsp),%rsi 4062.cfi_def_cfa %rsi,8 4063 vzeroupper 4064 movq -48(%rsi),%r15 4065.cfi_restore %r15 4066 movq -40(%rsi),%r14 4067.cfi_restore %r14 4068 movq -32(%rsi),%r13 4069.cfi_restore %r13 4070 movq -24(%rsi),%r12 4071.cfi_restore %r12 4072 movq -16(%rsi),%rbp 4073.cfi_restore %rbp 4074 movq -8(%rsi),%rbx 4075.cfi_restore %rbx 4076 leaq (%rsi),%rsp 4077.cfi_def_cfa_register %rsp 4078.Lepilogue_avx: 4079 .byte 0xf3,0xc3 4080.cfi_endproc 4081.size sha512_block_data_order_avx,.-sha512_block_data_order_avx 4082.type sha512_block_data_order_avx2,@function 4083.align 64 4084sha512_block_data_order_avx2: 4085.cfi_startproc 4086.Lavx2_shortcut: 4087 movq %rsp,%rax 4088.cfi_def_cfa_register %rax 4089 pushq %rbx 4090.cfi_offset %rbx,-16 4091 pushq %rbp 4092.cfi_offset %rbp,-24 4093 pushq %r12 4094.cfi_offset %r12,-32 4095 pushq %r13 4096.cfi_offset %r13,-40 4097 pushq %r14 4098.cfi_offset %r14,-48 4099 pushq %r15 4100.cfi_offset %r15,-56 4101 subq $1312,%rsp 4102 shlq $4,%rdx 4103 andq $-2048,%rsp 4104 leaq (%rsi,%rdx,8),%rdx 4105 addq $1152,%rsp 4106 movq %rdi,128+0(%rsp) 4107 movq %rsi,128+8(%rsp) 4108 movq %rdx,128+16(%rsp) 4109 movq %rax,152(%rsp) 4110.cfi_escape 0x0f,0x06,0x77,0x98,0x01,0x06,0x23,0x08 4111.Lprologue_avx2: 4112 4113 vzeroupper 4114 subq $-128,%rsi 4115 movq 0(%rdi),%rax 4116 movq %rsi,%r12 4117 movq 8(%rdi),%rbx 4118 cmpq %rdx,%rsi 4119 movq 16(%rdi),%rcx 4120 cmoveq %rsp,%r12 4121 movq 24(%rdi),%rdx 4122 movq 32(%rdi),%r8 4123 movq 40(%rdi),%r9 4124 movq 48(%rdi),%r10 4125 movq 56(%rdi),%r11 4126 jmp .Loop_avx2 4127.align 16 4128.Loop_avx2: 4129 vmovdqu -128(%rsi),%xmm0 4130 vmovdqu -128+16(%rsi),%xmm1 4131 vmovdqu -128+32(%rsi),%xmm2 4132 leaq K512+128(%rip),%rbp 4133 vmovdqu -128+48(%rsi),%xmm3 4134 vmovdqu -128+64(%rsi),%xmm4 4135 vmovdqu -128+80(%rsi),%xmm5 4136 vmovdqu -128+96(%rsi),%xmm6 4137 vmovdqu -128+112(%rsi),%xmm7 4138 4139 vmovdqa 1152(%rbp),%ymm10 4140 vinserti128 $1,(%r12),%ymm0,%ymm0 4141 vinserti128 $1,16(%r12),%ymm1,%ymm1 4142 vpshufb %ymm10,%ymm0,%ymm0 4143 vinserti128 $1,32(%r12),%ymm2,%ymm2 4144 vpshufb %ymm10,%ymm1,%ymm1 4145 vinserti128 $1,48(%r12),%ymm3,%ymm3 4146 vpshufb %ymm10,%ymm2,%ymm2 4147 vinserti128 $1,64(%r12),%ymm4,%ymm4 4148 vpshufb %ymm10,%ymm3,%ymm3 4149 vinserti128 $1,80(%r12),%ymm5,%ymm5 4150 vpshufb %ymm10,%ymm4,%ymm4 4151 vinserti128 $1,96(%r12),%ymm6,%ymm6 4152 vpshufb %ymm10,%ymm5,%ymm5 4153 vinserti128 $1,112(%r12),%ymm7,%ymm7 4154 4155 vpaddq -128(%rbp),%ymm0,%ymm8 4156 vpshufb %ymm10,%ymm6,%ymm6 4157 vpaddq -96(%rbp),%ymm1,%ymm9 4158 vpshufb %ymm10,%ymm7,%ymm7 4159 vpaddq -64(%rbp),%ymm2,%ymm10 4160 vpaddq -32(%rbp),%ymm3,%ymm11 4161 vmovdqa %ymm8,0(%rsp) 4162 vpaddq 0(%rbp),%ymm4,%ymm8 4163 vmovdqa %ymm9,32(%rsp) 4164 vpaddq 32(%rbp),%ymm5,%ymm9 4165 vmovdqa %ymm10,64(%rsp) 4166 vpaddq 64(%rbp),%ymm6,%ymm10 4167 vmovdqa %ymm11,96(%rsp) 4168 4169 movq 152(%rsp),%rdi 4170.cfi_def_cfa %rdi,8 4171 leaq -128(%rsp),%rsp 4172 4173 4174 4175 movq %rdi,-8(%rsp) 4176.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 4177 vpaddq 96(%rbp),%ymm7,%ymm11 4178 vmovdqa %ymm8,0(%rsp) 4179 xorq %r14,%r14 4180 vmovdqa %ymm9,32(%rsp) 4181 movq %rbx,%rdi 4182 vmovdqa %ymm10,64(%rsp) 4183 xorq %rcx,%rdi 4184 vmovdqa %ymm11,96(%rsp) 4185 movq %r9,%r12 4186 addq $32*8,%rbp 4187 jmp .Lavx2_00_47 4188 4189.align 16 4190.Lavx2_00_47: 4191 leaq -128(%rsp),%rsp 4192.cfi_escape 0x0f,0x06,0x77,0xf8,0x00,0x06,0x23,0x08 4193 4194 pushq 128-8(%rsp) 4195.cfi_escape 0x0f,0x05,0x77,0x00,0x06,0x23,0x08 4196 leaq 8(%rsp),%rsp 4197.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 4198 vpalignr $8,%ymm0,%ymm1,%ymm8 4199 addq 0+256(%rsp),%r11 4200 andq %r8,%r12 4201 rorxq $41,%r8,%r13 4202 vpalignr $8,%ymm4,%ymm5,%ymm11 4203 rorxq $18,%r8,%r15 4204 leaq (%rax,%r14,1),%rax 4205 leaq (%r11,%r12,1),%r11 4206 vpsrlq $1,%ymm8,%ymm10 4207 andnq %r10,%r8,%r12 4208 xorq %r15,%r13 4209 rorxq $14,%r8,%r14 4210 vpaddq %ymm11,%ymm0,%ymm0 4211 vpsrlq $7,%ymm8,%ymm11 4212 leaq (%r11,%r12,1),%r11 4213 xorq %r14,%r13 4214 movq %rax,%r15 4215 vpsllq $56,%ymm8,%ymm9 4216 vpxor %ymm10,%ymm11,%ymm8 4217 rorxq $39,%rax,%r12 4218 leaq (%r11,%r13,1),%r11 4219 xorq %rbx,%r15 4220 vpsrlq $7,%ymm10,%ymm10 4221 vpxor %ymm9,%ymm8,%ymm8 4222 rorxq $34,%rax,%r14 4223 rorxq $28,%rax,%r13 4224 leaq (%rdx,%r11,1),%rdx 4225 vpsllq $7,%ymm9,%ymm9 4226 vpxor %ymm10,%ymm8,%ymm8 4227 andq %r15,%rdi 4228 xorq %r12,%r14 4229 xorq %rbx,%rdi 4230 vpsrlq $6,%ymm7,%ymm11 4231 vpxor %ymm9,%ymm8,%ymm8 4232 xorq %r13,%r14 4233 leaq (%r11,%rdi,1),%r11 4234 movq %r8,%r12 4235 vpsllq $3,%ymm7,%ymm10 4236 vpaddq %ymm8,%ymm0,%ymm0 4237 addq 8+256(%rsp),%r10 4238 andq %rdx,%r12 4239 rorxq $41,%rdx,%r13 4240 vpsrlq $19,%ymm7,%ymm9 4241 vpxor %ymm10,%ymm11,%ymm11 4242 rorxq $18,%rdx,%rdi 4243 leaq (%r11,%r14,1),%r11 4244 leaq (%r10,%r12,1),%r10 4245 vpsllq $42,%ymm10,%ymm10 4246 vpxor %ymm9,%ymm11,%ymm11 4247 andnq %r9,%rdx,%r12 4248 xorq %rdi,%r13 4249 rorxq $14,%rdx,%r14 4250 vpsrlq $42,%ymm9,%ymm9 4251 vpxor %ymm10,%ymm11,%ymm11 4252 leaq (%r10,%r12,1),%r10 4253 xorq %r14,%r13 4254 movq %r11,%rdi 4255 vpxor %ymm9,%ymm11,%ymm11 4256 rorxq $39,%r11,%r12 4257 leaq (%r10,%r13,1),%r10 4258 xorq %rax,%rdi 4259 vpaddq %ymm11,%ymm0,%ymm0 4260 rorxq $34,%r11,%r14 4261 rorxq $28,%r11,%r13 4262 leaq (%rcx,%r10,1),%rcx 4263 vpaddq -128(%rbp),%ymm0,%ymm10 4264 andq %rdi,%r15 4265 xorq %r12,%r14 4266 xorq %rax,%r15 4267 xorq %r13,%r14 4268 leaq (%r10,%r15,1),%r10 4269 movq %rdx,%r12 4270 vmovdqa %ymm10,0(%rsp) 4271 vpalignr $8,%ymm1,%ymm2,%ymm8 4272 addq 32+256(%rsp),%r9 4273 andq %rcx,%r12 4274 rorxq $41,%rcx,%r13 4275 vpalignr $8,%ymm5,%ymm6,%ymm11 4276 rorxq $18,%rcx,%r15 4277 leaq (%r10,%r14,1),%r10 4278 leaq (%r9,%r12,1),%r9 4279 vpsrlq $1,%ymm8,%ymm10 4280 andnq %r8,%rcx,%r12 4281 xorq %r15,%r13 4282 rorxq $14,%rcx,%r14 4283 vpaddq %ymm11,%ymm1,%ymm1 4284 vpsrlq $7,%ymm8,%ymm11 4285 leaq (%r9,%r12,1),%r9 4286 xorq %r14,%r13 4287 movq %r10,%r15 4288 vpsllq $56,%ymm8,%ymm9 4289 vpxor %ymm10,%ymm11,%ymm8 4290 rorxq $39,%r10,%r12 4291 leaq (%r9,%r13,1),%r9 4292 xorq %r11,%r15 4293 vpsrlq $7,%ymm10,%ymm10 4294 vpxor %ymm9,%ymm8,%ymm8 4295 rorxq $34,%r10,%r14 4296 rorxq $28,%r10,%r13 4297 leaq (%rbx,%r9,1),%rbx 4298 vpsllq $7,%ymm9,%ymm9 4299 vpxor %ymm10,%ymm8,%ymm8 4300 andq %r15,%rdi 4301 xorq %r12,%r14 4302 xorq %r11,%rdi 4303 vpsrlq $6,%ymm0,%ymm11 4304 vpxor %ymm9,%ymm8,%ymm8 4305 xorq %r13,%r14 4306 leaq (%r9,%rdi,1),%r9 4307 movq %rcx,%r12 4308 vpsllq $3,%ymm0,%ymm10 4309 vpaddq %ymm8,%ymm1,%ymm1 4310 addq 40+256(%rsp),%r8 4311 andq %rbx,%r12 4312 rorxq $41,%rbx,%r13 4313 vpsrlq $19,%ymm0,%ymm9 4314 vpxor %ymm10,%ymm11,%ymm11 4315 rorxq $18,%rbx,%rdi 4316 leaq (%r9,%r14,1),%r9 4317 leaq (%r8,%r12,1),%r8 4318 vpsllq $42,%ymm10,%ymm10 4319 vpxor %ymm9,%ymm11,%ymm11 4320 andnq %rdx,%rbx,%r12 4321 xorq %rdi,%r13 4322 rorxq $14,%rbx,%r14 4323 vpsrlq $42,%ymm9,%ymm9 4324 vpxor %ymm10,%ymm11,%ymm11 4325 leaq (%r8,%r12,1),%r8 4326 xorq %r14,%r13 4327 movq %r9,%rdi 4328 vpxor %ymm9,%ymm11,%ymm11 4329 rorxq $39,%r9,%r12 4330 leaq (%r8,%r13,1),%r8 4331 xorq %r10,%rdi 4332 vpaddq %ymm11,%ymm1,%ymm1 4333 rorxq $34,%r9,%r14 4334 rorxq $28,%r9,%r13 4335 leaq (%rax,%r8,1),%rax 4336 vpaddq -96(%rbp),%ymm1,%ymm10 4337 andq %rdi,%r15 4338 xorq %r12,%r14 4339 xorq %r10,%r15 4340 xorq %r13,%r14 4341 leaq (%r8,%r15,1),%r8 4342 movq %rbx,%r12 4343 vmovdqa %ymm10,32(%rsp) 4344 vpalignr $8,%ymm2,%ymm3,%ymm8 4345 addq 64+256(%rsp),%rdx 4346 andq %rax,%r12 4347 rorxq $41,%rax,%r13 4348 vpalignr $8,%ymm6,%ymm7,%ymm11 4349 rorxq $18,%rax,%r15 4350 leaq (%r8,%r14,1),%r8 4351 leaq (%rdx,%r12,1),%rdx 4352 vpsrlq $1,%ymm8,%ymm10 4353 andnq %rcx,%rax,%r12 4354 xorq %r15,%r13 4355 rorxq $14,%rax,%r14 4356 vpaddq %ymm11,%ymm2,%ymm2 4357 vpsrlq $7,%ymm8,%ymm11 4358 leaq (%rdx,%r12,1),%rdx 4359 xorq %r14,%r13 4360 movq %r8,%r15 4361 vpsllq $56,%ymm8,%ymm9 4362 vpxor %ymm10,%ymm11,%ymm8 4363 rorxq $39,%r8,%r12 4364 leaq (%rdx,%r13,1),%rdx 4365 xorq %r9,%r15 4366 vpsrlq $7,%ymm10,%ymm10 4367 vpxor %ymm9,%ymm8,%ymm8 4368 rorxq $34,%r8,%r14 4369 rorxq $28,%r8,%r13 4370 leaq (%r11,%rdx,1),%r11 4371 vpsllq $7,%ymm9,%ymm9 4372 vpxor %ymm10,%ymm8,%ymm8 4373 andq %r15,%rdi 4374 xorq %r12,%r14 4375 xorq %r9,%rdi 4376 vpsrlq $6,%ymm1,%ymm11 4377 vpxor %ymm9,%ymm8,%ymm8 4378 xorq %r13,%r14 4379 leaq (%rdx,%rdi,1),%rdx 4380 movq %rax,%r12 4381 vpsllq $3,%ymm1,%ymm10 4382 vpaddq %ymm8,%ymm2,%ymm2 4383 addq 72+256(%rsp),%rcx 4384 andq %r11,%r12 4385 rorxq $41,%r11,%r13 4386 vpsrlq $19,%ymm1,%ymm9 4387 vpxor %ymm10,%ymm11,%ymm11 4388 rorxq $18,%r11,%rdi 4389 leaq (%rdx,%r14,1),%rdx 4390 leaq (%rcx,%r12,1),%rcx 4391 vpsllq $42,%ymm10,%ymm10 4392 vpxor %ymm9,%ymm11,%ymm11 4393 andnq %rbx,%r11,%r12 4394 xorq %rdi,%r13 4395 rorxq $14,%r11,%r14 4396 vpsrlq $42,%ymm9,%ymm9 4397 vpxor %ymm10,%ymm11,%ymm11 4398 leaq (%rcx,%r12,1),%rcx 4399 xorq %r14,%r13 4400 movq %rdx,%rdi 4401 vpxor %ymm9,%ymm11,%ymm11 4402 rorxq $39,%rdx,%r12 4403 leaq (%rcx,%r13,1),%rcx 4404 xorq %r8,%rdi 4405 vpaddq %ymm11,%ymm2,%ymm2 4406 rorxq $34,%rdx,%r14 4407 rorxq $28,%rdx,%r13 4408 leaq (%r10,%rcx,1),%r10 4409 vpaddq -64(%rbp),%ymm2,%ymm10 4410 andq %rdi,%r15 4411 xorq %r12,%r14 4412 xorq %r8,%r15 4413 xorq %r13,%r14 4414 leaq (%rcx,%r15,1),%rcx 4415 movq %r11,%r12 4416 vmovdqa %ymm10,64(%rsp) 4417 vpalignr $8,%ymm3,%ymm4,%ymm8 4418 addq 96+256(%rsp),%rbx 4419 andq %r10,%r12 4420 rorxq $41,%r10,%r13 4421 vpalignr $8,%ymm7,%ymm0,%ymm11 4422 rorxq $18,%r10,%r15 4423 leaq (%rcx,%r14,1),%rcx 4424 leaq (%rbx,%r12,1),%rbx 4425 vpsrlq $1,%ymm8,%ymm10 4426 andnq %rax,%r10,%r12 4427 xorq %r15,%r13 4428 rorxq $14,%r10,%r14 4429 vpaddq %ymm11,%ymm3,%ymm3 4430 vpsrlq $7,%ymm8,%ymm11 4431 leaq (%rbx,%r12,1),%rbx 4432 xorq %r14,%r13 4433 movq %rcx,%r15 4434 vpsllq $56,%ymm8,%ymm9 4435 vpxor %ymm10,%ymm11,%ymm8 4436 rorxq $39,%rcx,%r12 4437 leaq (%rbx,%r13,1),%rbx 4438 xorq %rdx,%r15 4439 vpsrlq $7,%ymm10,%ymm10 4440 vpxor %ymm9,%ymm8,%ymm8 4441 rorxq $34,%rcx,%r14 4442 rorxq $28,%rcx,%r13 4443 leaq (%r9,%rbx,1),%r9 4444 vpsllq $7,%ymm9,%ymm9 4445 vpxor %ymm10,%ymm8,%ymm8 4446 andq %r15,%rdi 4447 xorq %r12,%r14 4448 xorq %rdx,%rdi 4449 vpsrlq $6,%ymm2,%ymm11 4450 vpxor %ymm9,%ymm8,%ymm8 4451 xorq %r13,%r14 4452 leaq (%rbx,%rdi,1),%rbx 4453 movq %r10,%r12 4454 vpsllq $3,%ymm2,%ymm10 4455 vpaddq %ymm8,%ymm3,%ymm3 4456 addq 104+256(%rsp),%rax 4457 andq %r9,%r12 4458 rorxq $41,%r9,%r13 4459 vpsrlq $19,%ymm2,%ymm9 4460 vpxor %ymm10,%ymm11,%ymm11 4461 rorxq $18,%r9,%rdi 4462 leaq (%rbx,%r14,1),%rbx 4463 leaq (%rax,%r12,1),%rax 4464 vpsllq $42,%ymm10,%ymm10 4465 vpxor %ymm9,%ymm11,%ymm11 4466 andnq %r11,%r9,%r12 4467 xorq %rdi,%r13 4468 rorxq $14,%r9,%r14 4469 vpsrlq $42,%ymm9,%ymm9 4470 vpxor %ymm10,%ymm11,%ymm11 4471 leaq (%rax,%r12,1),%rax 4472 xorq %r14,%r13 4473 movq %rbx,%rdi 4474 vpxor %ymm9,%ymm11,%ymm11 4475 rorxq $39,%rbx,%r12 4476 leaq (%rax,%r13,1),%rax 4477 xorq %rcx,%rdi 4478 vpaddq %ymm11,%ymm3,%ymm3 4479 rorxq $34,%rbx,%r14 4480 rorxq $28,%rbx,%r13 4481 leaq (%r8,%rax,1),%r8 4482 vpaddq -32(%rbp),%ymm3,%ymm10 4483 andq %rdi,%r15 4484 xorq %r12,%r14 4485 xorq %rcx,%r15 4486 xorq %r13,%r14 4487 leaq (%rax,%r15,1),%rax 4488 movq %r9,%r12 4489 vmovdqa %ymm10,96(%rsp) 4490 leaq -128(%rsp),%rsp 4491.cfi_escape 0x0f,0x06,0x77,0xf8,0x00,0x06,0x23,0x08 4492 4493 pushq 128-8(%rsp) 4494.cfi_escape 0x0f,0x05,0x77,0x00,0x06,0x23,0x08 4495 leaq 8(%rsp),%rsp 4496.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 4497 vpalignr $8,%ymm4,%ymm5,%ymm8 4498 addq 0+256(%rsp),%r11 4499 andq %r8,%r12 4500 rorxq $41,%r8,%r13 4501 vpalignr $8,%ymm0,%ymm1,%ymm11 4502 rorxq $18,%r8,%r15 4503 leaq (%rax,%r14,1),%rax 4504 leaq (%r11,%r12,1),%r11 4505 vpsrlq $1,%ymm8,%ymm10 4506 andnq %r10,%r8,%r12 4507 xorq %r15,%r13 4508 rorxq $14,%r8,%r14 4509 vpaddq %ymm11,%ymm4,%ymm4 4510 vpsrlq $7,%ymm8,%ymm11 4511 leaq (%r11,%r12,1),%r11 4512 xorq %r14,%r13 4513 movq %rax,%r15 4514 vpsllq $56,%ymm8,%ymm9 4515 vpxor %ymm10,%ymm11,%ymm8 4516 rorxq $39,%rax,%r12 4517 leaq (%r11,%r13,1),%r11 4518 xorq %rbx,%r15 4519 vpsrlq $7,%ymm10,%ymm10 4520 vpxor %ymm9,%ymm8,%ymm8 4521 rorxq $34,%rax,%r14 4522 rorxq $28,%rax,%r13 4523 leaq (%rdx,%r11,1),%rdx 4524 vpsllq $7,%ymm9,%ymm9 4525 vpxor %ymm10,%ymm8,%ymm8 4526 andq %r15,%rdi 4527 xorq %r12,%r14 4528 xorq %rbx,%rdi 4529 vpsrlq $6,%ymm3,%ymm11 4530 vpxor %ymm9,%ymm8,%ymm8 4531 xorq %r13,%r14 4532 leaq (%r11,%rdi,1),%r11 4533 movq %r8,%r12 4534 vpsllq $3,%ymm3,%ymm10 4535 vpaddq %ymm8,%ymm4,%ymm4 4536 addq 8+256(%rsp),%r10 4537 andq %rdx,%r12 4538 rorxq $41,%rdx,%r13 4539 vpsrlq $19,%ymm3,%ymm9 4540 vpxor %ymm10,%ymm11,%ymm11 4541 rorxq $18,%rdx,%rdi 4542 leaq (%r11,%r14,1),%r11 4543 leaq (%r10,%r12,1),%r10 4544 vpsllq $42,%ymm10,%ymm10 4545 vpxor %ymm9,%ymm11,%ymm11 4546 andnq %r9,%rdx,%r12 4547 xorq %rdi,%r13 4548 rorxq $14,%rdx,%r14 4549 vpsrlq $42,%ymm9,%ymm9 4550 vpxor %ymm10,%ymm11,%ymm11 4551 leaq (%r10,%r12,1),%r10 4552 xorq %r14,%r13 4553 movq %r11,%rdi 4554 vpxor %ymm9,%ymm11,%ymm11 4555 rorxq $39,%r11,%r12 4556 leaq (%r10,%r13,1),%r10 4557 xorq %rax,%rdi 4558 vpaddq %ymm11,%ymm4,%ymm4 4559 rorxq $34,%r11,%r14 4560 rorxq $28,%r11,%r13 4561 leaq (%rcx,%r10,1),%rcx 4562 vpaddq 0(%rbp),%ymm4,%ymm10 4563 andq %rdi,%r15 4564 xorq %r12,%r14 4565 xorq %rax,%r15 4566 xorq %r13,%r14 4567 leaq (%r10,%r15,1),%r10 4568 movq %rdx,%r12 4569 vmovdqa %ymm10,0(%rsp) 4570 vpalignr $8,%ymm5,%ymm6,%ymm8 4571 addq 32+256(%rsp),%r9 4572 andq %rcx,%r12 4573 rorxq $41,%rcx,%r13 4574 vpalignr $8,%ymm1,%ymm2,%ymm11 4575 rorxq $18,%rcx,%r15 4576 leaq (%r10,%r14,1),%r10 4577 leaq (%r9,%r12,1),%r9 4578 vpsrlq $1,%ymm8,%ymm10 4579 andnq %r8,%rcx,%r12 4580 xorq %r15,%r13 4581 rorxq $14,%rcx,%r14 4582 vpaddq %ymm11,%ymm5,%ymm5 4583 vpsrlq $7,%ymm8,%ymm11 4584 leaq (%r9,%r12,1),%r9 4585 xorq %r14,%r13 4586 movq %r10,%r15 4587 vpsllq $56,%ymm8,%ymm9 4588 vpxor %ymm10,%ymm11,%ymm8 4589 rorxq $39,%r10,%r12 4590 leaq (%r9,%r13,1),%r9 4591 xorq %r11,%r15 4592 vpsrlq $7,%ymm10,%ymm10 4593 vpxor %ymm9,%ymm8,%ymm8 4594 rorxq $34,%r10,%r14 4595 rorxq $28,%r10,%r13 4596 leaq (%rbx,%r9,1),%rbx 4597 vpsllq $7,%ymm9,%ymm9 4598 vpxor %ymm10,%ymm8,%ymm8 4599 andq %r15,%rdi 4600 xorq %r12,%r14 4601 xorq %r11,%rdi 4602 vpsrlq $6,%ymm4,%ymm11 4603 vpxor %ymm9,%ymm8,%ymm8 4604 xorq %r13,%r14 4605 leaq (%r9,%rdi,1),%r9 4606 movq %rcx,%r12 4607 vpsllq $3,%ymm4,%ymm10 4608 vpaddq %ymm8,%ymm5,%ymm5 4609 addq 40+256(%rsp),%r8 4610 andq %rbx,%r12 4611 rorxq $41,%rbx,%r13 4612 vpsrlq $19,%ymm4,%ymm9 4613 vpxor %ymm10,%ymm11,%ymm11 4614 rorxq $18,%rbx,%rdi 4615 leaq (%r9,%r14,1),%r9 4616 leaq (%r8,%r12,1),%r8 4617 vpsllq $42,%ymm10,%ymm10 4618 vpxor %ymm9,%ymm11,%ymm11 4619 andnq %rdx,%rbx,%r12 4620 xorq %rdi,%r13 4621 rorxq $14,%rbx,%r14 4622 vpsrlq $42,%ymm9,%ymm9 4623 vpxor %ymm10,%ymm11,%ymm11 4624 leaq (%r8,%r12,1),%r8 4625 xorq %r14,%r13 4626 movq %r9,%rdi 4627 vpxor %ymm9,%ymm11,%ymm11 4628 rorxq $39,%r9,%r12 4629 leaq (%r8,%r13,1),%r8 4630 xorq %r10,%rdi 4631 vpaddq %ymm11,%ymm5,%ymm5 4632 rorxq $34,%r9,%r14 4633 rorxq $28,%r9,%r13 4634 leaq (%rax,%r8,1),%rax 4635 vpaddq 32(%rbp),%ymm5,%ymm10 4636 andq %rdi,%r15 4637 xorq %r12,%r14 4638 xorq %r10,%r15 4639 xorq %r13,%r14 4640 leaq (%r8,%r15,1),%r8 4641 movq %rbx,%r12 4642 vmovdqa %ymm10,32(%rsp) 4643 vpalignr $8,%ymm6,%ymm7,%ymm8 4644 addq 64+256(%rsp),%rdx 4645 andq %rax,%r12 4646 rorxq $41,%rax,%r13 4647 vpalignr $8,%ymm2,%ymm3,%ymm11 4648 rorxq $18,%rax,%r15 4649 leaq (%r8,%r14,1),%r8 4650 leaq (%rdx,%r12,1),%rdx 4651 vpsrlq $1,%ymm8,%ymm10 4652 andnq %rcx,%rax,%r12 4653 xorq %r15,%r13 4654 rorxq $14,%rax,%r14 4655 vpaddq %ymm11,%ymm6,%ymm6 4656 vpsrlq $7,%ymm8,%ymm11 4657 leaq (%rdx,%r12,1),%rdx 4658 xorq %r14,%r13 4659 movq %r8,%r15 4660 vpsllq $56,%ymm8,%ymm9 4661 vpxor %ymm10,%ymm11,%ymm8 4662 rorxq $39,%r8,%r12 4663 leaq (%rdx,%r13,1),%rdx 4664 xorq %r9,%r15 4665 vpsrlq $7,%ymm10,%ymm10 4666 vpxor %ymm9,%ymm8,%ymm8 4667 rorxq $34,%r8,%r14 4668 rorxq $28,%r8,%r13 4669 leaq (%r11,%rdx,1),%r11 4670 vpsllq $7,%ymm9,%ymm9 4671 vpxor %ymm10,%ymm8,%ymm8 4672 andq %r15,%rdi 4673 xorq %r12,%r14 4674 xorq %r9,%rdi 4675 vpsrlq $6,%ymm5,%ymm11 4676 vpxor %ymm9,%ymm8,%ymm8 4677 xorq %r13,%r14 4678 leaq (%rdx,%rdi,1),%rdx 4679 movq %rax,%r12 4680 vpsllq $3,%ymm5,%ymm10 4681 vpaddq %ymm8,%ymm6,%ymm6 4682 addq 72+256(%rsp),%rcx 4683 andq %r11,%r12 4684 rorxq $41,%r11,%r13 4685 vpsrlq $19,%ymm5,%ymm9 4686 vpxor %ymm10,%ymm11,%ymm11 4687 rorxq $18,%r11,%rdi 4688 leaq (%rdx,%r14,1),%rdx 4689 leaq (%rcx,%r12,1),%rcx 4690 vpsllq $42,%ymm10,%ymm10 4691 vpxor %ymm9,%ymm11,%ymm11 4692 andnq %rbx,%r11,%r12 4693 xorq %rdi,%r13 4694 rorxq $14,%r11,%r14 4695 vpsrlq $42,%ymm9,%ymm9 4696 vpxor %ymm10,%ymm11,%ymm11 4697 leaq (%rcx,%r12,1),%rcx 4698 xorq %r14,%r13 4699 movq %rdx,%rdi 4700 vpxor %ymm9,%ymm11,%ymm11 4701 rorxq $39,%rdx,%r12 4702 leaq (%rcx,%r13,1),%rcx 4703 xorq %r8,%rdi 4704 vpaddq %ymm11,%ymm6,%ymm6 4705 rorxq $34,%rdx,%r14 4706 rorxq $28,%rdx,%r13 4707 leaq (%r10,%rcx,1),%r10 4708 vpaddq 64(%rbp),%ymm6,%ymm10 4709 andq %rdi,%r15 4710 xorq %r12,%r14 4711 xorq %r8,%r15 4712 xorq %r13,%r14 4713 leaq (%rcx,%r15,1),%rcx 4714 movq %r11,%r12 4715 vmovdqa %ymm10,64(%rsp) 4716 vpalignr $8,%ymm7,%ymm0,%ymm8 4717 addq 96+256(%rsp),%rbx 4718 andq %r10,%r12 4719 rorxq $41,%r10,%r13 4720 vpalignr $8,%ymm3,%ymm4,%ymm11 4721 rorxq $18,%r10,%r15 4722 leaq (%rcx,%r14,1),%rcx 4723 leaq (%rbx,%r12,1),%rbx 4724 vpsrlq $1,%ymm8,%ymm10 4725 andnq %rax,%r10,%r12 4726 xorq %r15,%r13 4727 rorxq $14,%r10,%r14 4728 vpaddq %ymm11,%ymm7,%ymm7 4729 vpsrlq $7,%ymm8,%ymm11 4730 leaq (%rbx,%r12,1),%rbx 4731 xorq %r14,%r13 4732 movq %rcx,%r15 4733 vpsllq $56,%ymm8,%ymm9 4734 vpxor %ymm10,%ymm11,%ymm8 4735 rorxq $39,%rcx,%r12 4736 leaq (%rbx,%r13,1),%rbx 4737 xorq %rdx,%r15 4738 vpsrlq $7,%ymm10,%ymm10 4739 vpxor %ymm9,%ymm8,%ymm8 4740 rorxq $34,%rcx,%r14 4741 rorxq $28,%rcx,%r13 4742 leaq (%r9,%rbx,1),%r9 4743 vpsllq $7,%ymm9,%ymm9 4744 vpxor %ymm10,%ymm8,%ymm8 4745 andq %r15,%rdi 4746 xorq %r12,%r14 4747 xorq %rdx,%rdi 4748 vpsrlq $6,%ymm6,%ymm11 4749 vpxor %ymm9,%ymm8,%ymm8 4750 xorq %r13,%r14 4751 leaq (%rbx,%rdi,1),%rbx 4752 movq %r10,%r12 4753 vpsllq $3,%ymm6,%ymm10 4754 vpaddq %ymm8,%ymm7,%ymm7 4755 addq 104+256(%rsp),%rax 4756 andq %r9,%r12 4757 rorxq $41,%r9,%r13 4758 vpsrlq $19,%ymm6,%ymm9 4759 vpxor %ymm10,%ymm11,%ymm11 4760 rorxq $18,%r9,%rdi 4761 leaq (%rbx,%r14,1),%rbx 4762 leaq (%rax,%r12,1),%rax 4763 vpsllq $42,%ymm10,%ymm10 4764 vpxor %ymm9,%ymm11,%ymm11 4765 andnq %r11,%r9,%r12 4766 xorq %rdi,%r13 4767 rorxq $14,%r9,%r14 4768 vpsrlq $42,%ymm9,%ymm9 4769 vpxor %ymm10,%ymm11,%ymm11 4770 leaq (%rax,%r12,1),%rax 4771 xorq %r14,%r13 4772 movq %rbx,%rdi 4773 vpxor %ymm9,%ymm11,%ymm11 4774 rorxq $39,%rbx,%r12 4775 leaq (%rax,%r13,1),%rax 4776 xorq %rcx,%rdi 4777 vpaddq %ymm11,%ymm7,%ymm7 4778 rorxq $34,%rbx,%r14 4779 rorxq $28,%rbx,%r13 4780 leaq (%r8,%rax,1),%r8 4781 vpaddq 96(%rbp),%ymm7,%ymm10 4782 andq %rdi,%r15 4783 xorq %r12,%r14 4784 xorq %rcx,%r15 4785 xorq %r13,%r14 4786 leaq (%rax,%r15,1),%rax 4787 movq %r9,%r12 4788 vmovdqa %ymm10,96(%rsp) 4789 leaq 256(%rbp),%rbp 4790 cmpb $0,-121(%rbp) 4791 jne .Lavx2_00_47 4792 addq 0+128(%rsp),%r11 4793 andq %r8,%r12 4794 rorxq $41,%r8,%r13 4795 rorxq $18,%r8,%r15 4796 leaq (%rax,%r14,1),%rax 4797 leaq (%r11,%r12,1),%r11 4798 andnq %r10,%r8,%r12 4799 xorq %r15,%r13 4800 rorxq $14,%r8,%r14 4801 leaq (%r11,%r12,1),%r11 4802 xorq %r14,%r13 4803 movq %rax,%r15 4804 rorxq $39,%rax,%r12 4805 leaq (%r11,%r13,1),%r11 4806 xorq %rbx,%r15 4807 rorxq $34,%rax,%r14 4808 rorxq $28,%rax,%r13 4809 leaq (%rdx,%r11,1),%rdx 4810 andq %r15,%rdi 4811 xorq %r12,%r14 4812 xorq %rbx,%rdi 4813 xorq %r13,%r14 4814 leaq (%r11,%rdi,1),%r11 4815 movq %r8,%r12 4816 addq 8+128(%rsp),%r10 4817 andq %rdx,%r12 4818 rorxq $41,%rdx,%r13 4819 rorxq $18,%rdx,%rdi 4820 leaq (%r11,%r14,1),%r11 4821 leaq (%r10,%r12,1),%r10 4822 andnq %r9,%rdx,%r12 4823 xorq %rdi,%r13 4824 rorxq $14,%rdx,%r14 4825 leaq (%r10,%r12,1),%r10 4826 xorq %r14,%r13 4827 movq %r11,%rdi 4828 rorxq $39,%r11,%r12 4829 leaq (%r10,%r13,1),%r10 4830 xorq %rax,%rdi 4831 rorxq $34,%r11,%r14 4832 rorxq $28,%r11,%r13 4833 leaq (%rcx,%r10,1),%rcx 4834 andq %rdi,%r15 4835 xorq %r12,%r14 4836 xorq %rax,%r15 4837 xorq %r13,%r14 4838 leaq (%r10,%r15,1),%r10 4839 movq %rdx,%r12 4840 addq 32+128(%rsp),%r9 4841 andq %rcx,%r12 4842 rorxq $41,%rcx,%r13 4843 rorxq $18,%rcx,%r15 4844 leaq (%r10,%r14,1),%r10 4845 leaq (%r9,%r12,1),%r9 4846 andnq %r8,%rcx,%r12 4847 xorq %r15,%r13 4848 rorxq $14,%rcx,%r14 4849 leaq (%r9,%r12,1),%r9 4850 xorq %r14,%r13 4851 movq %r10,%r15 4852 rorxq $39,%r10,%r12 4853 leaq (%r9,%r13,1),%r9 4854 xorq %r11,%r15 4855 rorxq $34,%r10,%r14 4856 rorxq $28,%r10,%r13 4857 leaq (%rbx,%r9,1),%rbx 4858 andq %r15,%rdi 4859 xorq %r12,%r14 4860 xorq %r11,%rdi 4861 xorq %r13,%r14 4862 leaq (%r9,%rdi,1),%r9 4863 movq %rcx,%r12 4864 addq 40+128(%rsp),%r8 4865 andq %rbx,%r12 4866 rorxq $41,%rbx,%r13 4867 rorxq $18,%rbx,%rdi 4868 leaq (%r9,%r14,1),%r9 4869 leaq (%r8,%r12,1),%r8 4870 andnq %rdx,%rbx,%r12 4871 xorq %rdi,%r13 4872 rorxq $14,%rbx,%r14 4873 leaq (%r8,%r12,1),%r8 4874 xorq %r14,%r13 4875 movq %r9,%rdi 4876 rorxq $39,%r9,%r12 4877 leaq (%r8,%r13,1),%r8 4878 xorq %r10,%rdi 4879 rorxq $34,%r9,%r14 4880 rorxq $28,%r9,%r13 4881 leaq (%rax,%r8,1),%rax 4882 andq %rdi,%r15 4883 xorq %r12,%r14 4884 xorq %r10,%r15 4885 xorq %r13,%r14 4886 leaq (%r8,%r15,1),%r8 4887 movq %rbx,%r12 4888 addq 64+128(%rsp),%rdx 4889 andq %rax,%r12 4890 rorxq $41,%rax,%r13 4891 rorxq $18,%rax,%r15 4892 leaq (%r8,%r14,1),%r8 4893 leaq (%rdx,%r12,1),%rdx 4894 andnq %rcx,%rax,%r12 4895 xorq %r15,%r13 4896 rorxq $14,%rax,%r14 4897 leaq (%rdx,%r12,1),%rdx 4898 xorq %r14,%r13 4899 movq %r8,%r15 4900 rorxq $39,%r8,%r12 4901 leaq (%rdx,%r13,1),%rdx 4902 xorq %r9,%r15 4903 rorxq $34,%r8,%r14 4904 rorxq $28,%r8,%r13 4905 leaq (%r11,%rdx,1),%r11 4906 andq %r15,%rdi 4907 xorq %r12,%r14 4908 xorq %r9,%rdi 4909 xorq %r13,%r14 4910 leaq (%rdx,%rdi,1),%rdx 4911 movq %rax,%r12 4912 addq 72+128(%rsp),%rcx 4913 andq %r11,%r12 4914 rorxq $41,%r11,%r13 4915 rorxq $18,%r11,%rdi 4916 leaq (%rdx,%r14,1),%rdx 4917 leaq (%rcx,%r12,1),%rcx 4918 andnq %rbx,%r11,%r12 4919 xorq %rdi,%r13 4920 rorxq $14,%r11,%r14 4921 leaq (%rcx,%r12,1),%rcx 4922 xorq %r14,%r13 4923 movq %rdx,%rdi 4924 rorxq $39,%rdx,%r12 4925 leaq (%rcx,%r13,1),%rcx 4926 xorq %r8,%rdi 4927 rorxq $34,%rdx,%r14 4928 rorxq $28,%rdx,%r13 4929 leaq (%r10,%rcx,1),%r10 4930 andq %rdi,%r15 4931 xorq %r12,%r14 4932 xorq %r8,%r15 4933 xorq %r13,%r14 4934 leaq (%rcx,%r15,1),%rcx 4935 movq %r11,%r12 4936 addq 96+128(%rsp),%rbx 4937 andq %r10,%r12 4938 rorxq $41,%r10,%r13 4939 rorxq $18,%r10,%r15 4940 leaq (%rcx,%r14,1),%rcx 4941 leaq (%rbx,%r12,1),%rbx 4942 andnq %rax,%r10,%r12 4943 xorq %r15,%r13 4944 rorxq $14,%r10,%r14 4945 leaq (%rbx,%r12,1),%rbx 4946 xorq %r14,%r13 4947 movq %rcx,%r15 4948 rorxq $39,%rcx,%r12 4949 leaq (%rbx,%r13,1),%rbx 4950 xorq %rdx,%r15 4951 rorxq $34,%rcx,%r14 4952 rorxq $28,%rcx,%r13 4953 leaq (%r9,%rbx,1),%r9 4954 andq %r15,%rdi 4955 xorq %r12,%r14 4956 xorq %rdx,%rdi 4957 xorq %r13,%r14 4958 leaq (%rbx,%rdi,1),%rbx 4959 movq %r10,%r12 4960 addq 104+128(%rsp),%rax 4961 andq %r9,%r12 4962 rorxq $41,%r9,%r13 4963 rorxq $18,%r9,%rdi 4964 leaq (%rbx,%r14,1),%rbx 4965 leaq (%rax,%r12,1),%rax 4966 andnq %r11,%r9,%r12 4967 xorq %rdi,%r13 4968 rorxq $14,%r9,%r14 4969 leaq (%rax,%r12,1),%rax 4970 xorq %r14,%r13 4971 movq %rbx,%rdi 4972 rorxq $39,%rbx,%r12 4973 leaq (%rax,%r13,1),%rax 4974 xorq %rcx,%rdi 4975 rorxq $34,%rbx,%r14 4976 rorxq $28,%rbx,%r13 4977 leaq (%r8,%rax,1),%r8 4978 andq %rdi,%r15 4979 xorq %r12,%r14 4980 xorq %rcx,%r15 4981 xorq %r13,%r14 4982 leaq (%rax,%r15,1),%rax 4983 movq %r9,%r12 4984 addq 0(%rsp),%r11 4985 andq %r8,%r12 4986 rorxq $41,%r8,%r13 4987 rorxq $18,%r8,%r15 4988 leaq (%rax,%r14,1),%rax 4989 leaq (%r11,%r12,1),%r11 4990 andnq %r10,%r8,%r12 4991 xorq %r15,%r13 4992 rorxq $14,%r8,%r14 4993 leaq (%r11,%r12,1),%r11 4994 xorq %r14,%r13 4995 movq %rax,%r15 4996 rorxq $39,%rax,%r12 4997 leaq (%r11,%r13,1),%r11 4998 xorq %rbx,%r15 4999 rorxq $34,%rax,%r14 5000 rorxq $28,%rax,%r13 5001 leaq (%rdx,%r11,1),%rdx 5002 andq %r15,%rdi 5003 xorq %r12,%r14 5004 xorq %rbx,%rdi 5005 xorq %r13,%r14 5006 leaq (%r11,%rdi,1),%r11 5007 movq %r8,%r12 5008 addq 8(%rsp),%r10 5009 andq %rdx,%r12 5010 rorxq $41,%rdx,%r13 5011 rorxq $18,%rdx,%rdi 5012 leaq (%r11,%r14,1),%r11 5013 leaq (%r10,%r12,1),%r10 5014 andnq %r9,%rdx,%r12 5015 xorq %rdi,%r13 5016 rorxq $14,%rdx,%r14 5017 leaq (%r10,%r12,1),%r10 5018 xorq %r14,%r13 5019 movq %r11,%rdi 5020 rorxq $39,%r11,%r12 5021 leaq (%r10,%r13,1),%r10 5022 xorq %rax,%rdi 5023 rorxq $34,%r11,%r14 5024 rorxq $28,%r11,%r13 5025 leaq (%rcx,%r10,1),%rcx 5026 andq %rdi,%r15 5027 xorq %r12,%r14 5028 xorq %rax,%r15 5029 xorq %r13,%r14 5030 leaq (%r10,%r15,1),%r10 5031 movq %rdx,%r12 5032 addq 32(%rsp),%r9 5033 andq %rcx,%r12 5034 rorxq $41,%rcx,%r13 5035 rorxq $18,%rcx,%r15 5036 leaq (%r10,%r14,1),%r10 5037 leaq (%r9,%r12,1),%r9 5038 andnq %r8,%rcx,%r12 5039 xorq %r15,%r13 5040 rorxq $14,%rcx,%r14 5041 leaq (%r9,%r12,1),%r9 5042 xorq %r14,%r13 5043 movq %r10,%r15 5044 rorxq $39,%r10,%r12 5045 leaq (%r9,%r13,1),%r9 5046 xorq %r11,%r15 5047 rorxq $34,%r10,%r14 5048 rorxq $28,%r10,%r13 5049 leaq (%rbx,%r9,1),%rbx 5050 andq %r15,%rdi 5051 xorq %r12,%r14 5052 xorq %r11,%rdi 5053 xorq %r13,%r14 5054 leaq (%r9,%rdi,1),%r9 5055 movq %rcx,%r12 5056 addq 40(%rsp),%r8 5057 andq %rbx,%r12 5058 rorxq $41,%rbx,%r13 5059 rorxq $18,%rbx,%rdi 5060 leaq (%r9,%r14,1),%r9 5061 leaq (%r8,%r12,1),%r8 5062 andnq %rdx,%rbx,%r12 5063 xorq %rdi,%r13 5064 rorxq $14,%rbx,%r14 5065 leaq (%r8,%r12,1),%r8 5066 xorq %r14,%r13 5067 movq %r9,%rdi 5068 rorxq $39,%r9,%r12 5069 leaq (%r8,%r13,1),%r8 5070 xorq %r10,%rdi 5071 rorxq $34,%r9,%r14 5072 rorxq $28,%r9,%r13 5073 leaq (%rax,%r8,1),%rax 5074 andq %rdi,%r15 5075 xorq %r12,%r14 5076 xorq %r10,%r15 5077 xorq %r13,%r14 5078 leaq (%r8,%r15,1),%r8 5079 movq %rbx,%r12 5080 addq 64(%rsp),%rdx 5081 andq %rax,%r12 5082 rorxq $41,%rax,%r13 5083 rorxq $18,%rax,%r15 5084 leaq (%r8,%r14,1),%r8 5085 leaq (%rdx,%r12,1),%rdx 5086 andnq %rcx,%rax,%r12 5087 xorq %r15,%r13 5088 rorxq $14,%rax,%r14 5089 leaq (%rdx,%r12,1),%rdx 5090 xorq %r14,%r13 5091 movq %r8,%r15 5092 rorxq $39,%r8,%r12 5093 leaq (%rdx,%r13,1),%rdx 5094 xorq %r9,%r15 5095 rorxq $34,%r8,%r14 5096 rorxq $28,%r8,%r13 5097 leaq (%r11,%rdx,1),%r11 5098 andq %r15,%rdi 5099 xorq %r12,%r14 5100 xorq %r9,%rdi 5101 xorq %r13,%r14 5102 leaq (%rdx,%rdi,1),%rdx 5103 movq %rax,%r12 5104 addq 72(%rsp),%rcx 5105 andq %r11,%r12 5106 rorxq $41,%r11,%r13 5107 rorxq $18,%r11,%rdi 5108 leaq (%rdx,%r14,1),%rdx 5109 leaq (%rcx,%r12,1),%rcx 5110 andnq %rbx,%r11,%r12 5111 xorq %rdi,%r13 5112 rorxq $14,%r11,%r14 5113 leaq (%rcx,%r12,1),%rcx 5114 xorq %r14,%r13 5115 movq %rdx,%rdi 5116 rorxq $39,%rdx,%r12 5117 leaq (%rcx,%r13,1),%rcx 5118 xorq %r8,%rdi 5119 rorxq $34,%rdx,%r14 5120 rorxq $28,%rdx,%r13 5121 leaq (%r10,%rcx,1),%r10 5122 andq %rdi,%r15 5123 xorq %r12,%r14 5124 xorq %r8,%r15 5125 xorq %r13,%r14 5126 leaq (%rcx,%r15,1),%rcx 5127 movq %r11,%r12 5128 addq 96(%rsp),%rbx 5129 andq %r10,%r12 5130 rorxq $41,%r10,%r13 5131 rorxq $18,%r10,%r15 5132 leaq (%rcx,%r14,1),%rcx 5133 leaq (%rbx,%r12,1),%rbx 5134 andnq %rax,%r10,%r12 5135 xorq %r15,%r13 5136 rorxq $14,%r10,%r14 5137 leaq (%rbx,%r12,1),%rbx 5138 xorq %r14,%r13 5139 movq %rcx,%r15 5140 rorxq $39,%rcx,%r12 5141 leaq (%rbx,%r13,1),%rbx 5142 xorq %rdx,%r15 5143 rorxq $34,%rcx,%r14 5144 rorxq $28,%rcx,%r13 5145 leaq (%r9,%rbx,1),%r9 5146 andq %r15,%rdi 5147 xorq %r12,%r14 5148 xorq %rdx,%rdi 5149 xorq %r13,%r14 5150 leaq (%rbx,%rdi,1),%rbx 5151 movq %r10,%r12 5152 addq 104(%rsp),%rax 5153 andq %r9,%r12 5154 rorxq $41,%r9,%r13 5155 rorxq $18,%r9,%rdi 5156 leaq (%rbx,%r14,1),%rbx 5157 leaq (%rax,%r12,1),%rax 5158 andnq %r11,%r9,%r12 5159 xorq %rdi,%r13 5160 rorxq $14,%r9,%r14 5161 leaq (%rax,%r12,1),%rax 5162 xorq %r14,%r13 5163 movq %rbx,%rdi 5164 rorxq $39,%rbx,%r12 5165 leaq (%rax,%r13,1),%rax 5166 xorq %rcx,%rdi 5167 rorxq $34,%rbx,%r14 5168 rorxq $28,%rbx,%r13 5169 leaq (%r8,%rax,1),%r8 5170 andq %rdi,%r15 5171 xorq %r12,%r14 5172 xorq %rcx,%r15 5173 xorq %r13,%r14 5174 leaq (%rax,%r15,1),%rax 5175 movq %r9,%r12 5176 movq 1280(%rsp),%rdi 5177 addq %r14,%rax 5178 5179 leaq 1152(%rsp),%rbp 5180 5181 addq 0(%rdi),%rax 5182 addq 8(%rdi),%rbx 5183 addq 16(%rdi),%rcx 5184 addq 24(%rdi),%rdx 5185 addq 32(%rdi),%r8 5186 addq 40(%rdi),%r9 5187 addq 48(%rdi),%r10 5188 addq 56(%rdi),%r11 5189 5190 movq %rax,0(%rdi) 5191 movq %rbx,8(%rdi) 5192 movq %rcx,16(%rdi) 5193 movq %rdx,24(%rdi) 5194 movq %r8,32(%rdi) 5195 movq %r9,40(%rdi) 5196 movq %r10,48(%rdi) 5197 movq %r11,56(%rdi) 5198 5199 cmpq 144(%rbp),%rsi 5200 je .Ldone_avx2 5201 5202 xorq %r14,%r14 5203 movq %rbx,%rdi 5204 xorq %rcx,%rdi 5205 movq %r9,%r12 5206 jmp .Lower_avx2 5207.align 16 5208.Lower_avx2: 5209 addq 0+16(%rbp),%r11 5210 andq %r8,%r12 5211 rorxq $41,%r8,%r13 5212 rorxq $18,%r8,%r15 5213 leaq (%rax,%r14,1),%rax 5214 leaq (%r11,%r12,1),%r11 5215 andnq %r10,%r8,%r12 5216 xorq %r15,%r13 5217 rorxq $14,%r8,%r14 5218 leaq (%r11,%r12,1),%r11 5219 xorq %r14,%r13 5220 movq %rax,%r15 5221 rorxq $39,%rax,%r12 5222 leaq (%r11,%r13,1),%r11 5223 xorq %rbx,%r15 5224 rorxq $34,%rax,%r14 5225 rorxq $28,%rax,%r13 5226 leaq (%rdx,%r11,1),%rdx 5227 andq %r15,%rdi 5228 xorq %r12,%r14 5229 xorq %rbx,%rdi 5230 xorq %r13,%r14 5231 leaq (%r11,%rdi,1),%r11 5232 movq %r8,%r12 5233 addq 8+16(%rbp),%r10 5234 andq %rdx,%r12 5235 rorxq $41,%rdx,%r13 5236 rorxq $18,%rdx,%rdi 5237 leaq (%r11,%r14,1),%r11 5238 leaq (%r10,%r12,1),%r10 5239 andnq %r9,%rdx,%r12 5240 xorq %rdi,%r13 5241 rorxq $14,%rdx,%r14 5242 leaq (%r10,%r12,1),%r10 5243 xorq %r14,%r13 5244 movq %r11,%rdi 5245 rorxq $39,%r11,%r12 5246 leaq (%r10,%r13,1),%r10 5247 xorq %rax,%rdi 5248 rorxq $34,%r11,%r14 5249 rorxq $28,%r11,%r13 5250 leaq (%rcx,%r10,1),%rcx 5251 andq %rdi,%r15 5252 xorq %r12,%r14 5253 xorq %rax,%r15 5254 xorq %r13,%r14 5255 leaq (%r10,%r15,1),%r10 5256 movq %rdx,%r12 5257 addq 32+16(%rbp),%r9 5258 andq %rcx,%r12 5259 rorxq $41,%rcx,%r13 5260 rorxq $18,%rcx,%r15 5261 leaq (%r10,%r14,1),%r10 5262 leaq (%r9,%r12,1),%r9 5263 andnq %r8,%rcx,%r12 5264 xorq %r15,%r13 5265 rorxq $14,%rcx,%r14 5266 leaq (%r9,%r12,1),%r9 5267 xorq %r14,%r13 5268 movq %r10,%r15 5269 rorxq $39,%r10,%r12 5270 leaq (%r9,%r13,1),%r9 5271 xorq %r11,%r15 5272 rorxq $34,%r10,%r14 5273 rorxq $28,%r10,%r13 5274 leaq (%rbx,%r9,1),%rbx 5275 andq %r15,%rdi 5276 xorq %r12,%r14 5277 xorq %r11,%rdi 5278 xorq %r13,%r14 5279 leaq (%r9,%rdi,1),%r9 5280 movq %rcx,%r12 5281 addq 40+16(%rbp),%r8 5282 andq %rbx,%r12 5283 rorxq $41,%rbx,%r13 5284 rorxq $18,%rbx,%rdi 5285 leaq (%r9,%r14,1),%r9 5286 leaq (%r8,%r12,1),%r8 5287 andnq %rdx,%rbx,%r12 5288 xorq %rdi,%r13 5289 rorxq $14,%rbx,%r14 5290 leaq (%r8,%r12,1),%r8 5291 xorq %r14,%r13 5292 movq %r9,%rdi 5293 rorxq $39,%r9,%r12 5294 leaq (%r8,%r13,1),%r8 5295 xorq %r10,%rdi 5296 rorxq $34,%r9,%r14 5297 rorxq $28,%r9,%r13 5298 leaq (%rax,%r8,1),%rax 5299 andq %rdi,%r15 5300 xorq %r12,%r14 5301 xorq %r10,%r15 5302 xorq %r13,%r14 5303 leaq (%r8,%r15,1),%r8 5304 movq %rbx,%r12 5305 addq 64+16(%rbp),%rdx 5306 andq %rax,%r12 5307 rorxq $41,%rax,%r13 5308 rorxq $18,%rax,%r15 5309 leaq (%r8,%r14,1),%r8 5310 leaq (%rdx,%r12,1),%rdx 5311 andnq %rcx,%rax,%r12 5312 xorq %r15,%r13 5313 rorxq $14,%rax,%r14 5314 leaq (%rdx,%r12,1),%rdx 5315 xorq %r14,%r13 5316 movq %r8,%r15 5317 rorxq $39,%r8,%r12 5318 leaq (%rdx,%r13,1),%rdx 5319 xorq %r9,%r15 5320 rorxq $34,%r8,%r14 5321 rorxq $28,%r8,%r13 5322 leaq (%r11,%rdx,1),%r11 5323 andq %r15,%rdi 5324 xorq %r12,%r14 5325 xorq %r9,%rdi 5326 xorq %r13,%r14 5327 leaq (%rdx,%rdi,1),%rdx 5328 movq %rax,%r12 5329 addq 72+16(%rbp),%rcx 5330 andq %r11,%r12 5331 rorxq $41,%r11,%r13 5332 rorxq $18,%r11,%rdi 5333 leaq (%rdx,%r14,1),%rdx 5334 leaq (%rcx,%r12,1),%rcx 5335 andnq %rbx,%r11,%r12 5336 xorq %rdi,%r13 5337 rorxq $14,%r11,%r14 5338 leaq (%rcx,%r12,1),%rcx 5339 xorq %r14,%r13 5340 movq %rdx,%rdi 5341 rorxq $39,%rdx,%r12 5342 leaq (%rcx,%r13,1),%rcx 5343 xorq %r8,%rdi 5344 rorxq $34,%rdx,%r14 5345 rorxq $28,%rdx,%r13 5346 leaq (%r10,%rcx,1),%r10 5347 andq %rdi,%r15 5348 xorq %r12,%r14 5349 xorq %r8,%r15 5350 xorq %r13,%r14 5351 leaq (%rcx,%r15,1),%rcx 5352 movq %r11,%r12 5353 addq 96+16(%rbp),%rbx 5354 andq %r10,%r12 5355 rorxq $41,%r10,%r13 5356 rorxq $18,%r10,%r15 5357 leaq (%rcx,%r14,1),%rcx 5358 leaq (%rbx,%r12,1),%rbx 5359 andnq %rax,%r10,%r12 5360 xorq %r15,%r13 5361 rorxq $14,%r10,%r14 5362 leaq (%rbx,%r12,1),%rbx 5363 xorq %r14,%r13 5364 movq %rcx,%r15 5365 rorxq $39,%rcx,%r12 5366 leaq (%rbx,%r13,1),%rbx 5367 xorq %rdx,%r15 5368 rorxq $34,%rcx,%r14 5369 rorxq $28,%rcx,%r13 5370 leaq (%r9,%rbx,1),%r9 5371 andq %r15,%rdi 5372 xorq %r12,%r14 5373 xorq %rdx,%rdi 5374 xorq %r13,%r14 5375 leaq (%rbx,%rdi,1),%rbx 5376 movq %r10,%r12 5377 addq 104+16(%rbp),%rax 5378 andq %r9,%r12 5379 rorxq $41,%r9,%r13 5380 rorxq $18,%r9,%rdi 5381 leaq (%rbx,%r14,1),%rbx 5382 leaq (%rax,%r12,1),%rax 5383 andnq %r11,%r9,%r12 5384 xorq %rdi,%r13 5385 rorxq $14,%r9,%r14 5386 leaq (%rax,%r12,1),%rax 5387 xorq %r14,%r13 5388 movq %rbx,%rdi 5389 rorxq $39,%rbx,%r12 5390 leaq (%rax,%r13,1),%rax 5391 xorq %rcx,%rdi 5392 rorxq $34,%rbx,%r14 5393 rorxq $28,%rbx,%r13 5394 leaq (%r8,%rax,1),%r8 5395 andq %rdi,%r15 5396 xorq %r12,%r14 5397 xorq %rcx,%r15 5398 xorq %r13,%r14 5399 leaq (%rax,%r15,1),%rax 5400 movq %r9,%r12 5401 leaq -128(%rbp),%rbp 5402 cmpq %rsp,%rbp 5403 jae .Lower_avx2 5404 5405 movq 1280(%rsp),%rdi 5406 addq %r14,%rax 5407 5408 leaq 1152(%rsp),%rsp 5409 5410.cfi_escape 0x0f,0x06,0x77,0x98,0x01,0x06,0x23,0x08 5411 5412 addq 0(%rdi),%rax 5413 addq 8(%rdi),%rbx 5414 addq 16(%rdi),%rcx 5415 addq 24(%rdi),%rdx 5416 addq 32(%rdi),%r8 5417 addq 40(%rdi),%r9 5418 leaq 256(%rsi),%rsi 5419 addq 48(%rdi),%r10 5420 movq %rsi,%r12 5421 addq 56(%rdi),%r11 5422 cmpq 128+16(%rsp),%rsi 5423 5424 movq %rax,0(%rdi) 5425 cmoveq %rsp,%r12 5426 movq %rbx,8(%rdi) 5427 movq %rcx,16(%rdi) 5428 movq %rdx,24(%rdi) 5429 movq %r8,32(%rdi) 5430 movq %r9,40(%rdi) 5431 movq %r10,48(%rdi) 5432 movq %r11,56(%rdi) 5433 5434 jbe .Loop_avx2 5435 leaq (%rsp),%rbp 5436 5437 5438.cfi_escape 0x0f,0x06,0x76,0x98,0x01,0x06,0x23,0x08 5439 5440.Ldone_avx2: 5441 movq 152(%rbp),%rsi 5442.cfi_def_cfa %rsi,8 5443 vzeroupper 5444 movq -48(%rsi),%r15 5445.cfi_restore %r15 5446 movq -40(%rsi),%r14 5447.cfi_restore %r14 5448 movq -32(%rsi),%r13 5449.cfi_restore %r13 5450 movq -24(%rsi),%r12 5451.cfi_restore %r12 5452 movq -16(%rsi),%rbp 5453.cfi_restore %rbp 5454 movq -8(%rsi),%rbx 5455.cfi_restore %rbx 5456 leaq (%rsi),%rsp 5457.cfi_def_cfa_register %rsp 5458.Lepilogue_avx2: 5459 .byte 0xf3,0xc3 5460.cfi_endproc 5461.size sha512_block_data_order_avx2,.-sha512_block_data_order_avx2 5462