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