sha256-mb-x86_64.S revision 1.2
1#include <machine/asm.h> 2.text 3 4 5 6.globl sha256_multi_block 7.type sha256_multi_block,@function 8.align 32 9sha256_multi_block: 10 movq OPENSSL_ia32cap_P+4(%rip),%rcx 11 btq $61,%rcx 12 jc _shaext_shortcut 13 testl $268435456,%ecx 14 jnz _avx_shortcut 15 movq %rsp,%rax 16 pushq %rbx 17 pushq %rbp 18 subq $288,%rsp 19 andq $-256,%rsp 20 movq %rax,272(%rsp) 21.Lbody: 22 leaq K256+128(%rip),%rbp 23 leaq 256(%rsp),%rbx 24 leaq 128(%rdi),%rdi 25 26.Loop_grande: 27 movl %edx,280(%rsp) 28 xorl %edx,%edx 29 movq 0(%rsi),%r8 30 movl 8(%rsi),%ecx 31 cmpl %edx,%ecx 32 cmovgl %ecx,%edx 33 testl %ecx,%ecx 34 movl %ecx,0(%rbx) 35 cmovleq %rbp,%r8 36 movq 16(%rsi),%r9 37 movl 24(%rsi),%ecx 38 cmpl %edx,%ecx 39 cmovgl %ecx,%edx 40 testl %ecx,%ecx 41 movl %ecx,4(%rbx) 42 cmovleq %rbp,%r9 43 movq 32(%rsi),%r10 44 movl 40(%rsi),%ecx 45 cmpl %edx,%ecx 46 cmovgl %ecx,%edx 47 testl %ecx,%ecx 48 movl %ecx,8(%rbx) 49 cmovleq %rbp,%r10 50 movq 48(%rsi),%r11 51 movl 56(%rsi),%ecx 52 cmpl %edx,%ecx 53 cmovgl %ecx,%edx 54 testl %ecx,%ecx 55 movl %ecx,12(%rbx) 56 cmovleq %rbp,%r11 57 testl %edx,%edx 58 jz .Ldone 59 60 movdqu 0-128(%rdi),%xmm8 61 leaq 128(%rsp),%rax 62 movdqu 32-128(%rdi),%xmm9 63 movdqu 64-128(%rdi),%xmm10 64 movdqu 96-128(%rdi),%xmm11 65 movdqu 128-128(%rdi),%xmm12 66 movdqu 160-128(%rdi),%xmm13 67 movdqu 192-128(%rdi),%xmm14 68 movdqu 224-128(%rdi),%xmm15 69 movdqu .Lpbswap(%rip),%xmm6 70 jmp .Loop 71 72.align 32 73.Loop: 74 movdqa %xmm10,%xmm4 75 pxor %xmm9,%xmm4 76 movd 0(%r8),%xmm5 77 movd 0(%r9),%xmm0 78 movd 0(%r10),%xmm1 79 movd 0(%r11),%xmm2 80 punpckldq %xmm1,%xmm5 81 punpckldq %xmm2,%xmm0 82 punpckldq %xmm0,%xmm5 83 movdqa %xmm12,%xmm7 84.byte 102,15,56,0,238 85 movdqa %xmm12,%xmm2 86 87 psrld $6,%xmm7 88 movdqa %xmm12,%xmm1 89 pslld $7,%xmm2 90 movdqa %xmm5,0-128(%rax) 91 paddd %xmm15,%xmm5 92 93 psrld $11,%xmm1 94 pxor %xmm2,%xmm7 95 pslld $21-7,%xmm2 96 paddd -128(%rbp),%xmm5 97 pxor %xmm1,%xmm7 98 99 psrld $25-11,%xmm1 100 movdqa %xmm12,%xmm0 101 102 pxor %xmm2,%xmm7 103 movdqa %xmm12,%xmm3 104 pslld $26-21,%xmm2 105 pandn %xmm14,%xmm0 106 pand %xmm13,%xmm3 107 pxor %xmm1,%xmm7 108 109 110 movdqa %xmm8,%xmm1 111 pxor %xmm2,%xmm7 112 movdqa %xmm8,%xmm2 113 psrld $2,%xmm1 114 paddd %xmm7,%xmm5 115 pxor %xmm3,%xmm0 116 movdqa %xmm9,%xmm3 117 movdqa %xmm8,%xmm7 118 pslld $10,%xmm2 119 pxor %xmm8,%xmm3 120 121 122 psrld $13,%xmm7 123 pxor %xmm2,%xmm1 124 paddd %xmm0,%xmm5 125 pslld $19-10,%xmm2 126 pand %xmm3,%xmm4 127 pxor %xmm7,%xmm1 128 129 130 psrld $22-13,%xmm7 131 pxor %xmm2,%xmm1 132 movdqa %xmm9,%xmm15 133 pslld $30-19,%xmm2 134 pxor %xmm1,%xmm7 135 pxor %xmm4,%xmm15 136 paddd %xmm5,%xmm11 137 pxor %xmm2,%xmm7 138 139 paddd %xmm5,%xmm15 140 paddd %xmm7,%xmm15 141 movd 4(%r8),%xmm5 142 movd 4(%r9),%xmm0 143 movd 4(%r10),%xmm1 144 movd 4(%r11),%xmm2 145 punpckldq %xmm1,%xmm5 146 punpckldq %xmm2,%xmm0 147 punpckldq %xmm0,%xmm5 148 movdqa %xmm11,%xmm7 149 150 movdqa %xmm11,%xmm2 151.byte 102,15,56,0,238 152 psrld $6,%xmm7 153 movdqa %xmm11,%xmm1 154 pslld $7,%xmm2 155 movdqa %xmm5,16-128(%rax) 156 paddd %xmm14,%xmm5 157 158 psrld $11,%xmm1 159 pxor %xmm2,%xmm7 160 pslld $21-7,%xmm2 161 paddd -96(%rbp),%xmm5 162 pxor %xmm1,%xmm7 163 164 psrld $25-11,%xmm1 165 movdqa %xmm11,%xmm0 166 167 pxor %xmm2,%xmm7 168 movdqa %xmm11,%xmm4 169 pslld $26-21,%xmm2 170 pandn %xmm13,%xmm0 171 pand %xmm12,%xmm4 172 pxor %xmm1,%xmm7 173 174 175 movdqa %xmm15,%xmm1 176 pxor %xmm2,%xmm7 177 movdqa %xmm15,%xmm2 178 psrld $2,%xmm1 179 paddd %xmm7,%xmm5 180 pxor %xmm4,%xmm0 181 movdqa %xmm8,%xmm4 182 movdqa %xmm15,%xmm7 183 pslld $10,%xmm2 184 pxor %xmm15,%xmm4 185 186 187 psrld $13,%xmm7 188 pxor %xmm2,%xmm1 189 paddd %xmm0,%xmm5 190 pslld $19-10,%xmm2 191 pand %xmm4,%xmm3 192 pxor %xmm7,%xmm1 193 194 195 psrld $22-13,%xmm7 196 pxor %xmm2,%xmm1 197 movdqa %xmm8,%xmm14 198 pslld $30-19,%xmm2 199 pxor %xmm1,%xmm7 200 pxor %xmm3,%xmm14 201 paddd %xmm5,%xmm10 202 pxor %xmm2,%xmm7 203 204 paddd %xmm5,%xmm14 205 paddd %xmm7,%xmm14 206 movd 8(%r8),%xmm5 207 movd 8(%r9),%xmm0 208 movd 8(%r10),%xmm1 209 movd 8(%r11),%xmm2 210 punpckldq %xmm1,%xmm5 211 punpckldq %xmm2,%xmm0 212 punpckldq %xmm0,%xmm5 213 movdqa %xmm10,%xmm7 214.byte 102,15,56,0,238 215 movdqa %xmm10,%xmm2 216 217 psrld $6,%xmm7 218 movdqa %xmm10,%xmm1 219 pslld $7,%xmm2 220 movdqa %xmm5,32-128(%rax) 221 paddd %xmm13,%xmm5 222 223 psrld $11,%xmm1 224 pxor %xmm2,%xmm7 225 pslld $21-7,%xmm2 226 paddd -64(%rbp),%xmm5 227 pxor %xmm1,%xmm7 228 229 psrld $25-11,%xmm1 230 movdqa %xmm10,%xmm0 231 232 pxor %xmm2,%xmm7 233 movdqa %xmm10,%xmm3 234 pslld $26-21,%xmm2 235 pandn %xmm12,%xmm0 236 pand %xmm11,%xmm3 237 pxor %xmm1,%xmm7 238 239 240 movdqa %xmm14,%xmm1 241 pxor %xmm2,%xmm7 242 movdqa %xmm14,%xmm2 243 psrld $2,%xmm1 244 paddd %xmm7,%xmm5 245 pxor %xmm3,%xmm0 246 movdqa %xmm15,%xmm3 247 movdqa %xmm14,%xmm7 248 pslld $10,%xmm2 249 pxor %xmm14,%xmm3 250 251 252 psrld $13,%xmm7 253 pxor %xmm2,%xmm1 254 paddd %xmm0,%xmm5 255 pslld $19-10,%xmm2 256 pand %xmm3,%xmm4 257 pxor %xmm7,%xmm1 258 259 260 psrld $22-13,%xmm7 261 pxor %xmm2,%xmm1 262 movdqa %xmm15,%xmm13 263 pslld $30-19,%xmm2 264 pxor %xmm1,%xmm7 265 pxor %xmm4,%xmm13 266 paddd %xmm5,%xmm9 267 pxor %xmm2,%xmm7 268 269 paddd %xmm5,%xmm13 270 paddd %xmm7,%xmm13 271 movd 12(%r8),%xmm5 272 movd 12(%r9),%xmm0 273 movd 12(%r10),%xmm1 274 movd 12(%r11),%xmm2 275 punpckldq %xmm1,%xmm5 276 punpckldq %xmm2,%xmm0 277 punpckldq %xmm0,%xmm5 278 movdqa %xmm9,%xmm7 279 280 movdqa %xmm9,%xmm2 281.byte 102,15,56,0,238 282 psrld $6,%xmm7 283 movdqa %xmm9,%xmm1 284 pslld $7,%xmm2 285 movdqa %xmm5,48-128(%rax) 286 paddd %xmm12,%xmm5 287 288 psrld $11,%xmm1 289 pxor %xmm2,%xmm7 290 pslld $21-7,%xmm2 291 paddd -32(%rbp),%xmm5 292 pxor %xmm1,%xmm7 293 294 psrld $25-11,%xmm1 295 movdqa %xmm9,%xmm0 296 297 pxor %xmm2,%xmm7 298 movdqa %xmm9,%xmm4 299 pslld $26-21,%xmm2 300 pandn %xmm11,%xmm0 301 pand %xmm10,%xmm4 302 pxor %xmm1,%xmm7 303 304 305 movdqa %xmm13,%xmm1 306 pxor %xmm2,%xmm7 307 movdqa %xmm13,%xmm2 308 psrld $2,%xmm1 309 paddd %xmm7,%xmm5 310 pxor %xmm4,%xmm0 311 movdqa %xmm14,%xmm4 312 movdqa %xmm13,%xmm7 313 pslld $10,%xmm2 314 pxor %xmm13,%xmm4 315 316 317 psrld $13,%xmm7 318 pxor %xmm2,%xmm1 319 paddd %xmm0,%xmm5 320 pslld $19-10,%xmm2 321 pand %xmm4,%xmm3 322 pxor %xmm7,%xmm1 323 324 325 psrld $22-13,%xmm7 326 pxor %xmm2,%xmm1 327 movdqa %xmm14,%xmm12 328 pslld $30-19,%xmm2 329 pxor %xmm1,%xmm7 330 pxor %xmm3,%xmm12 331 paddd %xmm5,%xmm8 332 pxor %xmm2,%xmm7 333 334 paddd %xmm5,%xmm12 335 paddd %xmm7,%xmm12 336 movd 16(%r8),%xmm5 337 movd 16(%r9),%xmm0 338 movd 16(%r10),%xmm1 339 movd 16(%r11),%xmm2 340 punpckldq %xmm1,%xmm5 341 punpckldq %xmm2,%xmm0 342 punpckldq %xmm0,%xmm5 343 movdqa %xmm8,%xmm7 344.byte 102,15,56,0,238 345 movdqa %xmm8,%xmm2 346 347 psrld $6,%xmm7 348 movdqa %xmm8,%xmm1 349 pslld $7,%xmm2 350 movdqa %xmm5,64-128(%rax) 351 paddd %xmm11,%xmm5 352 353 psrld $11,%xmm1 354 pxor %xmm2,%xmm7 355 pslld $21-7,%xmm2 356 paddd 0(%rbp),%xmm5 357 pxor %xmm1,%xmm7 358 359 psrld $25-11,%xmm1 360 movdqa %xmm8,%xmm0 361 362 pxor %xmm2,%xmm7 363 movdqa %xmm8,%xmm3 364 pslld $26-21,%xmm2 365 pandn %xmm10,%xmm0 366 pand %xmm9,%xmm3 367 pxor %xmm1,%xmm7 368 369 370 movdqa %xmm12,%xmm1 371 pxor %xmm2,%xmm7 372 movdqa %xmm12,%xmm2 373 psrld $2,%xmm1 374 paddd %xmm7,%xmm5 375 pxor %xmm3,%xmm0 376 movdqa %xmm13,%xmm3 377 movdqa %xmm12,%xmm7 378 pslld $10,%xmm2 379 pxor %xmm12,%xmm3 380 381 382 psrld $13,%xmm7 383 pxor %xmm2,%xmm1 384 paddd %xmm0,%xmm5 385 pslld $19-10,%xmm2 386 pand %xmm3,%xmm4 387 pxor %xmm7,%xmm1 388 389 390 psrld $22-13,%xmm7 391 pxor %xmm2,%xmm1 392 movdqa %xmm13,%xmm11 393 pslld $30-19,%xmm2 394 pxor %xmm1,%xmm7 395 pxor %xmm4,%xmm11 396 paddd %xmm5,%xmm15 397 pxor %xmm2,%xmm7 398 399 paddd %xmm5,%xmm11 400 paddd %xmm7,%xmm11 401 movd 20(%r8),%xmm5 402 movd 20(%r9),%xmm0 403 movd 20(%r10),%xmm1 404 movd 20(%r11),%xmm2 405 punpckldq %xmm1,%xmm5 406 punpckldq %xmm2,%xmm0 407 punpckldq %xmm0,%xmm5 408 movdqa %xmm15,%xmm7 409 410 movdqa %xmm15,%xmm2 411.byte 102,15,56,0,238 412 psrld $6,%xmm7 413 movdqa %xmm15,%xmm1 414 pslld $7,%xmm2 415 movdqa %xmm5,80-128(%rax) 416 paddd %xmm10,%xmm5 417 418 psrld $11,%xmm1 419 pxor %xmm2,%xmm7 420 pslld $21-7,%xmm2 421 paddd 32(%rbp),%xmm5 422 pxor %xmm1,%xmm7 423 424 psrld $25-11,%xmm1 425 movdqa %xmm15,%xmm0 426 427 pxor %xmm2,%xmm7 428 movdqa %xmm15,%xmm4 429 pslld $26-21,%xmm2 430 pandn %xmm9,%xmm0 431 pand %xmm8,%xmm4 432 pxor %xmm1,%xmm7 433 434 435 movdqa %xmm11,%xmm1 436 pxor %xmm2,%xmm7 437 movdqa %xmm11,%xmm2 438 psrld $2,%xmm1 439 paddd %xmm7,%xmm5 440 pxor %xmm4,%xmm0 441 movdqa %xmm12,%xmm4 442 movdqa %xmm11,%xmm7 443 pslld $10,%xmm2 444 pxor %xmm11,%xmm4 445 446 447 psrld $13,%xmm7 448 pxor %xmm2,%xmm1 449 paddd %xmm0,%xmm5 450 pslld $19-10,%xmm2 451 pand %xmm4,%xmm3 452 pxor %xmm7,%xmm1 453 454 455 psrld $22-13,%xmm7 456 pxor %xmm2,%xmm1 457 movdqa %xmm12,%xmm10 458 pslld $30-19,%xmm2 459 pxor %xmm1,%xmm7 460 pxor %xmm3,%xmm10 461 paddd %xmm5,%xmm14 462 pxor %xmm2,%xmm7 463 464 paddd %xmm5,%xmm10 465 paddd %xmm7,%xmm10 466 movd 24(%r8),%xmm5 467 movd 24(%r9),%xmm0 468 movd 24(%r10),%xmm1 469 movd 24(%r11),%xmm2 470 punpckldq %xmm1,%xmm5 471 punpckldq %xmm2,%xmm0 472 punpckldq %xmm0,%xmm5 473 movdqa %xmm14,%xmm7 474.byte 102,15,56,0,238 475 movdqa %xmm14,%xmm2 476 477 psrld $6,%xmm7 478 movdqa %xmm14,%xmm1 479 pslld $7,%xmm2 480 movdqa %xmm5,96-128(%rax) 481 paddd %xmm9,%xmm5 482 483 psrld $11,%xmm1 484 pxor %xmm2,%xmm7 485 pslld $21-7,%xmm2 486 paddd 64(%rbp),%xmm5 487 pxor %xmm1,%xmm7 488 489 psrld $25-11,%xmm1 490 movdqa %xmm14,%xmm0 491 492 pxor %xmm2,%xmm7 493 movdqa %xmm14,%xmm3 494 pslld $26-21,%xmm2 495 pandn %xmm8,%xmm0 496 pand %xmm15,%xmm3 497 pxor %xmm1,%xmm7 498 499 500 movdqa %xmm10,%xmm1 501 pxor %xmm2,%xmm7 502 movdqa %xmm10,%xmm2 503 psrld $2,%xmm1 504 paddd %xmm7,%xmm5 505 pxor %xmm3,%xmm0 506 movdqa %xmm11,%xmm3 507 movdqa %xmm10,%xmm7 508 pslld $10,%xmm2 509 pxor %xmm10,%xmm3 510 511 512 psrld $13,%xmm7 513 pxor %xmm2,%xmm1 514 paddd %xmm0,%xmm5 515 pslld $19-10,%xmm2 516 pand %xmm3,%xmm4 517 pxor %xmm7,%xmm1 518 519 520 psrld $22-13,%xmm7 521 pxor %xmm2,%xmm1 522 movdqa %xmm11,%xmm9 523 pslld $30-19,%xmm2 524 pxor %xmm1,%xmm7 525 pxor %xmm4,%xmm9 526 paddd %xmm5,%xmm13 527 pxor %xmm2,%xmm7 528 529 paddd %xmm5,%xmm9 530 paddd %xmm7,%xmm9 531 movd 28(%r8),%xmm5 532 movd 28(%r9),%xmm0 533 movd 28(%r10),%xmm1 534 movd 28(%r11),%xmm2 535 punpckldq %xmm1,%xmm5 536 punpckldq %xmm2,%xmm0 537 punpckldq %xmm0,%xmm5 538 movdqa %xmm13,%xmm7 539 540 movdqa %xmm13,%xmm2 541.byte 102,15,56,0,238 542 psrld $6,%xmm7 543 movdqa %xmm13,%xmm1 544 pslld $7,%xmm2 545 movdqa %xmm5,112-128(%rax) 546 paddd %xmm8,%xmm5 547 548 psrld $11,%xmm1 549 pxor %xmm2,%xmm7 550 pslld $21-7,%xmm2 551 paddd 96(%rbp),%xmm5 552 pxor %xmm1,%xmm7 553 554 psrld $25-11,%xmm1 555 movdqa %xmm13,%xmm0 556 557 pxor %xmm2,%xmm7 558 movdqa %xmm13,%xmm4 559 pslld $26-21,%xmm2 560 pandn %xmm15,%xmm0 561 pand %xmm14,%xmm4 562 pxor %xmm1,%xmm7 563 564 565 movdqa %xmm9,%xmm1 566 pxor %xmm2,%xmm7 567 movdqa %xmm9,%xmm2 568 psrld $2,%xmm1 569 paddd %xmm7,%xmm5 570 pxor %xmm4,%xmm0 571 movdqa %xmm10,%xmm4 572 movdqa %xmm9,%xmm7 573 pslld $10,%xmm2 574 pxor %xmm9,%xmm4 575 576 577 psrld $13,%xmm7 578 pxor %xmm2,%xmm1 579 paddd %xmm0,%xmm5 580 pslld $19-10,%xmm2 581 pand %xmm4,%xmm3 582 pxor %xmm7,%xmm1 583 584 585 psrld $22-13,%xmm7 586 pxor %xmm2,%xmm1 587 movdqa %xmm10,%xmm8 588 pslld $30-19,%xmm2 589 pxor %xmm1,%xmm7 590 pxor %xmm3,%xmm8 591 paddd %xmm5,%xmm12 592 pxor %xmm2,%xmm7 593 594 paddd %xmm5,%xmm8 595 paddd %xmm7,%xmm8 596 leaq 256(%rbp),%rbp 597 movd 32(%r8),%xmm5 598 movd 32(%r9),%xmm0 599 movd 32(%r10),%xmm1 600 movd 32(%r11),%xmm2 601 punpckldq %xmm1,%xmm5 602 punpckldq %xmm2,%xmm0 603 punpckldq %xmm0,%xmm5 604 movdqa %xmm12,%xmm7 605.byte 102,15,56,0,238 606 movdqa %xmm12,%xmm2 607 608 psrld $6,%xmm7 609 movdqa %xmm12,%xmm1 610 pslld $7,%xmm2 611 movdqa %xmm5,128-128(%rax) 612 paddd %xmm15,%xmm5 613 614 psrld $11,%xmm1 615 pxor %xmm2,%xmm7 616 pslld $21-7,%xmm2 617 paddd -128(%rbp),%xmm5 618 pxor %xmm1,%xmm7 619 620 psrld $25-11,%xmm1 621 movdqa %xmm12,%xmm0 622 623 pxor %xmm2,%xmm7 624 movdqa %xmm12,%xmm3 625 pslld $26-21,%xmm2 626 pandn %xmm14,%xmm0 627 pand %xmm13,%xmm3 628 pxor %xmm1,%xmm7 629 630 631 movdqa %xmm8,%xmm1 632 pxor %xmm2,%xmm7 633 movdqa %xmm8,%xmm2 634 psrld $2,%xmm1 635 paddd %xmm7,%xmm5 636 pxor %xmm3,%xmm0 637 movdqa %xmm9,%xmm3 638 movdqa %xmm8,%xmm7 639 pslld $10,%xmm2 640 pxor %xmm8,%xmm3 641 642 643 psrld $13,%xmm7 644 pxor %xmm2,%xmm1 645 paddd %xmm0,%xmm5 646 pslld $19-10,%xmm2 647 pand %xmm3,%xmm4 648 pxor %xmm7,%xmm1 649 650 651 psrld $22-13,%xmm7 652 pxor %xmm2,%xmm1 653 movdqa %xmm9,%xmm15 654 pslld $30-19,%xmm2 655 pxor %xmm1,%xmm7 656 pxor %xmm4,%xmm15 657 paddd %xmm5,%xmm11 658 pxor %xmm2,%xmm7 659 660 paddd %xmm5,%xmm15 661 paddd %xmm7,%xmm15 662 movd 36(%r8),%xmm5 663 movd 36(%r9),%xmm0 664 movd 36(%r10),%xmm1 665 movd 36(%r11),%xmm2 666 punpckldq %xmm1,%xmm5 667 punpckldq %xmm2,%xmm0 668 punpckldq %xmm0,%xmm5 669 movdqa %xmm11,%xmm7 670 671 movdqa %xmm11,%xmm2 672.byte 102,15,56,0,238 673 psrld $6,%xmm7 674 movdqa %xmm11,%xmm1 675 pslld $7,%xmm2 676 movdqa %xmm5,144-128(%rax) 677 paddd %xmm14,%xmm5 678 679 psrld $11,%xmm1 680 pxor %xmm2,%xmm7 681 pslld $21-7,%xmm2 682 paddd -96(%rbp),%xmm5 683 pxor %xmm1,%xmm7 684 685 psrld $25-11,%xmm1 686 movdqa %xmm11,%xmm0 687 688 pxor %xmm2,%xmm7 689 movdqa %xmm11,%xmm4 690 pslld $26-21,%xmm2 691 pandn %xmm13,%xmm0 692 pand %xmm12,%xmm4 693 pxor %xmm1,%xmm7 694 695 696 movdqa %xmm15,%xmm1 697 pxor %xmm2,%xmm7 698 movdqa %xmm15,%xmm2 699 psrld $2,%xmm1 700 paddd %xmm7,%xmm5 701 pxor %xmm4,%xmm0 702 movdqa %xmm8,%xmm4 703 movdqa %xmm15,%xmm7 704 pslld $10,%xmm2 705 pxor %xmm15,%xmm4 706 707 708 psrld $13,%xmm7 709 pxor %xmm2,%xmm1 710 paddd %xmm0,%xmm5 711 pslld $19-10,%xmm2 712 pand %xmm4,%xmm3 713 pxor %xmm7,%xmm1 714 715 716 psrld $22-13,%xmm7 717 pxor %xmm2,%xmm1 718 movdqa %xmm8,%xmm14 719 pslld $30-19,%xmm2 720 pxor %xmm1,%xmm7 721 pxor %xmm3,%xmm14 722 paddd %xmm5,%xmm10 723 pxor %xmm2,%xmm7 724 725 paddd %xmm5,%xmm14 726 paddd %xmm7,%xmm14 727 movd 40(%r8),%xmm5 728 movd 40(%r9),%xmm0 729 movd 40(%r10),%xmm1 730 movd 40(%r11),%xmm2 731 punpckldq %xmm1,%xmm5 732 punpckldq %xmm2,%xmm0 733 punpckldq %xmm0,%xmm5 734 movdqa %xmm10,%xmm7 735.byte 102,15,56,0,238 736 movdqa %xmm10,%xmm2 737 738 psrld $6,%xmm7 739 movdqa %xmm10,%xmm1 740 pslld $7,%xmm2 741 movdqa %xmm5,160-128(%rax) 742 paddd %xmm13,%xmm5 743 744 psrld $11,%xmm1 745 pxor %xmm2,%xmm7 746 pslld $21-7,%xmm2 747 paddd -64(%rbp),%xmm5 748 pxor %xmm1,%xmm7 749 750 psrld $25-11,%xmm1 751 movdqa %xmm10,%xmm0 752 753 pxor %xmm2,%xmm7 754 movdqa %xmm10,%xmm3 755 pslld $26-21,%xmm2 756 pandn %xmm12,%xmm0 757 pand %xmm11,%xmm3 758 pxor %xmm1,%xmm7 759 760 761 movdqa %xmm14,%xmm1 762 pxor %xmm2,%xmm7 763 movdqa %xmm14,%xmm2 764 psrld $2,%xmm1 765 paddd %xmm7,%xmm5 766 pxor %xmm3,%xmm0 767 movdqa %xmm15,%xmm3 768 movdqa %xmm14,%xmm7 769 pslld $10,%xmm2 770 pxor %xmm14,%xmm3 771 772 773 psrld $13,%xmm7 774 pxor %xmm2,%xmm1 775 paddd %xmm0,%xmm5 776 pslld $19-10,%xmm2 777 pand %xmm3,%xmm4 778 pxor %xmm7,%xmm1 779 780 781 psrld $22-13,%xmm7 782 pxor %xmm2,%xmm1 783 movdqa %xmm15,%xmm13 784 pslld $30-19,%xmm2 785 pxor %xmm1,%xmm7 786 pxor %xmm4,%xmm13 787 paddd %xmm5,%xmm9 788 pxor %xmm2,%xmm7 789 790 paddd %xmm5,%xmm13 791 paddd %xmm7,%xmm13 792 movd 44(%r8),%xmm5 793 movd 44(%r9),%xmm0 794 movd 44(%r10),%xmm1 795 movd 44(%r11),%xmm2 796 punpckldq %xmm1,%xmm5 797 punpckldq %xmm2,%xmm0 798 punpckldq %xmm0,%xmm5 799 movdqa %xmm9,%xmm7 800 801 movdqa %xmm9,%xmm2 802.byte 102,15,56,0,238 803 psrld $6,%xmm7 804 movdqa %xmm9,%xmm1 805 pslld $7,%xmm2 806 movdqa %xmm5,176-128(%rax) 807 paddd %xmm12,%xmm5 808 809 psrld $11,%xmm1 810 pxor %xmm2,%xmm7 811 pslld $21-7,%xmm2 812 paddd -32(%rbp),%xmm5 813 pxor %xmm1,%xmm7 814 815 psrld $25-11,%xmm1 816 movdqa %xmm9,%xmm0 817 818 pxor %xmm2,%xmm7 819 movdqa %xmm9,%xmm4 820 pslld $26-21,%xmm2 821 pandn %xmm11,%xmm0 822 pand %xmm10,%xmm4 823 pxor %xmm1,%xmm7 824 825 826 movdqa %xmm13,%xmm1 827 pxor %xmm2,%xmm7 828 movdqa %xmm13,%xmm2 829 psrld $2,%xmm1 830 paddd %xmm7,%xmm5 831 pxor %xmm4,%xmm0 832 movdqa %xmm14,%xmm4 833 movdqa %xmm13,%xmm7 834 pslld $10,%xmm2 835 pxor %xmm13,%xmm4 836 837 838 psrld $13,%xmm7 839 pxor %xmm2,%xmm1 840 paddd %xmm0,%xmm5 841 pslld $19-10,%xmm2 842 pand %xmm4,%xmm3 843 pxor %xmm7,%xmm1 844 845 846 psrld $22-13,%xmm7 847 pxor %xmm2,%xmm1 848 movdqa %xmm14,%xmm12 849 pslld $30-19,%xmm2 850 pxor %xmm1,%xmm7 851 pxor %xmm3,%xmm12 852 paddd %xmm5,%xmm8 853 pxor %xmm2,%xmm7 854 855 paddd %xmm5,%xmm12 856 paddd %xmm7,%xmm12 857 movd 48(%r8),%xmm5 858 movd 48(%r9),%xmm0 859 movd 48(%r10),%xmm1 860 movd 48(%r11),%xmm2 861 punpckldq %xmm1,%xmm5 862 punpckldq %xmm2,%xmm0 863 punpckldq %xmm0,%xmm5 864 movdqa %xmm8,%xmm7 865.byte 102,15,56,0,238 866 movdqa %xmm8,%xmm2 867 868 psrld $6,%xmm7 869 movdqa %xmm8,%xmm1 870 pslld $7,%xmm2 871 movdqa %xmm5,192-128(%rax) 872 paddd %xmm11,%xmm5 873 874 psrld $11,%xmm1 875 pxor %xmm2,%xmm7 876 pslld $21-7,%xmm2 877 paddd 0(%rbp),%xmm5 878 pxor %xmm1,%xmm7 879 880 psrld $25-11,%xmm1 881 movdqa %xmm8,%xmm0 882 883 pxor %xmm2,%xmm7 884 movdqa %xmm8,%xmm3 885 pslld $26-21,%xmm2 886 pandn %xmm10,%xmm0 887 pand %xmm9,%xmm3 888 pxor %xmm1,%xmm7 889 890 891 movdqa %xmm12,%xmm1 892 pxor %xmm2,%xmm7 893 movdqa %xmm12,%xmm2 894 psrld $2,%xmm1 895 paddd %xmm7,%xmm5 896 pxor %xmm3,%xmm0 897 movdqa %xmm13,%xmm3 898 movdqa %xmm12,%xmm7 899 pslld $10,%xmm2 900 pxor %xmm12,%xmm3 901 902 903 psrld $13,%xmm7 904 pxor %xmm2,%xmm1 905 paddd %xmm0,%xmm5 906 pslld $19-10,%xmm2 907 pand %xmm3,%xmm4 908 pxor %xmm7,%xmm1 909 910 911 psrld $22-13,%xmm7 912 pxor %xmm2,%xmm1 913 movdqa %xmm13,%xmm11 914 pslld $30-19,%xmm2 915 pxor %xmm1,%xmm7 916 pxor %xmm4,%xmm11 917 paddd %xmm5,%xmm15 918 pxor %xmm2,%xmm7 919 920 paddd %xmm5,%xmm11 921 paddd %xmm7,%xmm11 922 movd 52(%r8),%xmm5 923 movd 52(%r9),%xmm0 924 movd 52(%r10),%xmm1 925 movd 52(%r11),%xmm2 926 punpckldq %xmm1,%xmm5 927 punpckldq %xmm2,%xmm0 928 punpckldq %xmm0,%xmm5 929 movdqa %xmm15,%xmm7 930 931 movdqa %xmm15,%xmm2 932.byte 102,15,56,0,238 933 psrld $6,%xmm7 934 movdqa %xmm15,%xmm1 935 pslld $7,%xmm2 936 movdqa %xmm5,208-128(%rax) 937 paddd %xmm10,%xmm5 938 939 psrld $11,%xmm1 940 pxor %xmm2,%xmm7 941 pslld $21-7,%xmm2 942 paddd 32(%rbp),%xmm5 943 pxor %xmm1,%xmm7 944 945 psrld $25-11,%xmm1 946 movdqa %xmm15,%xmm0 947 948 pxor %xmm2,%xmm7 949 movdqa %xmm15,%xmm4 950 pslld $26-21,%xmm2 951 pandn %xmm9,%xmm0 952 pand %xmm8,%xmm4 953 pxor %xmm1,%xmm7 954 955 956 movdqa %xmm11,%xmm1 957 pxor %xmm2,%xmm7 958 movdqa %xmm11,%xmm2 959 psrld $2,%xmm1 960 paddd %xmm7,%xmm5 961 pxor %xmm4,%xmm0 962 movdqa %xmm12,%xmm4 963 movdqa %xmm11,%xmm7 964 pslld $10,%xmm2 965 pxor %xmm11,%xmm4 966 967 968 psrld $13,%xmm7 969 pxor %xmm2,%xmm1 970 paddd %xmm0,%xmm5 971 pslld $19-10,%xmm2 972 pand %xmm4,%xmm3 973 pxor %xmm7,%xmm1 974 975 976 psrld $22-13,%xmm7 977 pxor %xmm2,%xmm1 978 movdqa %xmm12,%xmm10 979 pslld $30-19,%xmm2 980 pxor %xmm1,%xmm7 981 pxor %xmm3,%xmm10 982 paddd %xmm5,%xmm14 983 pxor %xmm2,%xmm7 984 985 paddd %xmm5,%xmm10 986 paddd %xmm7,%xmm10 987 movd 56(%r8),%xmm5 988 movd 56(%r9),%xmm0 989 movd 56(%r10),%xmm1 990 movd 56(%r11),%xmm2 991 punpckldq %xmm1,%xmm5 992 punpckldq %xmm2,%xmm0 993 punpckldq %xmm0,%xmm5 994 movdqa %xmm14,%xmm7 995.byte 102,15,56,0,238 996 movdqa %xmm14,%xmm2 997 998 psrld $6,%xmm7 999 movdqa %xmm14,%xmm1 1000 pslld $7,%xmm2 1001 movdqa %xmm5,224-128(%rax) 1002 paddd %xmm9,%xmm5 1003 1004 psrld $11,%xmm1 1005 pxor %xmm2,%xmm7 1006 pslld $21-7,%xmm2 1007 paddd 64(%rbp),%xmm5 1008 pxor %xmm1,%xmm7 1009 1010 psrld $25-11,%xmm1 1011 movdqa %xmm14,%xmm0 1012 1013 pxor %xmm2,%xmm7 1014 movdqa %xmm14,%xmm3 1015 pslld $26-21,%xmm2 1016 pandn %xmm8,%xmm0 1017 pand %xmm15,%xmm3 1018 pxor %xmm1,%xmm7 1019 1020 1021 movdqa %xmm10,%xmm1 1022 pxor %xmm2,%xmm7 1023 movdqa %xmm10,%xmm2 1024 psrld $2,%xmm1 1025 paddd %xmm7,%xmm5 1026 pxor %xmm3,%xmm0 1027 movdqa %xmm11,%xmm3 1028 movdqa %xmm10,%xmm7 1029 pslld $10,%xmm2 1030 pxor %xmm10,%xmm3 1031 1032 1033 psrld $13,%xmm7 1034 pxor %xmm2,%xmm1 1035 paddd %xmm0,%xmm5 1036 pslld $19-10,%xmm2 1037 pand %xmm3,%xmm4 1038 pxor %xmm7,%xmm1 1039 1040 1041 psrld $22-13,%xmm7 1042 pxor %xmm2,%xmm1 1043 movdqa %xmm11,%xmm9 1044 pslld $30-19,%xmm2 1045 pxor %xmm1,%xmm7 1046 pxor %xmm4,%xmm9 1047 paddd %xmm5,%xmm13 1048 pxor %xmm2,%xmm7 1049 1050 paddd %xmm5,%xmm9 1051 paddd %xmm7,%xmm9 1052 movd 60(%r8),%xmm5 1053 leaq 64(%r8),%r8 1054 movd 60(%r9),%xmm0 1055 leaq 64(%r9),%r9 1056 movd 60(%r10),%xmm1 1057 leaq 64(%r10),%r10 1058 movd 60(%r11),%xmm2 1059 leaq 64(%r11),%r11 1060 punpckldq %xmm1,%xmm5 1061 punpckldq %xmm2,%xmm0 1062 punpckldq %xmm0,%xmm5 1063 movdqa %xmm13,%xmm7 1064 1065 movdqa %xmm13,%xmm2 1066.byte 102,15,56,0,238 1067 psrld $6,%xmm7 1068 movdqa %xmm13,%xmm1 1069 pslld $7,%xmm2 1070 movdqa %xmm5,240-128(%rax) 1071 paddd %xmm8,%xmm5 1072 1073 psrld $11,%xmm1 1074 pxor %xmm2,%xmm7 1075 pslld $21-7,%xmm2 1076 paddd 96(%rbp),%xmm5 1077 pxor %xmm1,%xmm7 1078 1079 psrld $25-11,%xmm1 1080 movdqa %xmm13,%xmm0 1081 prefetcht0 63(%r8) 1082 pxor %xmm2,%xmm7 1083 movdqa %xmm13,%xmm4 1084 pslld $26-21,%xmm2 1085 pandn %xmm15,%xmm0 1086 pand %xmm14,%xmm4 1087 pxor %xmm1,%xmm7 1088 1089 prefetcht0 63(%r9) 1090 movdqa %xmm9,%xmm1 1091 pxor %xmm2,%xmm7 1092 movdqa %xmm9,%xmm2 1093 psrld $2,%xmm1 1094 paddd %xmm7,%xmm5 1095 pxor %xmm4,%xmm0 1096 movdqa %xmm10,%xmm4 1097 movdqa %xmm9,%xmm7 1098 pslld $10,%xmm2 1099 pxor %xmm9,%xmm4 1100 1101 prefetcht0 63(%r10) 1102 psrld $13,%xmm7 1103 pxor %xmm2,%xmm1 1104 paddd %xmm0,%xmm5 1105 pslld $19-10,%xmm2 1106 pand %xmm4,%xmm3 1107 pxor %xmm7,%xmm1 1108 1109 prefetcht0 63(%r11) 1110 psrld $22-13,%xmm7 1111 pxor %xmm2,%xmm1 1112 movdqa %xmm10,%xmm8 1113 pslld $30-19,%xmm2 1114 pxor %xmm1,%xmm7 1115 pxor %xmm3,%xmm8 1116 paddd %xmm5,%xmm12 1117 pxor %xmm2,%xmm7 1118 1119 paddd %xmm5,%xmm8 1120 paddd %xmm7,%xmm8 1121 leaq 256(%rbp),%rbp 1122 movdqu 0-128(%rax),%xmm5 1123 movl $3,%ecx 1124 jmp .Loop_16_xx 1125.align 32 1126.Loop_16_xx: 1127 movdqa 16-128(%rax),%xmm6 1128 paddd 144-128(%rax),%xmm5 1129 1130 movdqa %xmm6,%xmm7 1131 movdqa %xmm6,%xmm1 1132 psrld $3,%xmm7 1133 movdqa %xmm6,%xmm2 1134 1135 psrld $7,%xmm1 1136 movdqa 224-128(%rax),%xmm0 1137 pslld $14,%xmm2 1138 pxor %xmm1,%xmm7 1139 psrld $18-7,%xmm1 1140 movdqa %xmm0,%xmm3 1141 pxor %xmm2,%xmm7 1142 pslld $25-14,%xmm2 1143 pxor %xmm1,%xmm7 1144 psrld $10,%xmm0 1145 movdqa %xmm3,%xmm1 1146 1147 psrld $17,%xmm3 1148 pxor %xmm2,%xmm7 1149 pslld $13,%xmm1 1150 paddd %xmm7,%xmm5 1151 pxor %xmm3,%xmm0 1152 psrld $19-17,%xmm3 1153 pxor %xmm1,%xmm0 1154 pslld $15-13,%xmm1 1155 pxor %xmm3,%xmm0 1156 pxor %xmm1,%xmm0 1157 paddd %xmm0,%xmm5 1158 movdqa %xmm12,%xmm7 1159 1160 movdqa %xmm12,%xmm2 1161 1162 psrld $6,%xmm7 1163 movdqa %xmm12,%xmm1 1164 pslld $7,%xmm2 1165 movdqa %xmm5,0-128(%rax) 1166 paddd %xmm15,%xmm5 1167 1168 psrld $11,%xmm1 1169 pxor %xmm2,%xmm7 1170 pslld $21-7,%xmm2 1171 paddd -128(%rbp),%xmm5 1172 pxor %xmm1,%xmm7 1173 1174 psrld $25-11,%xmm1 1175 movdqa %xmm12,%xmm0 1176 1177 pxor %xmm2,%xmm7 1178 movdqa %xmm12,%xmm3 1179 pslld $26-21,%xmm2 1180 pandn %xmm14,%xmm0 1181 pand %xmm13,%xmm3 1182 pxor %xmm1,%xmm7 1183 1184 1185 movdqa %xmm8,%xmm1 1186 pxor %xmm2,%xmm7 1187 movdqa %xmm8,%xmm2 1188 psrld $2,%xmm1 1189 paddd %xmm7,%xmm5 1190 pxor %xmm3,%xmm0 1191 movdqa %xmm9,%xmm3 1192 movdqa %xmm8,%xmm7 1193 pslld $10,%xmm2 1194 pxor %xmm8,%xmm3 1195 1196 1197 psrld $13,%xmm7 1198 pxor %xmm2,%xmm1 1199 paddd %xmm0,%xmm5 1200 pslld $19-10,%xmm2 1201 pand %xmm3,%xmm4 1202 pxor %xmm7,%xmm1 1203 1204 1205 psrld $22-13,%xmm7 1206 pxor %xmm2,%xmm1 1207 movdqa %xmm9,%xmm15 1208 pslld $30-19,%xmm2 1209 pxor %xmm1,%xmm7 1210 pxor %xmm4,%xmm15 1211 paddd %xmm5,%xmm11 1212 pxor %xmm2,%xmm7 1213 1214 paddd %xmm5,%xmm15 1215 paddd %xmm7,%xmm15 1216 movdqa 32-128(%rax),%xmm5 1217 paddd 160-128(%rax),%xmm6 1218 1219 movdqa %xmm5,%xmm7 1220 movdqa %xmm5,%xmm1 1221 psrld $3,%xmm7 1222 movdqa %xmm5,%xmm2 1223 1224 psrld $7,%xmm1 1225 movdqa 240-128(%rax),%xmm0 1226 pslld $14,%xmm2 1227 pxor %xmm1,%xmm7 1228 psrld $18-7,%xmm1 1229 movdqa %xmm0,%xmm4 1230 pxor %xmm2,%xmm7 1231 pslld $25-14,%xmm2 1232 pxor %xmm1,%xmm7 1233 psrld $10,%xmm0 1234 movdqa %xmm4,%xmm1 1235 1236 psrld $17,%xmm4 1237 pxor %xmm2,%xmm7 1238 pslld $13,%xmm1 1239 paddd %xmm7,%xmm6 1240 pxor %xmm4,%xmm0 1241 psrld $19-17,%xmm4 1242 pxor %xmm1,%xmm0 1243 pslld $15-13,%xmm1 1244 pxor %xmm4,%xmm0 1245 pxor %xmm1,%xmm0 1246 paddd %xmm0,%xmm6 1247 movdqa %xmm11,%xmm7 1248 1249 movdqa %xmm11,%xmm2 1250 1251 psrld $6,%xmm7 1252 movdqa %xmm11,%xmm1 1253 pslld $7,%xmm2 1254 movdqa %xmm6,16-128(%rax) 1255 paddd %xmm14,%xmm6 1256 1257 psrld $11,%xmm1 1258 pxor %xmm2,%xmm7 1259 pslld $21-7,%xmm2 1260 paddd -96(%rbp),%xmm6 1261 pxor %xmm1,%xmm7 1262 1263 psrld $25-11,%xmm1 1264 movdqa %xmm11,%xmm0 1265 1266 pxor %xmm2,%xmm7 1267 movdqa %xmm11,%xmm4 1268 pslld $26-21,%xmm2 1269 pandn %xmm13,%xmm0 1270 pand %xmm12,%xmm4 1271 pxor %xmm1,%xmm7 1272 1273 1274 movdqa %xmm15,%xmm1 1275 pxor %xmm2,%xmm7 1276 movdqa %xmm15,%xmm2 1277 psrld $2,%xmm1 1278 paddd %xmm7,%xmm6 1279 pxor %xmm4,%xmm0 1280 movdqa %xmm8,%xmm4 1281 movdqa %xmm15,%xmm7 1282 pslld $10,%xmm2 1283 pxor %xmm15,%xmm4 1284 1285 1286 psrld $13,%xmm7 1287 pxor %xmm2,%xmm1 1288 paddd %xmm0,%xmm6 1289 pslld $19-10,%xmm2 1290 pand %xmm4,%xmm3 1291 pxor %xmm7,%xmm1 1292 1293 1294 psrld $22-13,%xmm7 1295 pxor %xmm2,%xmm1 1296 movdqa %xmm8,%xmm14 1297 pslld $30-19,%xmm2 1298 pxor %xmm1,%xmm7 1299 pxor %xmm3,%xmm14 1300 paddd %xmm6,%xmm10 1301 pxor %xmm2,%xmm7 1302 1303 paddd %xmm6,%xmm14 1304 paddd %xmm7,%xmm14 1305 movdqa 48-128(%rax),%xmm6 1306 paddd 176-128(%rax),%xmm5 1307 1308 movdqa %xmm6,%xmm7 1309 movdqa %xmm6,%xmm1 1310 psrld $3,%xmm7 1311 movdqa %xmm6,%xmm2 1312 1313 psrld $7,%xmm1 1314 movdqa 0-128(%rax),%xmm0 1315 pslld $14,%xmm2 1316 pxor %xmm1,%xmm7 1317 psrld $18-7,%xmm1 1318 movdqa %xmm0,%xmm3 1319 pxor %xmm2,%xmm7 1320 pslld $25-14,%xmm2 1321 pxor %xmm1,%xmm7 1322 psrld $10,%xmm0 1323 movdqa %xmm3,%xmm1 1324 1325 psrld $17,%xmm3 1326 pxor %xmm2,%xmm7 1327 pslld $13,%xmm1 1328 paddd %xmm7,%xmm5 1329 pxor %xmm3,%xmm0 1330 psrld $19-17,%xmm3 1331 pxor %xmm1,%xmm0 1332 pslld $15-13,%xmm1 1333 pxor %xmm3,%xmm0 1334 pxor %xmm1,%xmm0 1335 paddd %xmm0,%xmm5 1336 movdqa %xmm10,%xmm7 1337 1338 movdqa %xmm10,%xmm2 1339 1340 psrld $6,%xmm7 1341 movdqa %xmm10,%xmm1 1342 pslld $7,%xmm2 1343 movdqa %xmm5,32-128(%rax) 1344 paddd %xmm13,%xmm5 1345 1346 psrld $11,%xmm1 1347 pxor %xmm2,%xmm7 1348 pslld $21-7,%xmm2 1349 paddd -64(%rbp),%xmm5 1350 pxor %xmm1,%xmm7 1351 1352 psrld $25-11,%xmm1 1353 movdqa %xmm10,%xmm0 1354 1355 pxor %xmm2,%xmm7 1356 movdqa %xmm10,%xmm3 1357 pslld $26-21,%xmm2 1358 pandn %xmm12,%xmm0 1359 pand %xmm11,%xmm3 1360 pxor %xmm1,%xmm7 1361 1362 1363 movdqa %xmm14,%xmm1 1364 pxor %xmm2,%xmm7 1365 movdqa %xmm14,%xmm2 1366 psrld $2,%xmm1 1367 paddd %xmm7,%xmm5 1368 pxor %xmm3,%xmm0 1369 movdqa %xmm15,%xmm3 1370 movdqa %xmm14,%xmm7 1371 pslld $10,%xmm2 1372 pxor %xmm14,%xmm3 1373 1374 1375 psrld $13,%xmm7 1376 pxor %xmm2,%xmm1 1377 paddd %xmm0,%xmm5 1378 pslld $19-10,%xmm2 1379 pand %xmm3,%xmm4 1380 pxor %xmm7,%xmm1 1381 1382 1383 psrld $22-13,%xmm7 1384 pxor %xmm2,%xmm1 1385 movdqa %xmm15,%xmm13 1386 pslld $30-19,%xmm2 1387 pxor %xmm1,%xmm7 1388 pxor %xmm4,%xmm13 1389 paddd %xmm5,%xmm9 1390 pxor %xmm2,%xmm7 1391 1392 paddd %xmm5,%xmm13 1393 paddd %xmm7,%xmm13 1394 movdqa 64-128(%rax),%xmm5 1395 paddd 192-128(%rax),%xmm6 1396 1397 movdqa %xmm5,%xmm7 1398 movdqa %xmm5,%xmm1 1399 psrld $3,%xmm7 1400 movdqa %xmm5,%xmm2 1401 1402 psrld $7,%xmm1 1403 movdqa 16-128(%rax),%xmm0 1404 pslld $14,%xmm2 1405 pxor %xmm1,%xmm7 1406 psrld $18-7,%xmm1 1407 movdqa %xmm0,%xmm4 1408 pxor %xmm2,%xmm7 1409 pslld $25-14,%xmm2 1410 pxor %xmm1,%xmm7 1411 psrld $10,%xmm0 1412 movdqa %xmm4,%xmm1 1413 1414 psrld $17,%xmm4 1415 pxor %xmm2,%xmm7 1416 pslld $13,%xmm1 1417 paddd %xmm7,%xmm6 1418 pxor %xmm4,%xmm0 1419 psrld $19-17,%xmm4 1420 pxor %xmm1,%xmm0 1421 pslld $15-13,%xmm1 1422 pxor %xmm4,%xmm0 1423 pxor %xmm1,%xmm0 1424 paddd %xmm0,%xmm6 1425 movdqa %xmm9,%xmm7 1426 1427 movdqa %xmm9,%xmm2 1428 1429 psrld $6,%xmm7 1430 movdqa %xmm9,%xmm1 1431 pslld $7,%xmm2 1432 movdqa %xmm6,48-128(%rax) 1433 paddd %xmm12,%xmm6 1434 1435 psrld $11,%xmm1 1436 pxor %xmm2,%xmm7 1437 pslld $21-7,%xmm2 1438 paddd -32(%rbp),%xmm6 1439 pxor %xmm1,%xmm7 1440 1441 psrld $25-11,%xmm1 1442 movdqa %xmm9,%xmm0 1443 1444 pxor %xmm2,%xmm7 1445 movdqa %xmm9,%xmm4 1446 pslld $26-21,%xmm2 1447 pandn %xmm11,%xmm0 1448 pand %xmm10,%xmm4 1449 pxor %xmm1,%xmm7 1450 1451 1452 movdqa %xmm13,%xmm1 1453 pxor %xmm2,%xmm7 1454 movdqa %xmm13,%xmm2 1455 psrld $2,%xmm1 1456 paddd %xmm7,%xmm6 1457 pxor %xmm4,%xmm0 1458 movdqa %xmm14,%xmm4 1459 movdqa %xmm13,%xmm7 1460 pslld $10,%xmm2 1461 pxor %xmm13,%xmm4 1462 1463 1464 psrld $13,%xmm7 1465 pxor %xmm2,%xmm1 1466 paddd %xmm0,%xmm6 1467 pslld $19-10,%xmm2 1468 pand %xmm4,%xmm3 1469 pxor %xmm7,%xmm1 1470 1471 1472 psrld $22-13,%xmm7 1473 pxor %xmm2,%xmm1 1474 movdqa %xmm14,%xmm12 1475 pslld $30-19,%xmm2 1476 pxor %xmm1,%xmm7 1477 pxor %xmm3,%xmm12 1478 paddd %xmm6,%xmm8 1479 pxor %xmm2,%xmm7 1480 1481 paddd %xmm6,%xmm12 1482 paddd %xmm7,%xmm12 1483 movdqa 80-128(%rax),%xmm6 1484 paddd 208-128(%rax),%xmm5 1485 1486 movdqa %xmm6,%xmm7 1487 movdqa %xmm6,%xmm1 1488 psrld $3,%xmm7 1489 movdqa %xmm6,%xmm2 1490 1491 psrld $7,%xmm1 1492 movdqa 32-128(%rax),%xmm0 1493 pslld $14,%xmm2 1494 pxor %xmm1,%xmm7 1495 psrld $18-7,%xmm1 1496 movdqa %xmm0,%xmm3 1497 pxor %xmm2,%xmm7 1498 pslld $25-14,%xmm2 1499 pxor %xmm1,%xmm7 1500 psrld $10,%xmm0 1501 movdqa %xmm3,%xmm1 1502 1503 psrld $17,%xmm3 1504 pxor %xmm2,%xmm7 1505 pslld $13,%xmm1 1506 paddd %xmm7,%xmm5 1507 pxor %xmm3,%xmm0 1508 psrld $19-17,%xmm3 1509 pxor %xmm1,%xmm0 1510 pslld $15-13,%xmm1 1511 pxor %xmm3,%xmm0 1512 pxor %xmm1,%xmm0 1513 paddd %xmm0,%xmm5 1514 movdqa %xmm8,%xmm7 1515 1516 movdqa %xmm8,%xmm2 1517 1518 psrld $6,%xmm7 1519 movdqa %xmm8,%xmm1 1520 pslld $7,%xmm2 1521 movdqa %xmm5,64-128(%rax) 1522 paddd %xmm11,%xmm5 1523 1524 psrld $11,%xmm1 1525 pxor %xmm2,%xmm7 1526 pslld $21-7,%xmm2 1527 paddd 0(%rbp),%xmm5 1528 pxor %xmm1,%xmm7 1529 1530 psrld $25-11,%xmm1 1531 movdqa %xmm8,%xmm0 1532 1533 pxor %xmm2,%xmm7 1534 movdqa %xmm8,%xmm3 1535 pslld $26-21,%xmm2 1536 pandn %xmm10,%xmm0 1537 pand %xmm9,%xmm3 1538 pxor %xmm1,%xmm7 1539 1540 1541 movdqa %xmm12,%xmm1 1542 pxor %xmm2,%xmm7 1543 movdqa %xmm12,%xmm2 1544 psrld $2,%xmm1 1545 paddd %xmm7,%xmm5 1546 pxor %xmm3,%xmm0 1547 movdqa %xmm13,%xmm3 1548 movdqa %xmm12,%xmm7 1549 pslld $10,%xmm2 1550 pxor %xmm12,%xmm3 1551 1552 1553 psrld $13,%xmm7 1554 pxor %xmm2,%xmm1 1555 paddd %xmm0,%xmm5 1556 pslld $19-10,%xmm2 1557 pand %xmm3,%xmm4 1558 pxor %xmm7,%xmm1 1559 1560 1561 psrld $22-13,%xmm7 1562 pxor %xmm2,%xmm1 1563 movdqa %xmm13,%xmm11 1564 pslld $30-19,%xmm2 1565 pxor %xmm1,%xmm7 1566 pxor %xmm4,%xmm11 1567 paddd %xmm5,%xmm15 1568 pxor %xmm2,%xmm7 1569 1570 paddd %xmm5,%xmm11 1571 paddd %xmm7,%xmm11 1572 movdqa 96-128(%rax),%xmm5 1573 paddd 224-128(%rax),%xmm6 1574 1575 movdqa %xmm5,%xmm7 1576 movdqa %xmm5,%xmm1 1577 psrld $3,%xmm7 1578 movdqa %xmm5,%xmm2 1579 1580 psrld $7,%xmm1 1581 movdqa 48-128(%rax),%xmm0 1582 pslld $14,%xmm2 1583 pxor %xmm1,%xmm7 1584 psrld $18-7,%xmm1 1585 movdqa %xmm0,%xmm4 1586 pxor %xmm2,%xmm7 1587 pslld $25-14,%xmm2 1588 pxor %xmm1,%xmm7 1589 psrld $10,%xmm0 1590 movdqa %xmm4,%xmm1 1591 1592 psrld $17,%xmm4 1593 pxor %xmm2,%xmm7 1594 pslld $13,%xmm1 1595 paddd %xmm7,%xmm6 1596 pxor %xmm4,%xmm0 1597 psrld $19-17,%xmm4 1598 pxor %xmm1,%xmm0 1599 pslld $15-13,%xmm1 1600 pxor %xmm4,%xmm0 1601 pxor %xmm1,%xmm0 1602 paddd %xmm0,%xmm6 1603 movdqa %xmm15,%xmm7 1604 1605 movdqa %xmm15,%xmm2 1606 1607 psrld $6,%xmm7 1608 movdqa %xmm15,%xmm1 1609 pslld $7,%xmm2 1610 movdqa %xmm6,80-128(%rax) 1611 paddd %xmm10,%xmm6 1612 1613 psrld $11,%xmm1 1614 pxor %xmm2,%xmm7 1615 pslld $21-7,%xmm2 1616 paddd 32(%rbp),%xmm6 1617 pxor %xmm1,%xmm7 1618 1619 psrld $25-11,%xmm1 1620 movdqa %xmm15,%xmm0 1621 1622 pxor %xmm2,%xmm7 1623 movdqa %xmm15,%xmm4 1624 pslld $26-21,%xmm2 1625 pandn %xmm9,%xmm0 1626 pand %xmm8,%xmm4 1627 pxor %xmm1,%xmm7 1628 1629 1630 movdqa %xmm11,%xmm1 1631 pxor %xmm2,%xmm7 1632 movdqa %xmm11,%xmm2 1633 psrld $2,%xmm1 1634 paddd %xmm7,%xmm6 1635 pxor %xmm4,%xmm0 1636 movdqa %xmm12,%xmm4 1637 movdqa %xmm11,%xmm7 1638 pslld $10,%xmm2 1639 pxor %xmm11,%xmm4 1640 1641 1642 psrld $13,%xmm7 1643 pxor %xmm2,%xmm1 1644 paddd %xmm0,%xmm6 1645 pslld $19-10,%xmm2 1646 pand %xmm4,%xmm3 1647 pxor %xmm7,%xmm1 1648 1649 1650 psrld $22-13,%xmm7 1651 pxor %xmm2,%xmm1 1652 movdqa %xmm12,%xmm10 1653 pslld $30-19,%xmm2 1654 pxor %xmm1,%xmm7 1655 pxor %xmm3,%xmm10 1656 paddd %xmm6,%xmm14 1657 pxor %xmm2,%xmm7 1658 1659 paddd %xmm6,%xmm10 1660 paddd %xmm7,%xmm10 1661 movdqa 112-128(%rax),%xmm6 1662 paddd 240-128(%rax),%xmm5 1663 1664 movdqa %xmm6,%xmm7 1665 movdqa %xmm6,%xmm1 1666 psrld $3,%xmm7 1667 movdqa %xmm6,%xmm2 1668 1669 psrld $7,%xmm1 1670 movdqa 64-128(%rax),%xmm0 1671 pslld $14,%xmm2 1672 pxor %xmm1,%xmm7 1673 psrld $18-7,%xmm1 1674 movdqa %xmm0,%xmm3 1675 pxor %xmm2,%xmm7 1676 pslld $25-14,%xmm2 1677 pxor %xmm1,%xmm7 1678 psrld $10,%xmm0 1679 movdqa %xmm3,%xmm1 1680 1681 psrld $17,%xmm3 1682 pxor %xmm2,%xmm7 1683 pslld $13,%xmm1 1684 paddd %xmm7,%xmm5 1685 pxor %xmm3,%xmm0 1686 psrld $19-17,%xmm3 1687 pxor %xmm1,%xmm0 1688 pslld $15-13,%xmm1 1689 pxor %xmm3,%xmm0 1690 pxor %xmm1,%xmm0 1691 paddd %xmm0,%xmm5 1692 movdqa %xmm14,%xmm7 1693 1694 movdqa %xmm14,%xmm2 1695 1696 psrld $6,%xmm7 1697 movdqa %xmm14,%xmm1 1698 pslld $7,%xmm2 1699 movdqa %xmm5,96-128(%rax) 1700 paddd %xmm9,%xmm5 1701 1702 psrld $11,%xmm1 1703 pxor %xmm2,%xmm7 1704 pslld $21-7,%xmm2 1705 paddd 64(%rbp),%xmm5 1706 pxor %xmm1,%xmm7 1707 1708 psrld $25-11,%xmm1 1709 movdqa %xmm14,%xmm0 1710 1711 pxor %xmm2,%xmm7 1712 movdqa %xmm14,%xmm3 1713 pslld $26-21,%xmm2 1714 pandn %xmm8,%xmm0 1715 pand %xmm15,%xmm3 1716 pxor %xmm1,%xmm7 1717 1718 1719 movdqa %xmm10,%xmm1 1720 pxor %xmm2,%xmm7 1721 movdqa %xmm10,%xmm2 1722 psrld $2,%xmm1 1723 paddd %xmm7,%xmm5 1724 pxor %xmm3,%xmm0 1725 movdqa %xmm11,%xmm3 1726 movdqa %xmm10,%xmm7 1727 pslld $10,%xmm2 1728 pxor %xmm10,%xmm3 1729 1730 1731 psrld $13,%xmm7 1732 pxor %xmm2,%xmm1 1733 paddd %xmm0,%xmm5 1734 pslld $19-10,%xmm2 1735 pand %xmm3,%xmm4 1736 pxor %xmm7,%xmm1 1737 1738 1739 psrld $22-13,%xmm7 1740 pxor %xmm2,%xmm1 1741 movdqa %xmm11,%xmm9 1742 pslld $30-19,%xmm2 1743 pxor %xmm1,%xmm7 1744 pxor %xmm4,%xmm9 1745 paddd %xmm5,%xmm13 1746 pxor %xmm2,%xmm7 1747 1748 paddd %xmm5,%xmm9 1749 paddd %xmm7,%xmm9 1750 movdqa 128-128(%rax),%xmm5 1751 paddd 0-128(%rax),%xmm6 1752 1753 movdqa %xmm5,%xmm7 1754 movdqa %xmm5,%xmm1 1755 psrld $3,%xmm7 1756 movdqa %xmm5,%xmm2 1757 1758 psrld $7,%xmm1 1759 movdqa 80-128(%rax),%xmm0 1760 pslld $14,%xmm2 1761 pxor %xmm1,%xmm7 1762 psrld $18-7,%xmm1 1763 movdqa %xmm0,%xmm4 1764 pxor %xmm2,%xmm7 1765 pslld $25-14,%xmm2 1766 pxor %xmm1,%xmm7 1767 psrld $10,%xmm0 1768 movdqa %xmm4,%xmm1 1769 1770 psrld $17,%xmm4 1771 pxor %xmm2,%xmm7 1772 pslld $13,%xmm1 1773 paddd %xmm7,%xmm6 1774 pxor %xmm4,%xmm0 1775 psrld $19-17,%xmm4 1776 pxor %xmm1,%xmm0 1777 pslld $15-13,%xmm1 1778 pxor %xmm4,%xmm0 1779 pxor %xmm1,%xmm0 1780 paddd %xmm0,%xmm6 1781 movdqa %xmm13,%xmm7 1782 1783 movdqa %xmm13,%xmm2 1784 1785 psrld $6,%xmm7 1786 movdqa %xmm13,%xmm1 1787 pslld $7,%xmm2 1788 movdqa %xmm6,112-128(%rax) 1789 paddd %xmm8,%xmm6 1790 1791 psrld $11,%xmm1 1792 pxor %xmm2,%xmm7 1793 pslld $21-7,%xmm2 1794 paddd 96(%rbp),%xmm6 1795 pxor %xmm1,%xmm7 1796 1797 psrld $25-11,%xmm1 1798 movdqa %xmm13,%xmm0 1799 1800 pxor %xmm2,%xmm7 1801 movdqa %xmm13,%xmm4 1802 pslld $26-21,%xmm2 1803 pandn %xmm15,%xmm0 1804 pand %xmm14,%xmm4 1805 pxor %xmm1,%xmm7 1806 1807 1808 movdqa %xmm9,%xmm1 1809 pxor %xmm2,%xmm7 1810 movdqa %xmm9,%xmm2 1811 psrld $2,%xmm1 1812 paddd %xmm7,%xmm6 1813 pxor %xmm4,%xmm0 1814 movdqa %xmm10,%xmm4 1815 movdqa %xmm9,%xmm7 1816 pslld $10,%xmm2 1817 pxor %xmm9,%xmm4 1818 1819 1820 psrld $13,%xmm7 1821 pxor %xmm2,%xmm1 1822 paddd %xmm0,%xmm6 1823 pslld $19-10,%xmm2 1824 pand %xmm4,%xmm3 1825 pxor %xmm7,%xmm1 1826 1827 1828 psrld $22-13,%xmm7 1829 pxor %xmm2,%xmm1 1830 movdqa %xmm10,%xmm8 1831 pslld $30-19,%xmm2 1832 pxor %xmm1,%xmm7 1833 pxor %xmm3,%xmm8 1834 paddd %xmm6,%xmm12 1835 pxor %xmm2,%xmm7 1836 1837 paddd %xmm6,%xmm8 1838 paddd %xmm7,%xmm8 1839 leaq 256(%rbp),%rbp 1840 movdqa 144-128(%rax),%xmm6 1841 paddd 16-128(%rax),%xmm5 1842 1843 movdqa %xmm6,%xmm7 1844 movdqa %xmm6,%xmm1 1845 psrld $3,%xmm7 1846 movdqa %xmm6,%xmm2 1847 1848 psrld $7,%xmm1 1849 movdqa 96-128(%rax),%xmm0 1850 pslld $14,%xmm2 1851 pxor %xmm1,%xmm7 1852 psrld $18-7,%xmm1 1853 movdqa %xmm0,%xmm3 1854 pxor %xmm2,%xmm7 1855 pslld $25-14,%xmm2 1856 pxor %xmm1,%xmm7 1857 psrld $10,%xmm0 1858 movdqa %xmm3,%xmm1 1859 1860 psrld $17,%xmm3 1861 pxor %xmm2,%xmm7 1862 pslld $13,%xmm1 1863 paddd %xmm7,%xmm5 1864 pxor %xmm3,%xmm0 1865 psrld $19-17,%xmm3 1866 pxor %xmm1,%xmm0 1867 pslld $15-13,%xmm1 1868 pxor %xmm3,%xmm0 1869 pxor %xmm1,%xmm0 1870 paddd %xmm0,%xmm5 1871 movdqa %xmm12,%xmm7 1872 1873 movdqa %xmm12,%xmm2 1874 1875 psrld $6,%xmm7 1876 movdqa %xmm12,%xmm1 1877 pslld $7,%xmm2 1878 movdqa %xmm5,128-128(%rax) 1879 paddd %xmm15,%xmm5 1880 1881 psrld $11,%xmm1 1882 pxor %xmm2,%xmm7 1883 pslld $21-7,%xmm2 1884 paddd -128(%rbp),%xmm5 1885 pxor %xmm1,%xmm7 1886 1887 psrld $25-11,%xmm1 1888 movdqa %xmm12,%xmm0 1889 1890 pxor %xmm2,%xmm7 1891 movdqa %xmm12,%xmm3 1892 pslld $26-21,%xmm2 1893 pandn %xmm14,%xmm0 1894 pand %xmm13,%xmm3 1895 pxor %xmm1,%xmm7 1896 1897 1898 movdqa %xmm8,%xmm1 1899 pxor %xmm2,%xmm7 1900 movdqa %xmm8,%xmm2 1901 psrld $2,%xmm1 1902 paddd %xmm7,%xmm5 1903 pxor %xmm3,%xmm0 1904 movdqa %xmm9,%xmm3 1905 movdqa %xmm8,%xmm7 1906 pslld $10,%xmm2 1907 pxor %xmm8,%xmm3 1908 1909 1910 psrld $13,%xmm7 1911 pxor %xmm2,%xmm1 1912 paddd %xmm0,%xmm5 1913 pslld $19-10,%xmm2 1914 pand %xmm3,%xmm4 1915 pxor %xmm7,%xmm1 1916 1917 1918 psrld $22-13,%xmm7 1919 pxor %xmm2,%xmm1 1920 movdqa %xmm9,%xmm15 1921 pslld $30-19,%xmm2 1922 pxor %xmm1,%xmm7 1923 pxor %xmm4,%xmm15 1924 paddd %xmm5,%xmm11 1925 pxor %xmm2,%xmm7 1926 1927 paddd %xmm5,%xmm15 1928 paddd %xmm7,%xmm15 1929 movdqa 160-128(%rax),%xmm5 1930 paddd 32-128(%rax),%xmm6 1931 1932 movdqa %xmm5,%xmm7 1933 movdqa %xmm5,%xmm1 1934 psrld $3,%xmm7 1935 movdqa %xmm5,%xmm2 1936 1937 psrld $7,%xmm1 1938 movdqa 112-128(%rax),%xmm0 1939 pslld $14,%xmm2 1940 pxor %xmm1,%xmm7 1941 psrld $18-7,%xmm1 1942 movdqa %xmm0,%xmm4 1943 pxor %xmm2,%xmm7 1944 pslld $25-14,%xmm2 1945 pxor %xmm1,%xmm7 1946 psrld $10,%xmm0 1947 movdqa %xmm4,%xmm1 1948 1949 psrld $17,%xmm4 1950 pxor %xmm2,%xmm7 1951 pslld $13,%xmm1 1952 paddd %xmm7,%xmm6 1953 pxor %xmm4,%xmm0 1954 psrld $19-17,%xmm4 1955 pxor %xmm1,%xmm0 1956 pslld $15-13,%xmm1 1957 pxor %xmm4,%xmm0 1958 pxor %xmm1,%xmm0 1959 paddd %xmm0,%xmm6 1960 movdqa %xmm11,%xmm7 1961 1962 movdqa %xmm11,%xmm2 1963 1964 psrld $6,%xmm7 1965 movdqa %xmm11,%xmm1 1966 pslld $7,%xmm2 1967 movdqa %xmm6,144-128(%rax) 1968 paddd %xmm14,%xmm6 1969 1970 psrld $11,%xmm1 1971 pxor %xmm2,%xmm7 1972 pslld $21-7,%xmm2 1973 paddd -96(%rbp),%xmm6 1974 pxor %xmm1,%xmm7 1975 1976 psrld $25-11,%xmm1 1977 movdqa %xmm11,%xmm0 1978 1979 pxor %xmm2,%xmm7 1980 movdqa %xmm11,%xmm4 1981 pslld $26-21,%xmm2 1982 pandn %xmm13,%xmm0 1983 pand %xmm12,%xmm4 1984 pxor %xmm1,%xmm7 1985 1986 1987 movdqa %xmm15,%xmm1 1988 pxor %xmm2,%xmm7 1989 movdqa %xmm15,%xmm2 1990 psrld $2,%xmm1 1991 paddd %xmm7,%xmm6 1992 pxor %xmm4,%xmm0 1993 movdqa %xmm8,%xmm4 1994 movdqa %xmm15,%xmm7 1995 pslld $10,%xmm2 1996 pxor %xmm15,%xmm4 1997 1998 1999 psrld $13,%xmm7 2000 pxor %xmm2,%xmm1 2001 paddd %xmm0,%xmm6 2002 pslld $19-10,%xmm2 2003 pand %xmm4,%xmm3 2004 pxor %xmm7,%xmm1 2005 2006 2007 psrld $22-13,%xmm7 2008 pxor %xmm2,%xmm1 2009 movdqa %xmm8,%xmm14 2010 pslld $30-19,%xmm2 2011 pxor %xmm1,%xmm7 2012 pxor %xmm3,%xmm14 2013 paddd %xmm6,%xmm10 2014 pxor %xmm2,%xmm7 2015 2016 paddd %xmm6,%xmm14 2017 paddd %xmm7,%xmm14 2018 movdqa 176-128(%rax),%xmm6 2019 paddd 48-128(%rax),%xmm5 2020 2021 movdqa %xmm6,%xmm7 2022 movdqa %xmm6,%xmm1 2023 psrld $3,%xmm7 2024 movdqa %xmm6,%xmm2 2025 2026 psrld $7,%xmm1 2027 movdqa 128-128(%rax),%xmm0 2028 pslld $14,%xmm2 2029 pxor %xmm1,%xmm7 2030 psrld $18-7,%xmm1 2031 movdqa %xmm0,%xmm3 2032 pxor %xmm2,%xmm7 2033 pslld $25-14,%xmm2 2034 pxor %xmm1,%xmm7 2035 psrld $10,%xmm0 2036 movdqa %xmm3,%xmm1 2037 2038 psrld $17,%xmm3 2039 pxor %xmm2,%xmm7 2040 pslld $13,%xmm1 2041 paddd %xmm7,%xmm5 2042 pxor %xmm3,%xmm0 2043 psrld $19-17,%xmm3 2044 pxor %xmm1,%xmm0 2045 pslld $15-13,%xmm1 2046 pxor %xmm3,%xmm0 2047 pxor %xmm1,%xmm0 2048 paddd %xmm0,%xmm5 2049 movdqa %xmm10,%xmm7 2050 2051 movdqa %xmm10,%xmm2 2052 2053 psrld $6,%xmm7 2054 movdqa %xmm10,%xmm1 2055 pslld $7,%xmm2 2056 movdqa %xmm5,160-128(%rax) 2057 paddd %xmm13,%xmm5 2058 2059 psrld $11,%xmm1 2060 pxor %xmm2,%xmm7 2061 pslld $21-7,%xmm2 2062 paddd -64(%rbp),%xmm5 2063 pxor %xmm1,%xmm7 2064 2065 psrld $25-11,%xmm1 2066 movdqa %xmm10,%xmm0 2067 2068 pxor %xmm2,%xmm7 2069 movdqa %xmm10,%xmm3 2070 pslld $26-21,%xmm2 2071 pandn %xmm12,%xmm0 2072 pand %xmm11,%xmm3 2073 pxor %xmm1,%xmm7 2074 2075 2076 movdqa %xmm14,%xmm1 2077 pxor %xmm2,%xmm7 2078 movdqa %xmm14,%xmm2 2079 psrld $2,%xmm1 2080 paddd %xmm7,%xmm5 2081 pxor %xmm3,%xmm0 2082 movdqa %xmm15,%xmm3 2083 movdqa %xmm14,%xmm7 2084 pslld $10,%xmm2 2085 pxor %xmm14,%xmm3 2086 2087 2088 psrld $13,%xmm7 2089 pxor %xmm2,%xmm1 2090 paddd %xmm0,%xmm5 2091 pslld $19-10,%xmm2 2092 pand %xmm3,%xmm4 2093 pxor %xmm7,%xmm1 2094 2095 2096 psrld $22-13,%xmm7 2097 pxor %xmm2,%xmm1 2098 movdqa %xmm15,%xmm13 2099 pslld $30-19,%xmm2 2100 pxor %xmm1,%xmm7 2101 pxor %xmm4,%xmm13 2102 paddd %xmm5,%xmm9 2103 pxor %xmm2,%xmm7 2104 2105 paddd %xmm5,%xmm13 2106 paddd %xmm7,%xmm13 2107 movdqa 192-128(%rax),%xmm5 2108 paddd 64-128(%rax),%xmm6 2109 2110 movdqa %xmm5,%xmm7 2111 movdqa %xmm5,%xmm1 2112 psrld $3,%xmm7 2113 movdqa %xmm5,%xmm2 2114 2115 psrld $7,%xmm1 2116 movdqa 144-128(%rax),%xmm0 2117 pslld $14,%xmm2 2118 pxor %xmm1,%xmm7 2119 psrld $18-7,%xmm1 2120 movdqa %xmm0,%xmm4 2121 pxor %xmm2,%xmm7 2122 pslld $25-14,%xmm2 2123 pxor %xmm1,%xmm7 2124 psrld $10,%xmm0 2125 movdqa %xmm4,%xmm1 2126 2127 psrld $17,%xmm4 2128 pxor %xmm2,%xmm7 2129 pslld $13,%xmm1 2130 paddd %xmm7,%xmm6 2131 pxor %xmm4,%xmm0 2132 psrld $19-17,%xmm4 2133 pxor %xmm1,%xmm0 2134 pslld $15-13,%xmm1 2135 pxor %xmm4,%xmm0 2136 pxor %xmm1,%xmm0 2137 paddd %xmm0,%xmm6 2138 movdqa %xmm9,%xmm7 2139 2140 movdqa %xmm9,%xmm2 2141 2142 psrld $6,%xmm7 2143 movdqa %xmm9,%xmm1 2144 pslld $7,%xmm2 2145 movdqa %xmm6,176-128(%rax) 2146 paddd %xmm12,%xmm6 2147 2148 psrld $11,%xmm1 2149 pxor %xmm2,%xmm7 2150 pslld $21-7,%xmm2 2151 paddd -32(%rbp),%xmm6 2152 pxor %xmm1,%xmm7 2153 2154 psrld $25-11,%xmm1 2155 movdqa %xmm9,%xmm0 2156 2157 pxor %xmm2,%xmm7 2158 movdqa %xmm9,%xmm4 2159 pslld $26-21,%xmm2 2160 pandn %xmm11,%xmm0 2161 pand %xmm10,%xmm4 2162 pxor %xmm1,%xmm7 2163 2164 2165 movdqa %xmm13,%xmm1 2166 pxor %xmm2,%xmm7 2167 movdqa %xmm13,%xmm2 2168 psrld $2,%xmm1 2169 paddd %xmm7,%xmm6 2170 pxor %xmm4,%xmm0 2171 movdqa %xmm14,%xmm4 2172 movdqa %xmm13,%xmm7 2173 pslld $10,%xmm2 2174 pxor %xmm13,%xmm4 2175 2176 2177 psrld $13,%xmm7 2178 pxor %xmm2,%xmm1 2179 paddd %xmm0,%xmm6 2180 pslld $19-10,%xmm2 2181 pand %xmm4,%xmm3 2182 pxor %xmm7,%xmm1 2183 2184 2185 psrld $22-13,%xmm7 2186 pxor %xmm2,%xmm1 2187 movdqa %xmm14,%xmm12 2188 pslld $30-19,%xmm2 2189 pxor %xmm1,%xmm7 2190 pxor %xmm3,%xmm12 2191 paddd %xmm6,%xmm8 2192 pxor %xmm2,%xmm7 2193 2194 paddd %xmm6,%xmm12 2195 paddd %xmm7,%xmm12 2196 movdqa 208-128(%rax),%xmm6 2197 paddd 80-128(%rax),%xmm5 2198 2199 movdqa %xmm6,%xmm7 2200 movdqa %xmm6,%xmm1 2201 psrld $3,%xmm7 2202 movdqa %xmm6,%xmm2 2203 2204 psrld $7,%xmm1 2205 movdqa 160-128(%rax),%xmm0 2206 pslld $14,%xmm2 2207 pxor %xmm1,%xmm7 2208 psrld $18-7,%xmm1 2209 movdqa %xmm0,%xmm3 2210 pxor %xmm2,%xmm7 2211 pslld $25-14,%xmm2 2212 pxor %xmm1,%xmm7 2213 psrld $10,%xmm0 2214 movdqa %xmm3,%xmm1 2215 2216 psrld $17,%xmm3 2217 pxor %xmm2,%xmm7 2218 pslld $13,%xmm1 2219 paddd %xmm7,%xmm5 2220 pxor %xmm3,%xmm0 2221 psrld $19-17,%xmm3 2222 pxor %xmm1,%xmm0 2223 pslld $15-13,%xmm1 2224 pxor %xmm3,%xmm0 2225 pxor %xmm1,%xmm0 2226 paddd %xmm0,%xmm5 2227 movdqa %xmm8,%xmm7 2228 2229 movdqa %xmm8,%xmm2 2230 2231 psrld $6,%xmm7 2232 movdqa %xmm8,%xmm1 2233 pslld $7,%xmm2 2234 movdqa %xmm5,192-128(%rax) 2235 paddd %xmm11,%xmm5 2236 2237 psrld $11,%xmm1 2238 pxor %xmm2,%xmm7 2239 pslld $21-7,%xmm2 2240 paddd 0(%rbp),%xmm5 2241 pxor %xmm1,%xmm7 2242 2243 psrld $25-11,%xmm1 2244 movdqa %xmm8,%xmm0 2245 2246 pxor %xmm2,%xmm7 2247 movdqa %xmm8,%xmm3 2248 pslld $26-21,%xmm2 2249 pandn %xmm10,%xmm0 2250 pand %xmm9,%xmm3 2251 pxor %xmm1,%xmm7 2252 2253 2254 movdqa %xmm12,%xmm1 2255 pxor %xmm2,%xmm7 2256 movdqa %xmm12,%xmm2 2257 psrld $2,%xmm1 2258 paddd %xmm7,%xmm5 2259 pxor %xmm3,%xmm0 2260 movdqa %xmm13,%xmm3 2261 movdqa %xmm12,%xmm7 2262 pslld $10,%xmm2 2263 pxor %xmm12,%xmm3 2264 2265 2266 psrld $13,%xmm7 2267 pxor %xmm2,%xmm1 2268 paddd %xmm0,%xmm5 2269 pslld $19-10,%xmm2 2270 pand %xmm3,%xmm4 2271 pxor %xmm7,%xmm1 2272 2273 2274 psrld $22-13,%xmm7 2275 pxor %xmm2,%xmm1 2276 movdqa %xmm13,%xmm11 2277 pslld $30-19,%xmm2 2278 pxor %xmm1,%xmm7 2279 pxor %xmm4,%xmm11 2280 paddd %xmm5,%xmm15 2281 pxor %xmm2,%xmm7 2282 2283 paddd %xmm5,%xmm11 2284 paddd %xmm7,%xmm11 2285 movdqa 224-128(%rax),%xmm5 2286 paddd 96-128(%rax),%xmm6 2287 2288 movdqa %xmm5,%xmm7 2289 movdqa %xmm5,%xmm1 2290 psrld $3,%xmm7 2291 movdqa %xmm5,%xmm2 2292 2293 psrld $7,%xmm1 2294 movdqa 176-128(%rax),%xmm0 2295 pslld $14,%xmm2 2296 pxor %xmm1,%xmm7 2297 psrld $18-7,%xmm1 2298 movdqa %xmm0,%xmm4 2299 pxor %xmm2,%xmm7 2300 pslld $25-14,%xmm2 2301 pxor %xmm1,%xmm7 2302 psrld $10,%xmm0 2303 movdqa %xmm4,%xmm1 2304 2305 psrld $17,%xmm4 2306 pxor %xmm2,%xmm7 2307 pslld $13,%xmm1 2308 paddd %xmm7,%xmm6 2309 pxor %xmm4,%xmm0 2310 psrld $19-17,%xmm4 2311 pxor %xmm1,%xmm0 2312 pslld $15-13,%xmm1 2313 pxor %xmm4,%xmm0 2314 pxor %xmm1,%xmm0 2315 paddd %xmm0,%xmm6 2316 movdqa %xmm15,%xmm7 2317 2318 movdqa %xmm15,%xmm2 2319 2320 psrld $6,%xmm7 2321 movdqa %xmm15,%xmm1 2322 pslld $7,%xmm2 2323 movdqa %xmm6,208-128(%rax) 2324 paddd %xmm10,%xmm6 2325 2326 psrld $11,%xmm1 2327 pxor %xmm2,%xmm7 2328 pslld $21-7,%xmm2 2329 paddd 32(%rbp),%xmm6 2330 pxor %xmm1,%xmm7 2331 2332 psrld $25-11,%xmm1 2333 movdqa %xmm15,%xmm0 2334 2335 pxor %xmm2,%xmm7 2336 movdqa %xmm15,%xmm4 2337 pslld $26-21,%xmm2 2338 pandn %xmm9,%xmm0 2339 pand %xmm8,%xmm4 2340 pxor %xmm1,%xmm7 2341 2342 2343 movdqa %xmm11,%xmm1 2344 pxor %xmm2,%xmm7 2345 movdqa %xmm11,%xmm2 2346 psrld $2,%xmm1 2347 paddd %xmm7,%xmm6 2348 pxor %xmm4,%xmm0 2349 movdqa %xmm12,%xmm4 2350 movdqa %xmm11,%xmm7 2351 pslld $10,%xmm2 2352 pxor %xmm11,%xmm4 2353 2354 2355 psrld $13,%xmm7 2356 pxor %xmm2,%xmm1 2357 paddd %xmm0,%xmm6 2358 pslld $19-10,%xmm2 2359 pand %xmm4,%xmm3 2360 pxor %xmm7,%xmm1 2361 2362 2363 psrld $22-13,%xmm7 2364 pxor %xmm2,%xmm1 2365 movdqa %xmm12,%xmm10 2366 pslld $30-19,%xmm2 2367 pxor %xmm1,%xmm7 2368 pxor %xmm3,%xmm10 2369 paddd %xmm6,%xmm14 2370 pxor %xmm2,%xmm7 2371 2372 paddd %xmm6,%xmm10 2373 paddd %xmm7,%xmm10 2374 movdqa 240-128(%rax),%xmm6 2375 paddd 112-128(%rax),%xmm5 2376 2377 movdqa %xmm6,%xmm7 2378 movdqa %xmm6,%xmm1 2379 psrld $3,%xmm7 2380 movdqa %xmm6,%xmm2 2381 2382 psrld $7,%xmm1 2383 movdqa 192-128(%rax),%xmm0 2384 pslld $14,%xmm2 2385 pxor %xmm1,%xmm7 2386 psrld $18-7,%xmm1 2387 movdqa %xmm0,%xmm3 2388 pxor %xmm2,%xmm7 2389 pslld $25-14,%xmm2 2390 pxor %xmm1,%xmm7 2391 psrld $10,%xmm0 2392 movdqa %xmm3,%xmm1 2393 2394 psrld $17,%xmm3 2395 pxor %xmm2,%xmm7 2396 pslld $13,%xmm1 2397 paddd %xmm7,%xmm5 2398 pxor %xmm3,%xmm0 2399 psrld $19-17,%xmm3 2400 pxor %xmm1,%xmm0 2401 pslld $15-13,%xmm1 2402 pxor %xmm3,%xmm0 2403 pxor %xmm1,%xmm0 2404 paddd %xmm0,%xmm5 2405 movdqa %xmm14,%xmm7 2406 2407 movdqa %xmm14,%xmm2 2408 2409 psrld $6,%xmm7 2410 movdqa %xmm14,%xmm1 2411 pslld $7,%xmm2 2412 movdqa %xmm5,224-128(%rax) 2413 paddd %xmm9,%xmm5 2414 2415 psrld $11,%xmm1 2416 pxor %xmm2,%xmm7 2417 pslld $21-7,%xmm2 2418 paddd 64(%rbp),%xmm5 2419 pxor %xmm1,%xmm7 2420 2421 psrld $25-11,%xmm1 2422 movdqa %xmm14,%xmm0 2423 2424 pxor %xmm2,%xmm7 2425 movdqa %xmm14,%xmm3 2426 pslld $26-21,%xmm2 2427 pandn %xmm8,%xmm0 2428 pand %xmm15,%xmm3 2429 pxor %xmm1,%xmm7 2430 2431 2432 movdqa %xmm10,%xmm1 2433 pxor %xmm2,%xmm7 2434 movdqa %xmm10,%xmm2 2435 psrld $2,%xmm1 2436 paddd %xmm7,%xmm5 2437 pxor %xmm3,%xmm0 2438 movdqa %xmm11,%xmm3 2439 movdqa %xmm10,%xmm7 2440 pslld $10,%xmm2 2441 pxor %xmm10,%xmm3 2442 2443 2444 psrld $13,%xmm7 2445 pxor %xmm2,%xmm1 2446 paddd %xmm0,%xmm5 2447 pslld $19-10,%xmm2 2448 pand %xmm3,%xmm4 2449 pxor %xmm7,%xmm1 2450 2451 2452 psrld $22-13,%xmm7 2453 pxor %xmm2,%xmm1 2454 movdqa %xmm11,%xmm9 2455 pslld $30-19,%xmm2 2456 pxor %xmm1,%xmm7 2457 pxor %xmm4,%xmm9 2458 paddd %xmm5,%xmm13 2459 pxor %xmm2,%xmm7 2460 2461 paddd %xmm5,%xmm9 2462 paddd %xmm7,%xmm9 2463 movdqa 0-128(%rax),%xmm5 2464 paddd 128-128(%rax),%xmm6 2465 2466 movdqa %xmm5,%xmm7 2467 movdqa %xmm5,%xmm1 2468 psrld $3,%xmm7 2469 movdqa %xmm5,%xmm2 2470 2471 psrld $7,%xmm1 2472 movdqa 208-128(%rax),%xmm0 2473 pslld $14,%xmm2 2474 pxor %xmm1,%xmm7 2475 psrld $18-7,%xmm1 2476 movdqa %xmm0,%xmm4 2477 pxor %xmm2,%xmm7 2478 pslld $25-14,%xmm2 2479 pxor %xmm1,%xmm7 2480 psrld $10,%xmm0 2481 movdqa %xmm4,%xmm1 2482 2483 psrld $17,%xmm4 2484 pxor %xmm2,%xmm7 2485 pslld $13,%xmm1 2486 paddd %xmm7,%xmm6 2487 pxor %xmm4,%xmm0 2488 psrld $19-17,%xmm4 2489 pxor %xmm1,%xmm0 2490 pslld $15-13,%xmm1 2491 pxor %xmm4,%xmm0 2492 pxor %xmm1,%xmm0 2493 paddd %xmm0,%xmm6 2494 movdqa %xmm13,%xmm7 2495 2496 movdqa %xmm13,%xmm2 2497 2498 psrld $6,%xmm7 2499 movdqa %xmm13,%xmm1 2500 pslld $7,%xmm2 2501 movdqa %xmm6,240-128(%rax) 2502 paddd %xmm8,%xmm6 2503 2504 psrld $11,%xmm1 2505 pxor %xmm2,%xmm7 2506 pslld $21-7,%xmm2 2507 paddd 96(%rbp),%xmm6 2508 pxor %xmm1,%xmm7 2509 2510 psrld $25-11,%xmm1 2511 movdqa %xmm13,%xmm0 2512 2513 pxor %xmm2,%xmm7 2514 movdqa %xmm13,%xmm4 2515 pslld $26-21,%xmm2 2516 pandn %xmm15,%xmm0 2517 pand %xmm14,%xmm4 2518 pxor %xmm1,%xmm7 2519 2520 2521 movdqa %xmm9,%xmm1 2522 pxor %xmm2,%xmm7 2523 movdqa %xmm9,%xmm2 2524 psrld $2,%xmm1 2525 paddd %xmm7,%xmm6 2526 pxor %xmm4,%xmm0 2527 movdqa %xmm10,%xmm4 2528 movdqa %xmm9,%xmm7 2529 pslld $10,%xmm2 2530 pxor %xmm9,%xmm4 2531 2532 2533 psrld $13,%xmm7 2534 pxor %xmm2,%xmm1 2535 paddd %xmm0,%xmm6 2536 pslld $19-10,%xmm2 2537 pand %xmm4,%xmm3 2538 pxor %xmm7,%xmm1 2539 2540 2541 psrld $22-13,%xmm7 2542 pxor %xmm2,%xmm1 2543 movdqa %xmm10,%xmm8 2544 pslld $30-19,%xmm2 2545 pxor %xmm1,%xmm7 2546 pxor %xmm3,%xmm8 2547 paddd %xmm6,%xmm12 2548 pxor %xmm2,%xmm7 2549 2550 paddd %xmm6,%xmm8 2551 paddd %xmm7,%xmm8 2552 leaq 256(%rbp),%rbp 2553 decl %ecx 2554 jnz .Loop_16_xx 2555 2556 movl $1,%ecx 2557 leaq K256+128(%rip),%rbp 2558 2559 movdqa (%rbx),%xmm7 2560 cmpl 0(%rbx),%ecx 2561 pxor %xmm0,%xmm0 2562 cmovgeq %rbp,%r8 2563 cmpl 4(%rbx),%ecx 2564 movdqa %xmm7,%xmm6 2565 cmovgeq %rbp,%r9 2566 cmpl 8(%rbx),%ecx 2567 pcmpgtd %xmm0,%xmm6 2568 cmovgeq %rbp,%r10 2569 cmpl 12(%rbx),%ecx 2570 paddd %xmm6,%xmm7 2571 cmovgeq %rbp,%r11 2572 2573 movdqu 0-128(%rdi),%xmm0 2574 pand %xmm6,%xmm8 2575 movdqu 32-128(%rdi),%xmm1 2576 pand %xmm6,%xmm9 2577 movdqu 64-128(%rdi),%xmm2 2578 pand %xmm6,%xmm10 2579 movdqu 96-128(%rdi),%xmm5 2580 pand %xmm6,%xmm11 2581 paddd %xmm0,%xmm8 2582 movdqu 128-128(%rdi),%xmm0 2583 pand %xmm6,%xmm12 2584 paddd %xmm1,%xmm9 2585 movdqu 160-128(%rdi),%xmm1 2586 pand %xmm6,%xmm13 2587 paddd %xmm2,%xmm10 2588 movdqu 192-128(%rdi),%xmm2 2589 pand %xmm6,%xmm14 2590 paddd %xmm5,%xmm11 2591 movdqu 224-128(%rdi),%xmm5 2592 pand %xmm6,%xmm15 2593 paddd %xmm0,%xmm12 2594 paddd %xmm1,%xmm13 2595 movdqu %xmm8,0-128(%rdi) 2596 paddd %xmm2,%xmm14 2597 movdqu %xmm9,32-128(%rdi) 2598 paddd %xmm5,%xmm15 2599 movdqu %xmm10,64-128(%rdi) 2600 movdqu %xmm11,96-128(%rdi) 2601 movdqu %xmm12,128-128(%rdi) 2602 movdqu %xmm13,160-128(%rdi) 2603 movdqu %xmm14,192-128(%rdi) 2604 movdqu %xmm15,224-128(%rdi) 2605 2606 movdqa %xmm7,(%rbx) 2607 movdqa .Lpbswap(%rip),%xmm6 2608 decl %edx 2609 jnz .Loop 2610 2611 movl 280(%rsp),%edx 2612 leaq 16(%rdi),%rdi 2613 leaq 64(%rsi),%rsi 2614 decl %edx 2615 jnz .Loop_grande 2616 2617.Ldone: 2618 movq 272(%rsp),%rax 2619 movq -16(%rax),%rbp 2620 movq -8(%rax),%rbx 2621 leaq (%rax),%rsp 2622.Lepilogue: 2623 .byte 0xf3,0xc3 2624.size sha256_multi_block,.-sha256_multi_block 2625.type sha256_multi_block_shaext,@function 2626.align 32 2627sha256_multi_block_shaext: 2628_shaext_shortcut: 2629 movq %rsp,%rax 2630 pushq %rbx 2631 pushq %rbp 2632 subq $288,%rsp 2633 shll $1,%edx 2634 andq $-256,%rsp 2635 leaq 128(%rdi),%rdi 2636 movq %rax,272(%rsp) 2637.Lbody_shaext: 2638 leaq 256(%rsp),%rbx 2639 leaq K256_shaext+128(%rip),%rbp 2640 2641.Loop_grande_shaext: 2642 movl %edx,280(%rsp) 2643 xorl %edx,%edx 2644 movq 0(%rsi),%r8 2645 movl 8(%rsi),%ecx 2646 cmpl %edx,%ecx 2647 cmovgl %ecx,%edx 2648 testl %ecx,%ecx 2649 movl %ecx,0(%rbx) 2650 cmovleq %rsp,%r8 2651 movq 16(%rsi),%r9 2652 movl 24(%rsi),%ecx 2653 cmpl %edx,%ecx 2654 cmovgl %ecx,%edx 2655 testl %ecx,%ecx 2656 movl %ecx,4(%rbx) 2657 cmovleq %rsp,%r9 2658 testl %edx,%edx 2659 jz .Ldone_shaext 2660 2661 movq 0-128(%rdi),%xmm12 2662 movq 32-128(%rdi),%xmm4 2663 movq 64-128(%rdi),%xmm13 2664 movq 96-128(%rdi),%xmm5 2665 movq 128-128(%rdi),%xmm8 2666 movq 160-128(%rdi),%xmm9 2667 movq 192-128(%rdi),%xmm10 2668 movq 224-128(%rdi),%xmm11 2669 2670 punpckldq %xmm4,%xmm12 2671 punpckldq %xmm5,%xmm13 2672 punpckldq %xmm9,%xmm8 2673 punpckldq %xmm11,%xmm10 2674 movdqa K256_shaext-16(%rip),%xmm3 2675 2676 movdqa %xmm12,%xmm14 2677 movdqa %xmm13,%xmm15 2678 punpcklqdq %xmm8,%xmm12 2679 punpcklqdq %xmm10,%xmm13 2680 punpckhqdq %xmm8,%xmm14 2681 punpckhqdq %xmm10,%xmm15 2682 2683 pshufd $27,%xmm12,%xmm12 2684 pshufd $27,%xmm13,%xmm13 2685 pshufd $27,%xmm14,%xmm14 2686 pshufd $27,%xmm15,%xmm15 2687 jmp .Loop_shaext 2688 2689.align 32 2690.Loop_shaext: 2691 movdqu 0(%r8),%xmm4 2692 movdqu 0(%r9),%xmm8 2693 movdqu 16(%r8),%xmm5 2694 movdqu 16(%r9),%xmm9 2695 movdqu 32(%r8),%xmm6 2696.byte 102,15,56,0,227 2697 movdqu 32(%r9),%xmm10 2698.byte 102,68,15,56,0,195 2699 movdqu 48(%r8),%xmm7 2700 leaq 64(%r8),%r8 2701 movdqu 48(%r9),%xmm11 2702 leaq 64(%r9),%r9 2703 2704 movdqa 0-128(%rbp),%xmm0 2705.byte 102,15,56,0,235 2706 paddd %xmm4,%xmm0 2707 pxor %xmm12,%xmm4 2708 movdqa %xmm0,%xmm1 2709 movdqa 0-128(%rbp),%xmm2 2710.byte 102,68,15,56,0,203 2711 paddd %xmm8,%xmm2 2712 movdqa %xmm13,80(%rsp) 2713.byte 69,15,56,203,236 2714 pxor %xmm14,%xmm8 2715 movdqa %xmm2,%xmm0 2716 movdqa %xmm15,112(%rsp) 2717.byte 69,15,56,203,254 2718 pshufd $0x0e,%xmm1,%xmm0 2719 pxor %xmm12,%xmm4 2720 movdqa %xmm12,64(%rsp) 2721.byte 69,15,56,203,229 2722 pshufd $0x0e,%xmm2,%xmm0 2723 pxor %xmm14,%xmm8 2724 movdqa %xmm14,96(%rsp) 2725 movdqa 16-128(%rbp),%xmm1 2726 paddd %xmm5,%xmm1 2727.byte 102,15,56,0,243 2728.byte 69,15,56,203,247 2729 2730 movdqa %xmm1,%xmm0 2731 movdqa 16-128(%rbp),%xmm2 2732 paddd %xmm9,%xmm2 2733.byte 69,15,56,203,236 2734 movdqa %xmm2,%xmm0 2735 prefetcht0 127(%r8) 2736.byte 102,15,56,0,251 2737.byte 102,68,15,56,0,211 2738 prefetcht0 127(%r9) 2739.byte 69,15,56,203,254 2740 pshufd $0x0e,%xmm1,%xmm0 2741.byte 102,68,15,56,0,219 2742.byte 15,56,204,229 2743.byte 69,15,56,203,229 2744 pshufd $0x0e,%xmm2,%xmm0 2745 movdqa 32-128(%rbp),%xmm1 2746 paddd %xmm6,%xmm1 2747.byte 69,15,56,203,247 2748 2749 movdqa %xmm1,%xmm0 2750 movdqa 32-128(%rbp),%xmm2 2751 paddd %xmm10,%xmm2 2752.byte 69,15,56,203,236 2753.byte 69,15,56,204,193 2754 movdqa %xmm2,%xmm0 2755 movdqa %xmm7,%xmm3 2756.byte 69,15,56,203,254 2757 pshufd $0x0e,%xmm1,%xmm0 2758.byte 102,15,58,15,222,4 2759 paddd %xmm3,%xmm4 2760 movdqa %xmm11,%xmm3 2761.byte 102,65,15,58,15,218,4 2762.byte 15,56,204,238 2763.byte 69,15,56,203,229 2764 pshufd $0x0e,%xmm2,%xmm0 2765 movdqa 48-128(%rbp),%xmm1 2766 paddd %xmm7,%xmm1 2767.byte 69,15,56,203,247 2768.byte 69,15,56,204,202 2769 2770 movdqa %xmm1,%xmm0 2771 movdqa 48-128(%rbp),%xmm2 2772 paddd %xmm3,%xmm8 2773 paddd %xmm11,%xmm2 2774.byte 15,56,205,231 2775.byte 69,15,56,203,236 2776 movdqa %xmm2,%xmm0 2777 movdqa %xmm4,%xmm3 2778.byte 102,15,58,15,223,4 2779.byte 69,15,56,203,254 2780.byte 69,15,56,205,195 2781 pshufd $0x0e,%xmm1,%xmm0 2782 paddd %xmm3,%xmm5 2783 movdqa %xmm8,%xmm3 2784.byte 102,65,15,58,15,219,4 2785.byte 15,56,204,247 2786.byte 69,15,56,203,229 2787 pshufd $0x0e,%xmm2,%xmm0 2788 movdqa 64-128(%rbp),%xmm1 2789 paddd %xmm4,%xmm1 2790.byte 69,15,56,203,247 2791.byte 69,15,56,204,211 2792 movdqa %xmm1,%xmm0 2793 movdqa 64-128(%rbp),%xmm2 2794 paddd %xmm3,%xmm9 2795 paddd %xmm8,%xmm2 2796.byte 15,56,205,236 2797.byte 69,15,56,203,236 2798 movdqa %xmm2,%xmm0 2799 movdqa %xmm5,%xmm3 2800.byte 102,15,58,15,220,4 2801.byte 69,15,56,203,254 2802.byte 69,15,56,205,200 2803 pshufd $0x0e,%xmm1,%xmm0 2804 paddd %xmm3,%xmm6 2805 movdqa %xmm9,%xmm3 2806.byte 102,65,15,58,15,216,4 2807.byte 15,56,204,252 2808.byte 69,15,56,203,229 2809 pshufd $0x0e,%xmm2,%xmm0 2810 movdqa 80-128(%rbp),%xmm1 2811 paddd %xmm5,%xmm1 2812.byte 69,15,56,203,247 2813.byte 69,15,56,204,216 2814 movdqa %xmm1,%xmm0 2815 movdqa 80-128(%rbp),%xmm2 2816 paddd %xmm3,%xmm10 2817 paddd %xmm9,%xmm2 2818.byte 15,56,205,245 2819.byte 69,15,56,203,236 2820 movdqa %xmm2,%xmm0 2821 movdqa %xmm6,%xmm3 2822.byte 102,15,58,15,221,4 2823.byte 69,15,56,203,254 2824.byte 69,15,56,205,209 2825 pshufd $0x0e,%xmm1,%xmm0 2826 paddd %xmm3,%xmm7 2827 movdqa %xmm10,%xmm3 2828.byte 102,65,15,58,15,217,4 2829.byte 15,56,204,229 2830.byte 69,15,56,203,229 2831 pshufd $0x0e,%xmm2,%xmm0 2832 movdqa 96-128(%rbp),%xmm1 2833 paddd %xmm6,%xmm1 2834.byte 69,15,56,203,247 2835.byte 69,15,56,204,193 2836 movdqa %xmm1,%xmm0 2837 movdqa 96-128(%rbp),%xmm2 2838 paddd %xmm3,%xmm11 2839 paddd %xmm10,%xmm2 2840.byte 15,56,205,254 2841.byte 69,15,56,203,236 2842 movdqa %xmm2,%xmm0 2843 movdqa %xmm7,%xmm3 2844.byte 102,15,58,15,222,4 2845.byte 69,15,56,203,254 2846.byte 69,15,56,205,218 2847 pshufd $0x0e,%xmm1,%xmm0 2848 paddd %xmm3,%xmm4 2849 movdqa %xmm11,%xmm3 2850.byte 102,65,15,58,15,218,4 2851.byte 15,56,204,238 2852.byte 69,15,56,203,229 2853 pshufd $0x0e,%xmm2,%xmm0 2854 movdqa 112-128(%rbp),%xmm1 2855 paddd %xmm7,%xmm1 2856.byte 69,15,56,203,247 2857.byte 69,15,56,204,202 2858 movdqa %xmm1,%xmm0 2859 movdqa 112-128(%rbp),%xmm2 2860 paddd %xmm3,%xmm8 2861 paddd %xmm11,%xmm2 2862.byte 15,56,205,231 2863.byte 69,15,56,203,236 2864 movdqa %xmm2,%xmm0 2865 movdqa %xmm4,%xmm3 2866.byte 102,15,58,15,223,4 2867.byte 69,15,56,203,254 2868.byte 69,15,56,205,195 2869 pshufd $0x0e,%xmm1,%xmm0 2870 paddd %xmm3,%xmm5 2871 movdqa %xmm8,%xmm3 2872.byte 102,65,15,58,15,219,4 2873.byte 15,56,204,247 2874.byte 69,15,56,203,229 2875 pshufd $0x0e,%xmm2,%xmm0 2876 movdqa 128-128(%rbp),%xmm1 2877 paddd %xmm4,%xmm1 2878.byte 69,15,56,203,247 2879.byte 69,15,56,204,211 2880 movdqa %xmm1,%xmm0 2881 movdqa 128-128(%rbp),%xmm2 2882 paddd %xmm3,%xmm9 2883 paddd %xmm8,%xmm2 2884.byte 15,56,205,236 2885.byte 69,15,56,203,236 2886 movdqa %xmm2,%xmm0 2887 movdqa %xmm5,%xmm3 2888.byte 102,15,58,15,220,4 2889.byte 69,15,56,203,254 2890.byte 69,15,56,205,200 2891 pshufd $0x0e,%xmm1,%xmm0 2892 paddd %xmm3,%xmm6 2893 movdqa %xmm9,%xmm3 2894.byte 102,65,15,58,15,216,4 2895.byte 15,56,204,252 2896.byte 69,15,56,203,229 2897 pshufd $0x0e,%xmm2,%xmm0 2898 movdqa 144-128(%rbp),%xmm1 2899 paddd %xmm5,%xmm1 2900.byte 69,15,56,203,247 2901.byte 69,15,56,204,216 2902 movdqa %xmm1,%xmm0 2903 movdqa 144-128(%rbp),%xmm2 2904 paddd %xmm3,%xmm10 2905 paddd %xmm9,%xmm2 2906.byte 15,56,205,245 2907.byte 69,15,56,203,236 2908 movdqa %xmm2,%xmm0 2909 movdqa %xmm6,%xmm3 2910.byte 102,15,58,15,221,4 2911.byte 69,15,56,203,254 2912.byte 69,15,56,205,209 2913 pshufd $0x0e,%xmm1,%xmm0 2914 paddd %xmm3,%xmm7 2915 movdqa %xmm10,%xmm3 2916.byte 102,65,15,58,15,217,4 2917.byte 15,56,204,229 2918.byte 69,15,56,203,229 2919 pshufd $0x0e,%xmm2,%xmm0 2920 movdqa 160-128(%rbp),%xmm1 2921 paddd %xmm6,%xmm1 2922.byte 69,15,56,203,247 2923.byte 69,15,56,204,193 2924 movdqa %xmm1,%xmm0 2925 movdqa 160-128(%rbp),%xmm2 2926 paddd %xmm3,%xmm11 2927 paddd %xmm10,%xmm2 2928.byte 15,56,205,254 2929.byte 69,15,56,203,236 2930 movdqa %xmm2,%xmm0 2931 movdqa %xmm7,%xmm3 2932.byte 102,15,58,15,222,4 2933.byte 69,15,56,203,254 2934.byte 69,15,56,205,218 2935 pshufd $0x0e,%xmm1,%xmm0 2936 paddd %xmm3,%xmm4 2937 movdqa %xmm11,%xmm3 2938.byte 102,65,15,58,15,218,4 2939.byte 15,56,204,238 2940.byte 69,15,56,203,229 2941 pshufd $0x0e,%xmm2,%xmm0 2942 movdqa 176-128(%rbp),%xmm1 2943 paddd %xmm7,%xmm1 2944.byte 69,15,56,203,247 2945.byte 69,15,56,204,202 2946 movdqa %xmm1,%xmm0 2947 movdqa 176-128(%rbp),%xmm2 2948 paddd %xmm3,%xmm8 2949 paddd %xmm11,%xmm2 2950.byte 15,56,205,231 2951.byte 69,15,56,203,236 2952 movdqa %xmm2,%xmm0 2953 movdqa %xmm4,%xmm3 2954.byte 102,15,58,15,223,4 2955.byte 69,15,56,203,254 2956.byte 69,15,56,205,195 2957 pshufd $0x0e,%xmm1,%xmm0 2958 paddd %xmm3,%xmm5 2959 movdqa %xmm8,%xmm3 2960.byte 102,65,15,58,15,219,4 2961.byte 15,56,204,247 2962.byte 69,15,56,203,229 2963 pshufd $0x0e,%xmm2,%xmm0 2964 movdqa 192-128(%rbp),%xmm1 2965 paddd %xmm4,%xmm1 2966.byte 69,15,56,203,247 2967.byte 69,15,56,204,211 2968 movdqa %xmm1,%xmm0 2969 movdqa 192-128(%rbp),%xmm2 2970 paddd %xmm3,%xmm9 2971 paddd %xmm8,%xmm2 2972.byte 15,56,205,236 2973.byte 69,15,56,203,236 2974 movdqa %xmm2,%xmm0 2975 movdqa %xmm5,%xmm3 2976.byte 102,15,58,15,220,4 2977.byte 69,15,56,203,254 2978.byte 69,15,56,205,200 2979 pshufd $0x0e,%xmm1,%xmm0 2980 paddd %xmm3,%xmm6 2981 movdqa %xmm9,%xmm3 2982.byte 102,65,15,58,15,216,4 2983.byte 15,56,204,252 2984.byte 69,15,56,203,229 2985 pshufd $0x0e,%xmm2,%xmm0 2986 movdqa 208-128(%rbp),%xmm1 2987 paddd %xmm5,%xmm1 2988.byte 69,15,56,203,247 2989.byte 69,15,56,204,216 2990 movdqa %xmm1,%xmm0 2991 movdqa 208-128(%rbp),%xmm2 2992 paddd %xmm3,%xmm10 2993 paddd %xmm9,%xmm2 2994.byte 15,56,205,245 2995.byte 69,15,56,203,236 2996 movdqa %xmm2,%xmm0 2997 movdqa %xmm6,%xmm3 2998.byte 102,15,58,15,221,4 2999.byte 69,15,56,203,254 3000.byte 69,15,56,205,209 3001 pshufd $0x0e,%xmm1,%xmm0 3002 paddd %xmm3,%xmm7 3003 movdqa %xmm10,%xmm3 3004.byte 102,65,15,58,15,217,4 3005 nop 3006.byte 69,15,56,203,229 3007 pshufd $0x0e,%xmm2,%xmm0 3008 movdqa 224-128(%rbp),%xmm1 3009 paddd %xmm6,%xmm1 3010.byte 69,15,56,203,247 3011 3012 movdqa %xmm1,%xmm0 3013 movdqa 224-128(%rbp),%xmm2 3014 paddd %xmm3,%xmm11 3015 paddd %xmm10,%xmm2 3016.byte 15,56,205,254 3017 nop 3018.byte 69,15,56,203,236 3019 movdqa %xmm2,%xmm0 3020 movl $1,%ecx 3021 pxor %xmm6,%xmm6 3022.byte 69,15,56,203,254 3023.byte 69,15,56,205,218 3024 pshufd $0x0e,%xmm1,%xmm0 3025 movdqa 240-128(%rbp),%xmm1 3026 paddd %xmm7,%xmm1 3027 movq (%rbx),%xmm7 3028 nop 3029.byte 69,15,56,203,229 3030 pshufd $0x0e,%xmm2,%xmm0 3031 movdqa 240-128(%rbp),%xmm2 3032 paddd %xmm11,%xmm2 3033.byte 69,15,56,203,247 3034 3035 movdqa %xmm1,%xmm0 3036 cmpl 0(%rbx),%ecx 3037 cmovgeq %rsp,%r8 3038 cmpl 4(%rbx),%ecx 3039 cmovgeq %rsp,%r9 3040 pshufd $0x00,%xmm7,%xmm9 3041.byte 69,15,56,203,236 3042 movdqa %xmm2,%xmm0 3043 pshufd $0x55,%xmm7,%xmm10 3044 movdqa %xmm7,%xmm11 3045.byte 69,15,56,203,254 3046 pshufd $0x0e,%xmm1,%xmm0 3047 pcmpgtd %xmm6,%xmm9 3048 pcmpgtd %xmm6,%xmm10 3049.byte 69,15,56,203,229 3050 pshufd $0x0e,%xmm2,%xmm0 3051 pcmpgtd %xmm6,%xmm11 3052 movdqa K256_shaext-16(%rip),%xmm3 3053.byte 69,15,56,203,247 3054 3055 pand %xmm9,%xmm13 3056 pand %xmm10,%xmm15 3057 pand %xmm9,%xmm12 3058 pand %xmm10,%xmm14 3059 paddd %xmm7,%xmm11 3060 3061 paddd 80(%rsp),%xmm13 3062 paddd 112(%rsp),%xmm15 3063 paddd 64(%rsp),%xmm12 3064 paddd 96(%rsp),%xmm14 3065 3066 movq %xmm11,(%rbx) 3067 decl %edx 3068 jnz .Loop_shaext 3069 3070 movl 280(%rsp),%edx 3071 3072 pshufd $27,%xmm12,%xmm12 3073 pshufd $27,%xmm13,%xmm13 3074 pshufd $27,%xmm14,%xmm14 3075 pshufd $27,%xmm15,%xmm15 3076 3077 movdqa %xmm12,%xmm5 3078 movdqa %xmm13,%xmm6 3079 punpckldq %xmm14,%xmm12 3080 punpckhdq %xmm14,%xmm5 3081 punpckldq %xmm15,%xmm13 3082 punpckhdq %xmm15,%xmm6 3083 3084 movq %xmm12,0-128(%rdi) 3085 psrldq $8,%xmm12 3086 movq %xmm5,128-128(%rdi) 3087 psrldq $8,%xmm5 3088 movq %xmm12,32-128(%rdi) 3089 movq %xmm5,160-128(%rdi) 3090 3091 movq %xmm13,64-128(%rdi) 3092 psrldq $8,%xmm13 3093 movq %xmm6,192-128(%rdi) 3094 psrldq $8,%xmm6 3095 movq %xmm13,96-128(%rdi) 3096 movq %xmm6,224-128(%rdi) 3097 3098 leaq 8(%rdi),%rdi 3099 leaq 32(%rsi),%rsi 3100 decl %edx 3101 jnz .Loop_grande_shaext 3102 3103.Ldone_shaext: 3104 3105 movq -16(%rax),%rbp 3106 movq -8(%rax),%rbx 3107 leaq (%rax),%rsp 3108.Lepilogue_shaext: 3109 .byte 0xf3,0xc3 3110.size sha256_multi_block_shaext,.-sha256_multi_block_shaext 3111.type sha256_multi_block_avx,@function 3112.align 32 3113sha256_multi_block_avx: 3114_avx_shortcut: 3115 shrq $32,%rcx 3116 cmpl $2,%edx 3117 jb .Lavx 3118 testl $32,%ecx 3119 jnz _avx2_shortcut 3120 jmp .Lavx 3121.align 32 3122.Lavx: 3123 movq %rsp,%rax 3124 pushq %rbx 3125 pushq %rbp 3126 subq $288,%rsp 3127 andq $-256,%rsp 3128 movq %rax,272(%rsp) 3129.Lbody_avx: 3130 leaq K256+128(%rip),%rbp 3131 leaq 256(%rsp),%rbx 3132 leaq 128(%rdi),%rdi 3133 3134.Loop_grande_avx: 3135 movl %edx,280(%rsp) 3136 xorl %edx,%edx 3137 movq 0(%rsi),%r8 3138 movl 8(%rsi),%ecx 3139 cmpl %edx,%ecx 3140 cmovgl %ecx,%edx 3141 testl %ecx,%ecx 3142 movl %ecx,0(%rbx) 3143 cmovleq %rbp,%r8 3144 movq 16(%rsi),%r9 3145 movl 24(%rsi),%ecx 3146 cmpl %edx,%ecx 3147 cmovgl %ecx,%edx 3148 testl %ecx,%ecx 3149 movl %ecx,4(%rbx) 3150 cmovleq %rbp,%r9 3151 movq 32(%rsi),%r10 3152 movl 40(%rsi),%ecx 3153 cmpl %edx,%ecx 3154 cmovgl %ecx,%edx 3155 testl %ecx,%ecx 3156 movl %ecx,8(%rbx) 3157 cmovleq %rbp,%r10 3158 movq 48(%rsi),%r11 3159 movl 56(%rsi),%ecx 3160 cmpl %edx,%ecx 3161 cmovgl %ecx,%edx 3162 testl %ecx,%ecx 3163 movl %ecx,12(%rbx) 3164 cmovleq %rbp,%r11 3165 testl %edx,%edx 3166 jz .Ldone_avx 3167 3168 vmovdqu 0-128(%rdi),%xmm8 3169 leaq 128(%rsp),%rax 3170 vmovdqu 32-128(%rdi),%xmm9 3171 vmovdqu 64-128(%rdi),%xmm10 3172 vmovdqu 96-128(%rdi),%xmm11 3173 vmovdqu 128-128(%rdi),%xmm12 3174 vmovdqu 160-128(%rdi),%xmm13 3175 vmovdqu 192-128(%rdi),%xmm14 3176 vmovdqu 224-128(%rdi),%xmm15 3177 vmovdqu .Lpbswap(%rip),%xmm6 3178 jmp .Loop_avx 3179 3180.align 32 3181.Loop_avx: 3182 vpxor %xmm9,%xmm10,%xmm4 3183 vmovd 0(%r8),%xmm5 3184 vmovd 0(%r9),%xmm0 3185 vpinsrd $1,0(%r10),%xmm5,%xmm5 3186 vpinsrd $1,0(%r11),%xmm0,%xmm0 3187 vpunpckldq %xmm0,%xmm5,%xmm5 3188 vpshufb %xmm6,%xmm5,%xmm5 3189 vpsrld $6,%xmm12,%xmm7 3190 vpslld $26,%xmm12,%xmm2 3191 vmovdqu %xmm5,0-128(%rax) 3192 vpaddd %xmm15,%xmm5,%xmm5 3193 3194 vpsrld $11,%xmm12,%xmm1 3195 vpxor %xmm2,%xmm7,%xmm7 3196 vpslld $21,%xmm12,%xmm2 3197 vpaddd -128(%rbp),%xmm5,%xmm5 3198 vpxor %xmm1,%xmm7,%xmm7 3199 3200 vpsrld $25,%xmm12,%xmm1 3201 vpxor %xmm2,%xmm7,%xmm7 3202 3203 vpslld $7,%xmm12,%xmm2 3204 vpandn %xmm14,%xmm12,%xmm0 3205 vpand %xmm13,%xmm12,%xmm3 3206 3207 vpxor %xmm1,%xmm7,%xmm7 3208 3209 vpsrld $2,%xmm8,%xmm15 3210 vpxor %xmm2,%xmm7,%xmm7 3211 3212 vpslld $30,%xmm8,%xmm1 3213 vpxor %xmm3,%xmm0,%xmm0 3214 vpxor %xmm8,%xmm9,%xmm3 3215 3216 vpxor %xmm1,%xmm15,%xmm15 3217 vpaddd %xmm7,%xmm5,%xmm5 3218 3219 vpsrld $13,%xmm8,%xmm1 3220 3221 vpslld $19,%xmm8,%xmm2 3222 vpaddd %xmm0,%xmm5,%xmm5 3223 vpand %xmm3,%xmm4,%xmm4 3224 3225 vpxor %xmm1,%xmm15,%xmm7 3226 3227 vpsrld $22,%xmm8,%xmm1 3228 vpxor %xmm2,%xmm7,%xmm7 3229 3230 vpslld $10,%xmm8,%xmm2 3231 vpxor %xmm4,%xmm9,%xmm15 3232 vpaddd %xmm5,%xmm11,%xmm11 3233 3234 vpxor %xmm1,%xmm7,%xmm7 3235 vpxor %xmm2,%xmm7,%xmm7 3236 3237 vpaddd %xmm5,%xmm15,%xmm15 3238 vpaddd %xmm7,%xmm15,%xmm15 3239 vmovd 4(%r8),%xmm5 3240 vmovd 4(%r9),%xmm0 3241 vpinsrd $1,4(%r10),%xmm5,%xmm5 3242 vpinsrd $1,4(%r11),%xmm0,%xmm0 3243 vpunpckldq %xmm0,%xmm5,%xmm5 3244 vpshufb %xmm6,%xmm5,%xmm5 3245 vpsrld $6,%xmm11,%xmm7 3246 vpslld $26,%xmm11,%xmm2 3247 vmovdqu %xmm5,16-128(%rax) 3248 vpaddd %xmm14,%xmm5,%xmm5 3249 3250 vpsrld $11,%xmm11,%xmm1 3251 vpxor %xmm2,%xmm7,%xmm7 3252 vpslld $21,%xmm11,%xmm2 3253 vpaddd -96(%rbp),%xmm5,%xmm5 3254 vpxor %xmm1,%xmm7,%xmm7 3255 3256 vpsrld $25,%xmm11,%xmm1 3257 vpxor %xmm2,%xmm7,%xmm7 3258 3259 vpslld $7,%xmm11,%xmm2 3260 vpandn %xmm13,%xmm11,%xmm0 3261 vpand %xmm12,%xmm11,%xmm4 3262 3263 vpxor %xmm1,%xmm7,%xmm7 3264 3265 vpsrld $2,%xmm15,%xmm14 3266 vpxor %xmm2,%xmm7,%xmm7 3267 3268 vpslld $30,%xmm15,%xmm1 3269 vpxor %xmm4,%xmm0,%xmm0 3270 vpxor %xmm15,%xmm8,%xmm4 3271 3272 vpxor %xmm1,%xmm14,%xmm14 3273 vpaddd %xmm7,%xmm5,%xmm5 3274 3275 vpsrld $13,%xmm15,%xmm1 3276 3277 vpslld $19,%xmm15,%xmm2 3278 vpaddd %xmm0,%xmm5,%xmm5 3279 vpand %xmm4,%xmm3,%xmm3 3280 3281 vpxor %xmm1,%xmm14,%xmm7 3282 3283 vpsrld $22,%xmm15,%xmm1 3284 vpxor %xmm2,%xmm7,%xmm7 3285 3286 vpslld $10,%xmm15,%xmm2 3287 vpxor %xmm3,%xmm8,%xmm14 3288 vpaddd %xmm5,%xmm10,%xmm10 3289 3290 vpxor %xmm1,%xmm7,%xmm7 3291 vpxor %xmm2,%xmm7,%xmm7 3292 3293 vpaddd %xmm5,%xmm14,%xmm14 3294 vpaddd %xmm7,%xmm14,%xmm14 3295 vmovd 8(%r8),%xmm5 3296 vmovd 8(%r9),%xmm0 3297 vpinsrd $1,8(%r10),%xmm5,%xmm5 3298 vpinsrd $1,8(%r11),%xmm0,%xmm0 3299 vpunpckldq %xmm0,%xmm5,%xmm5 3300 vpshufb %xmm6,%xmm5,%xmm5 3301 vpsrld $6,%xmm10,%xmm7 3302 vpslld $26,%xmm10,%xmm2 3303 vmovdqu %xmm5,32-128(%rax) 3304 vpaddd %xmm13,%xmm5,%xmm5 3305 3306 vpsrld $11,%xmm10,%xmm1 3307 vpxor %xmm2,%xmm7,%xmm7 3308 vpslld $21,%xmm10,%xmm2 3309 vpaddd -64(%rbp),%xmm5,%xmm5 3310 vpxor %xmm1,%xmm7,%xmm7 3311 3312 vpsrld $25,%xmm10,%xmm1 3313 vpxor %xmm2,%xmm7,%xmm7 3314 3315 vpslld $7,%xmm10,%xmm2 3316 vpandn %xmm12,%xmm10,%xmm0 3317 vpand %xmm11,%xmm10,%xmm3 3318 3319 vpxor %xmm1,%xmm7,%xmm7 3320 3321 vpsrld $2,%xmm14,%xmm13 3322 vpxor %xmm2,%xmm7,%xmm7 3323 3324 vpslld $30,%xmm14,%xmm1 3325 vpxor %xmm3,%xmm0,%xmm0 3326 vpxor %xmm14,%xmm15,%xmm3 3327 3328 vpxor %xmm1,%xmm13,%xmm13 3329 vpaddd %xmm7,%xmm5,%xmm5 3330 3331 vpsrld $13,%xmm14,%xmm1 3332 3333 vpslld $19,%xmm14,%xmm2 3334 vpaddd %xmm0,%xmm5,%xmm5 3335 vpand %xmm3,%xmm4,%xmm4 3336 3337 vpxor %xmm1,%xmm13,%xmm7 3338 3339 vpsrld $22,%xmm14,%xmm1 3340 vpxor %xmm2,%xmm7,%xmm7 3341 3342 vpslld $10,%xmm14,%xmm2 3343 vpxor %xmm4,%xmm15,%xmm13 3344 vpaddd %xmm5,%xmm9,%xmm9 3345 3346 vpxor %xmm1,%xmm7,%xmm7 3347 vpxor %xmm2,%xmm7,%xmm7 3348 3349 vpaddd %xmm5,%xmm13,%xmm13 3350 vpaddd %xmm7,%xmm13,%xmm13 3351 vmovd 12(%r8),%xmm5 3352 vmovd 12(%r9),%xmm0 3353 vpinsrd $1,12(%r10),%xmm5,%xmm5 3354 vpinsrd $1,12(%r11),%xmm0,%xmm0 3355 vpunpckldq %xmm0,%xmm5,%xmm5 3356 vpshufb %xmm6,%xmm5,%xmm5 3357 vpsrld $6,%xmm9,%xmm7 3358 vpslld $26,%xmm9,%xmm2 3359 vmovdqu %xmm5,48-128(%rax) 3360 vpaddd %xmm12,%xmm5,%xmm5 3361 3362 vpsrld $11,%xmm9,%xmm1 3363 vpxor %xmm2,%xmm7,%xmm7 3364 vpslld $21,%xmm9,%xmm2 3365 vpaddd -32(%rbp),%xmm5,%xmm5 3366 vpxor %xmm1,%xmm7,%xmm7 3367 3368 vpsrld $25,%xmm9,%xmm1 3369 vpxor %xmm2,%xmm7,%xmm7 3370 3371 vpslld $7,%xmm9,%xmm2 3372 vpandn %xmm11,%xmm9,%xmm0 3373 vpand %xmm10,%xmm9,%xmm4 3374 3375 vpxor %xmm1,%xmm7,%xmm7 3376 3377 vpsrld $2,%xmm13,%xmm12 3378 vpxor %xmm2,%xmm7,%xmm7 3379 3380 vpslld $30,%xmm13,%xmm1 3381 vpxor %xmm4,%xmm0,%xmm0 3382 vpxor %xmm13,%xmm14,%xmm4 3383 3384 vpxor %xmm1,%xmm12,%xmm12 3385 vpaddd %xmm7,%xmm5,%xmm5 3386 3387 vpsrld $13,%xmm13,%xmm1 3388 3389 vpslld $19,%xmm13,%xmm2 3390 vpaddd %xmm0,%xmm5,%xmm5 3391 vpand %xmm4,%xmm3,%xmm3 3392 3393 vpxor %xmm1,%xmm12,%xmm7 3394 3395 vpsrld $22,%xmm13,%xmm1 3396 vpxor %xmm2,%xmm7,%xmm7 3397 3398 vpslld $10,%xmm13,%xmm2 3399 vpxor %xmm3,%xmm14,%xmm12 3400 vpaddd %xmm5,%xmm8,%xmm8 3401 3402 vpxor %xmm1,%xmm7,%xmm7 3403 vpxor %xmm2,%xmm7,%xmm7 3404 3405 vpaddd %xmm5,%xmm12,%xmm12 3406 vpaddd %xmm7,%xmm12,%xmm12 3407 vmovd 16(%r8),%xmm5 3408 vmovd 16(%r9),%xmm0 3409 vpinsrd $1,16(%r10),%xmm5,%xmm5 3410 vpinsrd $1,16(%r11),%xmm0,%xmm0 3411 vpunpckldq %xmm0,%xmm5,%xmm5 3412 vpshufb %xmm6,%xmm5,%xmm5 3413 vpsrld $6,%xmm8,%xmm7 3414 vpslld $26,%xmm8,%xmm2 3415 vmovdqu %xmm5,64-128(%rax) 3416 vpaddd %xmm11,%xmm5,%xmm5 3417 3418 vpsrld $11,%xmm8,%xmm1 3419 vpxor %xmm2,%xmm7,%xmm7 3420 vpslld $21,%xmm8,%xmm2 3421 vpaddd 0(%rbp),%xmm5,%xmm5 3422 vpxor %xmm1,%xmm7,%xmm7 3423 3424 vpsrld $25,%xmm8,%xmm1 3425 vpxor %xmm2,%xmm7,%xmm7 3426 3427 vpslld $7,%xmm8,%xmm2 3428 vpandn %xmm10,%xmm8,%xmm0 3429 vpand %xmm9,%xmm8,%xmm3 3430 3431 vpxor %xmm1,%xmm7,%xmm7 3432 3433 vpsrld $2,%xmm12,%xmm11 3434 vpxor %xmm2,%xmm7,%xmm7 3435 3436 vpslld $30,%xmm12,%xmm1 3437 vpxor %xmm3,%xmm0,%xmm0 3438 vpxor %xmm12,%xmm13,%xmm3 3439 3440 vpxor %xmm1,%xmm11,%xmm11 3441 vpaddd %xmm7,%xmm5,%xmm5 3442 3443 vpsrld $13,%xmm12,%xmm1 3444 3445 vpslld $19,%xmm12,%xmm2 3446 vpaddd %xmm0,%xmm5,%xmm5 3447 vpand %xmm3,%xmm4,%xmm4 3448 3449 vpxor %xmm1,%xmm11,%xmm7 3450 3451 vpsrld $22,%xmm12,%xmm1 3452 vpxor %xmm2,%xmm7,%xmm7 3453 3454 vpslld $10,%xmm12,%xmm2 3455 vpxor %xmm4,%xmm13,%xmm11 3456 vpaddd %xmm5,%xmm15,%xmm15 3457 3458 vpxor %xmm1,%xmm7,%xmm7 3459 vpxor %xmm2,%xmm7,%xmm7 3460 3461 vpaddd %xmm5,%xmm11,%xmm11 3462 vpaddd %xmm7,%xmm11,%xmm11 3463 vmovd 20(%r8),%xmm5 3464 vmovd 20(%r9),%xmm0 3465 vpinsrd $1,20(%r10),%xmm5,%xmm5 3466 vpinsrd $1,20(%r11),%xmm0,%xmm0 3467 vpunpckldq %xmm0,%xmm5,%xmm5 3468 vpshufb %xmm6,%xmm5,%xmm5 3469 vpsrld $6,%xmm15,%xmm7 3470 vpslld $26,%xmm15,%xmm2 3471 vmovdqu %xmm5,80-128(%rax) 3472 vpaddd %xmm10,%xmm5,%xmm5 3473 3474 vpsrld $11,%xmm15,%xmm1 3475 vpxor %xmm2,%xmm7,%xmm7 3476 vpslld $21,%xmm15,%xmm2 3477 vpaddd 32(%rbp),%xmm5,%xmm5 3478 vpxor %xmm1,%xmm7,%xmm7 3479 3480 vpsrld $25,%xmm15,%xmm1 3481 vpxor %xmm2,%xmm7,%xmm7 3482 3483 vpslld $7,%xmm15,%xmm2 3484 vpandn %xmm9,%xmm15,%xmm0 3485 vpand %xmm8,%xmm15,%xmm4 3486 3487 vpxor %xmm1,%xmm7,%xmm7 3488 3489 vpsrld $2,%xmm11,%xmm10 3490 vpxor %xmm2,%xmm7,%xmm7 3491 3492 vpslld $30,%xmm11,%xmm1 3493 vpxor %xmm4,%xmm0,%xmm0 3494 vpxor %xmm11,%xmm12,%xmm4 3495 3496 vpxor %xmm1,%xmm10,%xmm10 3497 vpaddd %xmm7,%xmm5,%xmm5 3498 3499 vpsrld $13,%xmm11,%xmm1 3500 3501 vpslld $19,%xmm11,%xmm2 3502 vpaddd %xmm0,%xmm5,%xmm5 3503 vpand %xmm4,%xmm3,%xmm3 3504 3505 vpxor %xmm1,%xmm10,%xmm7 3506 3507 vpsrld $22,%xmm11,%xmm1 3508 vpxor %xmm2,%xmm7,%xmm7 3509 3510 vpslld $10,%xmm11,%xmm2 3511 vpxor %xmm3,%xmm12,%xmm10 3512 vpaddd %xmm5,%xmm14,%xmm14 3513 3514 vpxor %xmm1,%xmm7,%xmm7 3515 vpxor %xmm2,%xmm7,%xmm7 3516 3517 vpaddd %xmm5,%xmm10,%xmm10 3518 vpaddd %xmm7,%xmm10,%xmm10 3519 vmovd 24(%r8),%xmm5 3520 vmovd 24(%r9),%xmm0 3521 vpinsrd $1,24(%r10),%xmm5,%xmm5 3522 vpinsrd $1,24(%r11),%xmm0,%xmm0 3523 vpunpckldq %xmm0,%xmm5,%xmm5 3524 vpshufb %xmm6,%xmm5,%xmm5 3525 vpsrld $6,%xmm14,%xmm7 3526 vpslld $26,%xmm14,%xmm2 3527 vmovdqu %xmm5,96-128(%rax) 3528 vpaddd %xmm9,%xmm5,%xmm5 3529 3530 vpsrld $11,%xmm14,%xmm1 3531 vpxor %xmm2,%xmm7,%xmm7 3532 vpslld $21,%xmm14,%xmm2 3533 vpaddd 64(%rbp),%xmm5,%xmm5 3534 vpxor %xmm1,%xmm7,%xmm7 3535 3536 vpsrld $25,%xmm14,%xmm1 3537 vpxor %xmm2,%xmm7,%xmm7 3538 3539 vpslld $7,%xmm14,%xmm2 3540 vpandn %xmm8,%xmm14,%xmm0 3541 vpand %xmm15,%xmm14,%xmm3 3542 3543 vpxor %xmm1,%xmm7,%xmm7 3544 3545 vpsrld $2,%xmm10,%xmm9 3546 vpxor %xmm2,%xmm7,%xmm7 3547 3548 vpslld $30,%xmm10,%xmm1 3549 vpxor %xmm3,%xmm0,%xmm0 3550 vpxor %xmm10,%xmm11,%xmm3 3551 3552 vpxor %xmm1,%xmm9,%xmm9 3553 vpaddd %xmm7,%xmm5,%xmm5 3554 3555 vpsrld $13,%xmm10,%xmm1 3556 3557 vpslld $19,%xmm10,%xmm2 3558 vpaddd %xmm0,%xmm5,%xmm5 3559 vpand %xmm3,%xmm4,%xmm4 3560 3561 vpxor %xmm1,%xmm9,%xmm7 3562 3563 vpsrld $22,%xmm10,%xmm1 3564 vpxor %xmm2,%xmm7,%xmm7 3565 3566 vpslld $10,%xmm10,%xmm2 3567 vpxor %xmm4,%xmm11,%xmm9 3568 vpaddd %xmm5,%xmm13,%xmm13 3569 3570 vpxor %xmm1,%xmm7,%xmm7 3571 vpxor %xmm2,%xmm7,%xmm7 3572 3573 vpaddd %xmm5,%xmm9,%xmm9 3574 vpaddd %xmm7,%xmm9,%xmm9 3575 vmovd 28(%r8),%xmm5 3576 vmovd 28(%r9),%xmm0 3577 vpinsrd $1,28(%r10),%xmm5,%xmm5 3578 vpinsrd $1,28(%r11),%xmm0,%xmm0 3579 vpunpckldq %xmm0,%xmm5,%xmm5 3580 vpshufb %xmm6,%xmm5,%xmm5 3581 vpsrld $6,%xmm13,%xmm7 3582 vpslld $26,%xmm13,%xmm2 3583 vmovdqu %xmm5,112-128(%rax) 3584 vpaddd %xmm8,%xmm5,%xmm5 3585 3586 vpsrld $11,%xmm13,%xmm1 3587 vpxor %xmm2,%xmm7,%xmm7 3588 vpslld $21,%xmm13,%xmm2 3589 vpaddd 96(%rbp),%xmm5,%xmm5 3590 vpxor %xmm1,%xmm7,%xmm7 3591 3592 vpsrld $25,%xmm13,%xmm1 3593 vpxor %xmm2,%xmm7,%xmm7 3594 3595 vpslld $7,%xmm13,%xmm2 3596 vpandn %xmm15,%xmm13,%xmm0 3597 vpand %xmm14,%xmm13,%xmm4 3598 3599 vpxor %xmm1,%xmm7,%xmm7 3600 3601 vpsrld $2,%xmm9,%xmm8 3602 vpxor %xmm2,%xmm7,%xmm7 3603 3604 vpslld $30,%xmm9,%xmm1 3605 vpxor %xmm4,%xmm0,%xmm0 3606 vpxor %xmm9,%xmm10,%xmm4 3607 3608 vpxor %xmm1,%xmm8,%xmm8 3609 vpaddd %xmm7,%xmm5,%xmm5 3610 3611 vpsrld $13,%xmm9,%xmm1 3612 3613 vpslld $19,%xmm9,%xmm2 3614 vpaddd %xmm0,%xmm5,%xmm5 3615 vpand %xmm4,%xmm3,%xmm3 3616 3617 vpxor %xmm1,%xmm8,%xmm7 3618 3619 vpsrld $22,%xmm9,%xmm1 3620 vpxor %xmm2,%xmm7,%xmm7 3621 3622 vpslld $10,%xmm9,%xmm2 3623 vpxor %xmm3,%xmm10,%xmm8 3624 vpaddd %xmm5,%xmm12,%xmm12 3625 3626 vpxor %xmm1,%xmm7,%xmm7 3627 vpxor %xmm2,%xmm7,%xmm7 3628 3629 vpaddd %xmm5,%xmm8,%xmm8 3630 vpaddd %xmm7,%xmm8,%xmm8 3631 addq $256,%rbp 3632 vmovd 32(%r8),%xmm5 3633 vmovd 32(%r9),%xmm0 3634 vpinsrd $1,32(%r10),%xmm5,%xmm5 3635 vpinsrd $1,32(%r11),%xmm0,%xmm0 3636 vpunpckldq %xmm0,%xmm5,%xmm5 3637 vpshufb %xmm6,%xmm5,%xmm5 3638 vpsrld $6,%xmm12,%xmm7 3639 vpslld $26,%xmm12,%xmm2 3640 vmovdqu %xmm5,128-128(%rax) 3641 vpaddd %xmm15,%xmm5,%xmm5 3642 3643 vpsrld $11,%xmm12,%xmm1 3644 vpxor %xmm2,%xmm7,%xmm7 3645 vpslld $21,%xmm12,%xmm2 3646 vpaddd -128(%rbp),%xmm5,%xmm5 3647 vpxor %xmm1,%xmm7,%xmm7 3648 3649 vpsrld $25,%xmm12,%xmm1 3650 vpxor %xmm2,%xmm7,%xmm7 3651 3652 vpslld $7,%xmm12,%xmm2 3653 vpandn %xmm14,%xmm12,%xmm0 3654 vpand %xmm13,%xmm12,%xmm3 3655 3656 vpxor %xmm1,%xmm7,%xmm7 3657 3658 vpsrld $2,%xmm8,%xmm15 3659 vpxor %xmm2,%xmm7,%xmm7 3660 3661 vpslld $30,%xmm8,%xmm1 3662 vpxor %xmm3,%xmm0,%xmm0 3663 vpxor %xmm8,%xmm9,%xmm3 3664 3665 vpxor %xmm1,%xmm15,%xmm15 3666 vpaddd %xmm7,%xmm5,%xmm5 3667 3668 vpsrld $13,%xmm8,%xmm1 3669 3670 vpslld $19,%xmm8,%xmm2 3671 vpaddd %xmm0,%xmm5,%xmm5 3672 vpand %xmm3,%xmm4,%xmm4 3673 3674 vpxor %xmm1,%xmm15,%xmm7 3675 3676 vpsrld $22,%xmm8,%xmm1 3677 vpxor %xmm2,%xmm7,%xmm7 3678 3679 vpslld $10,%xmm8,%xmm2 3680 vpxor %xmm4,%xmm9,%xmm15 3681 vpaddd %xmm5,%xmm11,%xmm11 3682 3683 vpxor %xmm1,%xmm7,%xmm7 3684 vpxor %xmm2,%xmm7,%xmm7 3685 3686 vpaddd %xmm5,%xmm15,%xmm15 3687 vpaddd %xmm7,%xmm15,%xmm15 3688 vmovd 36(%r8),%xmm5 3689 vmovd 36(%r9),%xmm0 3690 vpinsrd $1,36(%r10),%xmm5,%xmm5 3691 vpinsrd $1,36(%r11),%xmm0,%xmm0 3692 vpunpckldq %xmm0,%xmm5,%xmm5 3693 vpshufb %xmm6,%xmm5,%xmm5 3694 vpsrld $6,%xmm11,%xmm7 3695 vpslld $26,%xmm11,%xmm2 3696 vmovdqu %xmm5,144-128(%rax) 3697 vpaddd %xmm14,%xmm5,%xmm5 3698 3699 vpsrld $11,%xmm11,%xmm1 3700 vpxor %xmm2,%xmm7,%xmm7 3701 vpslld $21,%xmm11,%xmm2 3702 vpaddd -96(%rbp),%xmm5,%xmm5 3703 vpxor %xmm1,%xmm7,%xmm7 3704 3705 vpsrld $25,%xmm11,%xmm1 3706 vpxor %xmm2,%xmm7,%xmm7 3707 3708 vpslld $7,%xmm11,%xmm2 3709 vpandn %xmm13,%xmm11,%xmm0 3710 vpand %xmm12,%xmm11,%xmm4 3711 3712 vpxor %xmm1,%xmm7,%xmm7 3713 3714 vpsrld $2,%xmm15,%xmm14 3715 vpxor %xmm2,%xmm7,%xmm7 3716 3717 vpslld $30,%xmm15,%xmm1 3718 vpxor %xmm4,%xmm0,%xmm0 3719 vpxor %xmm15,%xmm8,%xmm4 3720 3721 vpxor %xmm1,%xmm14,%xmm14 3722 vpaddd %xmm7,%xmm5,%xmm5 3723 3724 vpsrld $13,%xmm15,%xmm1 3725 3726 vpslld $19,%xmm15,%xmm2 3727 vpaddd %xmm0,%xmm5,%xmm5 3728 vpand %xmm4,%xmm3,%xmm3 3729 3730 vpxor %xmm1,%xmm14,%xmm7 3731 3732 vpsrld $22,%xmm15,%xmm1 3733 vpxor %xmm2,%xmm7,%xmm7 3734 3735 vpslld $10,%xmm15,%xmm2 3736 vpxor %xmm3,%xmm8,%xmm14 3737 vpaddd %xmm5,%xmm10,%xmm10 3738 3739 vpxor %xmm1,%xmm7,%xmm7 3740 vpxor %xmm2,%xmm7,%xmm7 3741 3742 vpaddd %xmm5,%xmm14,%xmm14 3743 vpaddd %xmm7,%xmm14,%xmm14 3744 vmovd 40(%r8),%xmm5 3745 vmovd 40(%r9),%xmm0 3746 vpinsrd $1,40(%r10),%xmm5,%xmm5 3747 vpinsrd $1,40(%r11),%xmm0,%xmm0 3748 vpunpckldq %xmm0,%xmm5,%xmm5 3749 vpshufb %xmm6,%xmm5,%xmm5 3750 vpsrld $6,%xmm10,%xmm7 3751 vpslld $26,%xmm10,%xmm2 3752 vmovdqu %xmm5,160-128(%rax) 3753 vpaddd %xmm13,%xmm5,%xmm5 3754 3755 vpsrld $11,%xmm10,%xmm1 3756 vpxor %xmm2,%xmm7,%xmm7 3757 vpslld $21,%xmm10,%xmm2 3758 vpaddd -64(%rbp),%xmm5,%xmm5 3759 vpxor %xmm1,%xmm7,%xmm7 3760 3761 vpsrld $25,%xmm10,%xmm1 3762 vpxor %xmm2,%xmm7,%xmm7 3763 3764 vpslld $7,%xmm10,%xmm2 3765 vpandn %xmm12,%xmm10,%xmm0 3766 vpand %xmm11,%xmm10,%xmm3 3767 3768 vpxor %xmm1,%xmm7,%xmm7 3769 3770 vpsrld $2,%xmm14,%xmm13 3771 vpxor %xmm2,%xmm7,%xmm7 3772 3773 vpslld $30,%xmm14,%xmm1 3774 vpxor %xmm3,%xmm0,%xmm0 3775 vpxor %xmm14,%xmm15,%xmm3 3776 3777 vpxor %xmm1,%xmm13,%xmm13 3778 vpaddd %xmm7,%xmm5,%xmm5 3779 3780 vpsrld $13,%xmm14,%xmm1 3781 3782 vpslld $19,%xmm14,%xmm2 3783 vpaddd %xmm0,%xmm5,%xmm5 3784 vpand %xmm3,%xmm4,%xmm4 3785 3786 vpxor %xmm1,%xmm13,%xmm7 3787 3788 vpsrld $22,%xmm14,%xmm1 3789 vpxor %xmm2,%xmm7,%xmm7 3790 3791 vpslld $10,%xmm14,%xmm2 3792 vpxor %xmm4,%xmm15,%xmm13 3793 vpaddd %xmm5,%xmm9,%xmm9 3794 3795 vpxor %xmm1,%xmm7,%xmm7 3796 vpxor %xmm2,%xmm7,%xmm7 3797 3798 vpaddd %xmm5,%xmm13,%xmm13 3799 vpaddd %xmm7,%xmm13,%xmm13 3800 vmovd 44(%r8),%xmm5 3801 vmovd 44(%r9),%xmm0 3802 vpinsrd $1,44(%r10),%xmm5,%xmm5 3803 vpinsrd $1,44(%r11),%xmm0,%xmm0 3804 vpunpckldq %xmm0,%xmm5,%xmm5 3805 vpshufb %xmm6,%xmm5,%xmm5 3806 vpsrld $6,%xmm9,%xmm7 3807 vpslld $26,%xmm9,%xmm2 3808 vmovdqu %xmm5,176-128(%rax) 3809 vpaddd %xmm12,%xmm5,%xmm5 3810 3811 vpsrld $11,%xmm9,%xmm1 3812 vpxor %xmm2,%xmm7,%xmm7 3813 vpslld $21,%xmm9,%xmm2 3814 vpaddd -32(%rbp),%xmm5,%xmm5 3815 vpxor %xmm1,%xmm7,%xmm7 3816 3817 vpsrld $25,%xmm9,%xmm1 3818 vpxor %xmm2,%xmm7,%xmm7 3819 3820 vpslld $7,%xmm9,%xmm2 3821 vpandn %xmm11,%xmm9,%xmm0 3822 vpand %xmm10,%xmm9,%xmm4 3823 3824 vpxor %xmm1,%xmm7,%xmm7 3825 3826 vpsrld $2,%xmm13,%xmm12 3827 vpxor %xmm2,%xmm7,%xmm7 3828 3829 vpslld $30,%xmm13,%xmm1 3830 vpxor %xmm4,%xmm0,%xmm0 3831 vpxor %xmm13,%xmm14,%xmm4 3832 3833 vpxor %xmm1,%xmm12,%xmm12 3834 vpaddd %xmm7,%xmm5,%xmm5 3835 3836 vpsrld $13,%xmm13,%xmm1 3837 3838 vpslld $19,%xmm13,%xmm2 3839 vpaddd %xmm0,%xmm5,%xmm5 3840 vpand %xmm4,%xmm3,%xmm3 3841 3842 vpxor %xmm1,%xmm12,%xmm7 3843 3844 vpsrld $22,%xmm13,%xmm1 3845 vpxor %xmm2,%xmm7,%xmm7 3846 3847 vpslld $10,%xmm13,%xmm2 3848 vpxor %xmm3,%xmm14,%xmm12 3849 vpaddd %xmm5,%xmm8,%xmm8 3850 3851 vpxor %xmm1,%xmm7,%xmm7 3852 vpxor %xmm2,%xmm7,%xmm7 3853 3854 vpaddd %xmm5,%xmm12,%xmm12 3855 vpaddd %xmm7,%xmm12,%xmm12 3856 vmovd 48(%r8),%xmm5 3857 vmovd 48(%r9),%xmm0 3858 vpinsrd $1,48(%r10),%xmm5,%xmm5 3859 vpinsrd $1,48(%r11),%xmm0,%xmm0 3860 vpunpckldq %xmm0,%xmm5,%xmm5 3861 vpshufb %xmm6,%xmm5,%xmm5 3862 vpsrld $6,%xmm8,%xmm7 3863 vpslld $26,%xmm8,%xmm2 3864 vmovdqu %xmm5,192-128(%rax) 3865 vpaddd %xmm11,%xmm5,%xmm5 3866 3867 vpsrld $11,%xmm8,%xmm1 3868 vpxor %xmm2,%xmm7,%xmm7 3869 vpslld $21,%xmm8,%xmm2 3870 vpaddd 0(%rbp),%xmm5,%xmm5 3871 vpxor %xmm1,%xmm7,%xmm7 3872 3873 vpsrld $25,%xmm8,%xmm1 3874 vpxor %xmm2,%xmm7,%xmm7 3875 3876 vpslld $7,%xmm8,%xmm2 3877 vpandn %xmm10,%xmm8,%xmm0 3878 vpand %xmm9,%xmm8,%xmm3 3879 3880 vpxor %xmm1,%xmm7,%xmm7 3881 3882 vpsrld $2,%xmm12,%xmm11 3883 vpxor %xmm2,%xmm7,%xmm7 3884 3885 vpslld $30,%xmm12,%xmm1 3886 vpxor %xmm3,%xmm0,%xmm0 3887 vpxor %xmm12,%xmm13,%xmm3 3888 3889 vpxor %xmm1,%xmm11,%xmm11 3890 vpaddd %xmm7,%xmm5,%xmm5 3891 3892 vpsrld $13,%xmm12,%xmm1 3893 3894 vpslld $19,%xmm12,%xmm2 3895 vpaddd %xmm0,%xmm5,%xmm5 3896 vpand %xmm3,%xmm4,%xmm4 3897 3898 vpxor %xmm1,%xmm11,%xmm7 3899 3900 vpsrld $22,%xmm12,%xmm1 3901 vpxor %xmm2,%xmm7,%xmm7 3902 3903 vpslld $10,%xmm12,%xmm2 3904 vpxor %xmm4,%xmm13,%xmm11 3905 vpaddd %xmm5,%xmm15,%xmm15 3906 3907 vpxor %xmm1,%xmm7,%xmm7 3908 vpxor %xmm2,%xmm7,%xmm7 3909 3910 vpaddd %xmm5,%xmm11,%xmm11 3911 vpaddd %xmm7,%xmm11,%xmm11 3912 vmovd 52(%r8),%xmm5 3913 vmovd 52(%r9),%xmm0 3914 vpinsrd $1,52(%r10),%xmm5,%xmm5 3915 vpinsrd $1,52(%r11),%xmm0,%xmm0 3916 vpunpckldq %xmm0,%xmm5,%xmm5 3917 vpshufb %xmm6,%xmm5,%xmm5 3918 vpsrld $6,%xmm15,%xmm7 3919 vpslld $26,%xmm15,%xmm2 3920 vmovdqu %xmm5,208-128(%rax) 3921 vpaddd %xmm10,%xmm5,%xmm5 3922 3923 vpsrld $11,%xmm15,%xmm1 3924 vpxor %xmm2,%xmm7,%xmm7 3925 vpslld $21,%xmm15,%xmm2 3926 vpaddd 32(%rbp),%xmm5,%xmm5 3927 vpxor %xmm1,%xmm7,%xmm7 3928 3929 vpsrld $25,%xmm15,%xmm1 3930 vpxor %xmm2,%xmm7,%xmm7 3931 3932 vpslld $7,%xmm15,%xmm2 3933 vpandn %xmm9,%xmm15,%xmm0 3934 vpand %xmm8,%xmm15,%xmm4 3935 3936 vpxor %xmm1,%xmm7,%xmm7 3937 3938 vpsrld $2,%xmm11,%xmm10 3939 vpxor %xmm2,%xmm7,%xmm7 3940 3941 vpslld $30,%xmm11,%xmm1 3942 vpxor %xmm4,%xmm0,%xmm0 3943 vpxor %xmm11,%xmm12,%xmm4 3944 3945 vpxor %xmm1,%xmm10,%xmm10 3946 vpaddd %xmm7,%xmm5,%xmm5 3947 3948 vpsrld $13,%xmm11,%xmm1 3949 3950 vpslld $19,%xmm11,%xmm2 3951 vpaddd %xmm0,%xmm5,%xmm5 3952 vpand %xmm4,%xmm3,%xmm3 3953 3954 vpxor %xmm1,%xmm10,%xmm7 3955 3956 vpsrld $22,%xmm11,%xmm1 3957 vpxor %xmm2,%xmm7,%xmm7 3958 3959 vpslld $10,%xmm11,%xmm2 3960 vpxor %xmm3,%xmm12,%xmm10 3961 vpaddd %xmm5,%xmm14,%xmm14 3962 3963 vpxor %xmm1,%xmm7,%xmm7 3964 vpxor %xmm2,%xmm7,%xmm7 3965 3966 vpaddd %xmm5,%xmm10,%xmm10 3967 vpaddd %xmm7,%xmm10,%xmm10 3968 vmovd 56(%r8),%xmm5 3969 vmovd 56(%r9),%xmm0 3970 vpinsrd $1,56(%r10),%xmm5,%xmm5 3971 vpinsrd $1,56(%r11),%xmm0,%xmm0 3972 vpunpckldq %xmm0,%xmm5,%xmm5 3973 vpshufb %xmm6,%xmm5,%xmm5 3974 vpsrld $6,%xmm14,%xmm7 3975 vpslld $26,%xmm14,%xmm2 3976 vmovdqu %xmm5,224-128(%rax) 3977 vpaddd %xmm9,%xmm5,%xmm5 3978 3979 vpsrld $11,%xmm14,%xmm1 3980 vpxor %xmm2,%xmm7,%xmm7 3981 vpslld $21,%xmm14,%xmm2 3982 vpaddd 64(%rbp),%xmm5,%xmm5 3983 vpxor %xmm1,%xmm7,%xmm7 3984 3985 vpsrld $25,%xmm14,%xmm1 3986 vpxor %xmm2,%xmm7,%xmm7 3987 3988 vpslld $7,%xmm14,%xmm2 3989 vpandn %xmm8,%xmm14,%xmm0 3990 vpand %xmm15,%xmm14,%xmm3 3991 3992 vpxor %xmm1,%xmm7,%xmm7 3993 3994 vpsrld $2,%xmm10,%xmm9 3995 vpxor %xmm2,%xmm7,%xmm7 3996 3997 vpslld $30,%xmm10,%xmm1 3998 vpxor %xmm3,%xmm0,%xmm0 3999 vpxor %xmm10,%xmm11,%xmm3 4000 4001 vpxor %xmm1,%xmm9,%xmm9 4002 vpaddd %xmm7,%xmm5,%xmm5 4003 4004 vpsrld $13,%xmm10,%xmm1 4005 4006 vpslld $19,%xmm10,%xmm2 4007 vpaddd %xmm0,%xmm5,%xmm5 4008 vpand %xmm3,%xmm4,%xmm4 4009 4010 vpxor %xmm1,%xmm9,%xmm7 4011 4012 vpsrld $22,%xmm10,%xmm1 4013 vpxor %xmm2,%xmm7,%xmm7 4014 4015 vpslld $10,%xmm10,%xmm2 4016 vpxor %xmm4,%xmm11,%xmm9 4017 vpaddd %xmm5,%xmm13,%xmm13 4018 4019 vpxor %xmm1,%xmm7,%xmm7 4020 vpxor %xmm2,%xmm7,%xmm7 4021 4022 vpaddd %xmm5,%xmm9,%xmm9 4023 vpaddd %xmm7,%xmm9,%xmm9 4024 vmovd 60(%r8),%xmm5 4025 leaq 64(%r8),%r8 4026 vmovd 60(%r9),%xmm0 4027 leaq 64(%r9),%r9 4028 vpinsrd $1,60(%r10),%xmm5,%xmm5 4029 leaq 64(%r10),%r10 4030 vpinsrd $1,60(%r11),%xmm0,%xmm0 4031 leaq 64(%r11),%r11 4032 vpunpckldq %xmm0,%xmm5,%xmm5 4033 vpshufb %xmm6,%xmm5,%xmm5 4034 vpsrld $6,%xmm13,%xmm7 4035 vpslld $26,%xmm13,%xmm2 4036 vmovdqu %xmm5,240-128(%rax) 4037 vpaddd %xmm8,%xmm5,%xmm5 4038 4039 vpsrld $11,%xmm13,%xmm1 4040 vpxor %xmm2,%xmm7,%xmm7 4041 vpslld $21,%xmm13,%xmm2 4042 vpaddd 96(%rbp),%xmm5,%xmm5 4043 vpxor %xmm1,%xmm7,%xmm7 4044 4045 vpsrld $25,%xmm13,%xmm1 4046 vpxor %xmm2,%xmm7,%xmm7 4047 prefetcht0 63(%r8) 4048 vpslld $7,%xmm13,%xmm2 4049 vpandn %xmm15,%xmm13,%xmm0 4050 vpand %xmm14,%xmm13,%xmm4 4051 prefetcht0 63(%r9) 4052 vpxor %xmm1,%xmm7,%xmm7 4053 4054 vpsrld $2,%xmm9,%xmm8 4055 vpxor %xmm2,%xmm7,%xmm7 4056 prefetcht0 63(%r10) 4057 vpslld $30,%xmm9,%xmm1 4058 vpxor %xmm4,%xmm0,%xmm0 4059 vpxor %xmm9,%xmm10,%xmm4 4060 prefetcht0 63(%r11) 4061 vpxor %xmm1,%xmm8,%xmm8 4062 vpaddd %xmm7,%xmm5,%xmm5 4063 4064 vpsrld $13,%xmm9,%xmm1 4065 4066 vpslld $19,%xmm9,%xmm2 4067 vpaddd %xmm0,%xmm5,%xmm5 4068 vpand %xmm4,%xmm3,%xmm3 4069 4070 vpxor %xmm1,%xmm8,%xmm7 4071 4072 vpsrld $22,%xmm9,%xmm1 4073 vpxor %xmm2,%xmm7,%xmm7 4074 4075 vpslld $10,%xmm9,%xmm2 4076 vpxor %xmm3,%xmm10,%xmm8 4077 vpaddd %xmm5,%xmm12,%xmm12 4078 4079 vpxor %xmm1,%xmm7,%xmm7 4080 vpxor %xmm2,%xmm7,%xmm7 4081 4082 vpaddd %xmm5,%xmm8,%xmm8 4083 vpaddd %xmm7,%xmm8,%xmm8 4084 addq $256,%rbp 4085 vmovdqu 0-128(%rax),%xmm5 4086 movl $3,%ecx 4087 jmp .Loop_16_xx_avx 4088.align 32 4089.Loop_16_xx_avx: 4090 vmovdqu 16-128(%rax),%xmm6 4091 vpaddd 144-128(%rax),%xmm5,%xmm5 4092 4093 vpsrld $3,%xmm6,%xmm7 4094 vpsrld $7,%xmm6,%xmm1 4095 vpslld $25,%xmm6,%xmm2 4096 vpxor %xmm1,%xmm7,%xmm7 4097 vpsrld $18,%xmm6,%xmm1 4098 vpxor %xmm2,%xmm7,%xmm7 4099 vpslld $14,%xmm6,%xmm2 4100 vmovdqu 224-128(%rax),%xmm0 4101 vpsrld $10,%xmm0,%xmm3 4102 4103 vpxor %xmm1,%xmm7,%xmm7 4104 vpsrld $17,%xmm0,%xmm1 4105 vpxor %xmm2,%xmm7,%xmm7 4106 vpslld $15,%xmm0,%xmm2 4107 vpaddd %xmm7,%xmm5,%xmm5 4108 vpxor %xmm1,%xmm3,%xmm7 4109 vpsrld $19,%xmm0,%xmm1 4110 vpxor %xmm2,%xmm7,%xmm7 4111 vpslld $13,%xmm0,%xmm2 4112 vpxor %xmm1,%xmm7,%xmm7 4113 vpxor %xmm2,%xmm7,%xmm7 4114 vpaddd %xmm7,%xmm5,%xmm5 4115 vpsrld $6,%xmm12,%xmm7 4116 vpslld $26,%xmm12,%xmm2 4117 vmovdqu %xmm5,0-128(%rax) 4118 vpaddd %xmm15,%xmm5,%xmm5 4119 4120 vpsrld $11,%xmm12,%xmm1 4121 vpxor %xmm2,%xmm7,%xmm7 4122 vpslld $21,%xmm12,%xmm2 4123 vpaddd -128(%rbp),%xmm5,%xmm5 4124 vpxor %xmm1,%xmm7,%xmm7 4125 4126 vpsrld $25,%xmm12,%xmm1 4127 vpxor %xmm2,%xmm7,%xmm7 4128 4129 vpslld $7,%xmm12,%xmm2 4130 vpandn %xmm14,%xmm12,%xmm0 4131 vpand %xmm13,%xmm12,%xmm3 4132 4133 vpxor %xmm1,%xmm7,%xmm7 4134 4135 vpsrld $2,%xmm8,%xmm15 4136 vpxor %xmm2,%xmm7,%xmm7 4137 4138 vpslld $30,%xmm8,%xmm1 4139 vpxor %xmm3,%xmm0,%xmm0 4140 vpxor %xmm8,%xmm9,%xmm3 4141 4142 vpxor %xmm1,%xmm15,%xmm15 4143 vpaddd %xmm7,%xmm5,%xmm5 4144 4145 vpsrld $13,%xmm8,%xmm1 4146 4147 vpslld $19,%xmm8,%xmm2 4148 vpaddd %xmm0,%xmm5,%xmm5 4149 vpand %xmm3,%xmm4,%xmm4 4150 4151 vpxor %xmm1,%xmm15,%xmm7 4152 4153 vpsrld $22,%xmm8,%xmm1 4154 vpxor %xmm2,%xmm7,%xmm7 4155 4156 vpslld $10,%xmm8,%xmm2 4157 vpxor %xmm4,%xmm9,%xmm15 4158 vpaddd %xmm5,%xmm11,%xmm11 4159 4160 vpxor %xmm1,%xmm7,%xmm7 4161 vpxor %xmm2,%xmm7,%xmm7 4162 4163 vpaddd %xmm5,%xmm15,%xmm15 4164 vpaddd %xmm7,%xmm15,%xmm15 4165 vmovdqu 32-128(%rax),%xmm5 4166 vpaddd 160-128(%rax),%xmm6,%xmm6 4167 4168 vpsrld $3,%xmm5,%xmm7 4169 vpsrld $7,%xmm5,%xmm1 4170 vpslld $25,%xmm5,%xmm2 4171 vpxor %xmm1,%xmm7,%xmm7 4172 vpsrld $18,%xmm5,%xmm1 4173 vpxor %xmm2,%xmm7,%xmm7 4174 vpslld $14,%xmm5,%xmm2 4175 vmovdqu 240-128(%rax),%xmm0 4176 vpsrld $10,%xmm0,%xmm4 4177 4178 vpxor %xmm1,%xmm7,%xmm7 4179 vpsrld $17,%xmm0,%xmm1 4180 vpxor %xmm2,%xmm7,%xmm7 4181 vpslld $15,%xmm0,%xmm2 4182 vpaddd %xmm7,%xmm6,%xmm6 4183 vpxor %xmm1,%xmm4,%xmm7 4184 vpsrld $19,%xmm0,%xmm1 4185 vpxor %xmm2,%xmm7,%xmm7 4186 vpslld $13,%xmm0,%xmm2 4187 vpxor %xmm1,%xmm7,%xmm7 4188 vpxor %xmm2,%xmm7,%xmm7 4189 vpaddd %xmm7,%xmm6,%xmm6 4190 vpsrld $6,%xmm11,%xmm7 4191 vpslld $26,%xmm11,%xmm2 4192 vmovdqu %xmm6,16-128(%rax) 4193 vpaddd %xmm14,%xmm6,%xmm6 4194 4195 vpsrld $11,%xmm11,%xmm1 4196 vpxor %xmm2,%xmm7,%xmm7 4197 vpslld $21,%xmm11,%xmm2 4198 vpaddd -96(%rbp),%xmm6,%xmm6 4199 vpxor %xmm1,%xmm7,%xmm7 4200 4201 vpsrld $25,%xmm11,%xmm1 4202 vpxor %xmm2,%xmm7,%xmm7 4203 4204 vpslld $7,%xmm11,%xmm2 4205 vpandn %xmm13,%xmm11,%xmm0 4206 vpand %xmm12,%xmm11,%xmm4 4207 4208 vpxor %xmm1,%xmm7,%xmm7 4209 4210 vpsrld $2,%xmm15,%xmm14 4211 vpxor %xmm2,%xmm7,%xmm7 4212 4213 vpslld $30,%xmm15,%xmm1 4214 vpxor %xmm4,%xmm0,%xmm0 4215 vpxor %xmm15,%xmm8,%xmm4 4216 4217 vpxor %xmm1,%xmm14,%xmm14 4218 vpaddd %xmm7,%xmm6,%xmm6 4219 4220 vpsrld $13,%xmm15,%xmm1 4221 4222 vpslld $19,%xmm15,%xmm2 4223 vpaddd %xmm0,%xmm6,%xmm6 4224 vpand %xmm4,%xmm3,%xmm3 4225 4226 vpxor %xmm1,%xmm14,%xmm7 4227 4228 vpsrld $22,%xmm15,%xmm1 4229 vpxor %xmm2,%xmm7,%xmm7 4230 4231 vpslld $10,%xmm15,%xmm2 4232 vpxor %xmm3,%xmm8,%xmm14 4233 vpaddd %xmm6,%xmm10,%xmm10 4234 4235 vpxor %xmm1,%xmm7,%xmm7 4236 vpxor %xmm2,%xmm7,%xmm7 4237 4238 vpaddd %xmm6,%xmm14,%xmm14 4239 vpaddd %xmm7,%xmm14,%xmm14 4240 vmovdqu 48-128(%rax),%xmm6 4241 vpaddd 176-128(%rax),%xmm5,%xmm5 4242 4243 vpsrld $3,%xmm6,%xmm7 4244 vpsrld $7,%xmm6,%xmm1 4245 vpslld $25,%xmm6,%xmm2 4246 vpxor %xmm1,%xmm7,%xmm7 4247 vpsrld $18,%xmm6,%xmm1 4248 vpxor %xmm2,%xmm7,%xmm7 4249 vpslld $14,%xmm6,%xmm2 4250 vmovdqu 0-128(%rax),%xmm0 4251 vpsrld $10,%xmm0,%xmm3 4252 4253 vpxor %xmm1,%xmm7,%xmm7 4254 vpsrld $17,%xmm0,%xmm1 4255 vpxor %xmm2,%xmm7,%xmm7 4256 vpslld $15,%xmm0,%xmm2 4257 vpaddd %xmm7,%xmm5,%xmm5 4258 vpxor %xmm1,%xmm3,%xmm7 4259 vpsrld $19,%xmm0,%xmm1 4260 vpxor %xmm2,%xmm7,%xmm7 4261 vpslld $13,%xmm0,%xmm2 4262 vpxor %xmm1,%xmm7,%xmm7 4263 vpxor %xmm2,%xmm7,%xmm7 4264 vpaddd %xmm7,%xmm5,%xmm5 4265 vpsrld $6,%xmm10,%xmm7 4266 vpslld $26,%xmm10,%xmm2 4267 vmovdqu %xmm5,32-128(%rax) 4268 vpaddd %xmm13,%xmm5,%xmm5 4269 4270 vpsrld $11,%xmm10,%xmm1 4271 vpxor %xmm2,%xmm7,%xmm7 4272 vpslld $21,%xmm10,%xmm2 4273 vpaddd -64(%rbp),%xmm5,%xmm5 4274 vpxor %xmm1,%xmm7,%xmm7 4275 4276 vpsrld $25,%xmm10,%xmm1 4277 vpxor %xmm2,%xmm7,%xmm7 4278 4279 vpslld $7,%xmm10,%xmm2 4280 vpandn %xmm12,%xmm10,%xmm0 4281 vpand %xmm11,%xmm10,%xmm3 4282 4283 vpxor %xmm1,%xmm7,%xmm7 4284 4285 vpsrld $2,%xmm14,%xmm13 4286 vpxor %xmm2,%xmm7,%xmm7 4287 4288 vpslld $30,%xmm14,%xmm1 4289 vpxor %xmm3,%xmm0,%xmm0 4290 vpxor %xmm14,%xmm15,%xmm3 4291 4292 vpxor %xmm1,%xmm13,%xmm13 4293 vpaddd %xmm7,%xmm5,%xmm5 4294 4295 vpsrld $13,%xmm14,%xmm1 4296 4297 vpslld $19,%xmm14,%xmm2 4298 vpaddd %xmm0,%xmm5,%xmm5 4299 vpand %xmm3,%xmm4,%xmm4 4300 4301 vpxor %xmm1,%xmm13,%xmm7 4302 4303 vpsrld $22,%xmm14,%xmm1 4304 vpxor %xmm2,%xmm7,%xmm7 4305 4306 vpslld $10,%xmm14,%xmm2 4307 vpxor %xmm4,%xmm15,%xmm13 4308 vpaddd %xmm5,%xmm9,%xmm9 4309 4310 vpxor %xmm1,%xmm7,%xmm7 4311 vpxor %xmm2,%xmm7,%xmm7 4312 4313 vpaddd %xmm5,%xmm13,%xmm13 4314 vpaddd %xmm7,%xmm13,%xmm13 4315 vmovdqu 64-128(%rax),%xmm5 4316 vpaddd 192-128(%rax),%xmm6,%xmm6 4317 4318 vpsrld $3,%xmm5,%xmm7 4319 vpsrld $7,%xmm5,%xmm1 4320 vpslld $25,%xmm5,%xmm2 4321 vpxor %xmm1,%xmm7,%xmm7 4322 vpsrld $18,%xmm5,%xmm1 4323 vpxor %xmm2,%xmm7,%xmm7 4324 vpslld $14,%xmm5,%xmm2 4325 vmovdqu 16-128(%rax),%xmm0 4326 vpsrld $10,%xmm0,%xmm4 4327 4328 vpxor %xmm1,%xmm7,%xmm7 4329 vpsrld $17,%xmm0,%xmm1 4330 vpxor %xmm2,%xmm7,%xmm7 4331 vpslld $15,%xmm0,%xmm2 4332 vpaddd %xmm7,%xmm6,%xmm6 4333 vpxor %xmm1,%xmm4,%xmm7 4334 vpsrld $19,%xmm0,%xmm1 4335 vpxor %xmm2,%xmm7,%xmm7 4336 vpslld $13,%xmm0,%xmm2 4337 vpxor %xmm1,%xmm7,%xmm7 4338 vpxor %xmm2,%xmm7,%xmm7 4339 vpaddd %xmm7,%xmm6,%xmm6 4340 vpsrld $6,%xmm9,%xmm7 4341 vpslld $26,%xmm9,%xmm2 4342 vmovdqu %xmm6,48-128(%rax) 4343 vpaddd %xmm12,%xmm6,%xmm6 4344 4345 vpsrld $11,%xmm9,%xmm1 4346 vpxor %xmm2,%xmm7,%xmm7 4347 vpslld $21,%xmm9,%xmm2 4348 vpaddd -32(%rbp),%xmm6,%xmm6 4349 vpxor %xmm1,%xmm7,%xmm7 4350 4351 vpsrld $25,%xmm9,%xmm1 4352 vpxor %xmm2,%xmm7,%xmm7 4353 4354 vpslld $7,%xmm9,%xmm2 4355 vpandn %xmm11,%xmm9,%xmm0 4356 vpand %xmm10,%xmm9,%xmm4 4357 4358 vpxor %xmm1,%xmm7,%xmm7 4359 4360 vpsrld $2,%xmm13,%xmm12 4361 vpxor %xmm2,%xmm7,%xmm7 4362 4363 vpslld $30,%xmm13,%xmm1 4364 vpxor %xmm4,%xmm0,%xmm0 4365 vpxor %xmm13,%xmm14,%xmm4 4366 4367 vpxor %xmm1,%xmm12,%xmm12 4368 vpaddd %xmm7,%xmm6,%xmm6 4369 4370 vpsrld $13,%xmm13,%xmm1 4371 4372 vpslld $19,%xmm13,%xmm2 4373 vpaddd %xmm0,%xmm6,%xmm6 4374 vpand %xmm4,%xmm3,%xmm3 4375 4376 vpxor %xmm1,%xmm12,%xmm7 4377 4378 vpsrld $22,%xmm13,%xmm1 4379 vpxor %xmm2,%xmm7,%xmm7 4380 4381 vpslld $10,%xmm13,%xmm2 4382 vpxor %xmm3,%xmm14,%xmm12 4383 vpaddd %xmm6,%xmm8,%xmm8 4384 4385 vpxor %xmm1,%xmm7,%xmm7 4386 vpxor %xmm2,%xmm7,%xmm7 4387 4388 vpaddd %xmm6,%xmm12,%xmm12 4389 vpaddd %xmm7,%xmm12,%xmm12 4390 vmovdqu 80-128(%rax),%xmm6 4391 vpaddd 208-128(%rax),%xmm5,%xmm5 4392 4393 vpsrld $3,%xmm6,%xmm7 4394 vpsrld $7,%xmm6,%xmm1 4395 vpslld $25,%xmm6,%xmm2 4396 vpxor %xmm1,%xmm7,%xmm7 4397 vpsrld $18,%xmm6,%xmm1 4398 vpxor %xmm2,%xmm7,%xmm7 4399 vpslld $14,%xmm6,%xmm2 4400 vmovdqu 32-128(%rax),%xmm0 4401 vpsrld $10,%xmm0,%xmm3 4402 4403 vpxor %xmm1,%xmm7,%xmm7 4404 vpsrld $17,%xmm0,%xmm1 4405 vpxor %xmm2,%xmm7,%xmm7 4406 vpslld $15,%xmm0,%xmm2 4407 vpaddd %xmm7,%xmm5,%xmm5 4408 vpxor %xmm1,%xmm3,%xmm7 4409 vpsrld $19,%xmm0,%xmm1 4410 vpxor %xmm2,%xmm7,%xmm7 4411 vpslld $13,%xmm0,%xmm2 4412 vpxor %xmm1,%xmm7,%xmm7 4413 vpxor %xmm2,%xmm7,%xmm7 4414 vpaddd %xmm7,%xmm5,%xmm5 4415 vpsrld $6,%xmm8,%xmm7 4416 vpslld $26,%xmm8,%xmm2 4417 vmovdqu %xmm5,64-128(%rax) 4418 vpaddd %xmm11,%xmm5,%xmm5 4419 4420 vpsrld $11,%xmm8,%xmm1 4421 vpxor %xmm2,%xmm7,%xmm7 4422 vpslld $21,%xmm8,%xmm2 4423 vpaddd 0(%rbp),%xmm5,%xmm5 4424 vpxor %xmm1,%xmm7,%xmm7 4425 4426 vpsrld $25,%xmm8,%xmm1 4427 vpxor %xmm2,%xmm7,%xmm7 4428 4429 vpslld $7,%xmm8,%xmm2 4430 vpandn %xmm10,%xmm8,%xmm0 4431 vpand %xmm9,%xmm8,%xmm3 4432 4433 vpxor %xmm1,%xmm7,%xmm7 4434 4435 vpsrld $2,%xmm12,%xmm11 4436 vpxor %xmm2,%xmm7,%xmm7 4437 4438 vpslld $30,%xmm12,%xmm1 4439 vpxor %xmm3,%xmm0,%xmm0 4440 vpxor %xmm12,%xmm13,%xmm3 4441 4442 vpxor %xmm1,%xmm11,%xmm11 4443 vpaddd %xmm7,%xmm5,%xmm5 4444 4445 vpsrld $13,%xmm12,%xmm1 4446 4447 vpslld $19,%xmm12,%xmm2 4448 vpaddd %xmm0,%xmm5,%xmm5 4449 vpand %xmm3,%xmm4,%xmm4 4450 4451 vpxor %xmm1,%xmm11,%xmm7 4452 4453 vpsrld $22,%xmm12,%xmm1 4454 vpxor %xmm2,%xmm7,%xmm7 4455 4456 vpslld $10,%xmm12,%xmm2 4457 vpxor %xmm4,%xmm13,%xmm11 4458 vpaddd %xmm5,%xmm15,%xmm15 4459 4460 vpxor %xmm1,%xmm7,%xmm7 4461 vpxor %xmm2,%xmm7,%xmm7 4462 4463 vpaddd %xmm5,%xmm11,%xmm11 4464 vpaddd %xmm7,%xmm11,%xmm11 4465 vmovdqu 96-128(%rax),%xmm5 4466 vpaddd 224-128(%rax),%xmm6,%xmm6 4467 4468 vpsrld $3,%xmm5,%xmm7 4469 vpsrld $7,%xmm5,%xmm1 4470 vpslld $25,%xmm5,%xmm2 4471 vpxor %xmm1,%xmm7,%xmm7 4472 vpsrld $18,%xmm5,%xmm1 4473 vpxor %xmm2,%xmm7,%xmm7 4474 vpslld $14,%xmm5,%xmm2 4475 vmovdqu 48-128(%rax),%xmm0 4476 vpsrld $10,%xmm0,%xmm4 4477 4478 vpxor %xmm1,%xmm7,%xmm7 4479 vpsrld $17,%xmm0,%xmm1 4480 vpxor %xmm2,%xmm7,%xmm7 4481 vpslld $15,%xmm0,%xmm2 4482 vpaddd %xmm7,%xmm6,%xmm6 4483 vpxor %xmm1,%xmm4,%xmm7 4484 vpsrld $19,%xmm0,%xmm1 4485 vpxor %xmm2,%xmm7,%xmm7 4486 vpslld $13,%xmm0,%xmm2 4487 vpxor %xmm1,%xmm7,%xmm7 4488 vpxor %xmm2,%xmm7,%xmm7 4489 vpaddd %xmm7,%xmm6,%xmm6 4490 vpsrld $6,%xmm15,%xmm7 4491 vpslld $26,%xmm15,%xmm2 4492 vmovdqu %xmm6,80-128(%rax) 4493 vpaddd %xmm10,%xmm6,%xmm6 4494 4495 vpsrld $11,%xmm15,%xmm1 4496 vpxor %xmm2,%xmm7,%xmm7 4497 vpslld $21,%xmm15,%xmm2 4498 vpaddd 32(%rbp),%xmm6,%xmm6 4499 vpxor %xmm1,%xmm7,%xmm7 4500 4501 vpsrld $25,%xmm15,%xmm1 4502 vpxor %xmm2,%xmm7,%xmm7 4503 4504 vpslld $7,%xmm15,%xmm2 4505 vpandn %xmm9,%xmm15,%xmm0 4506 vpand %xmm8,%xmm15,%xmm4 4507 4508 vpxor %xmm1,%xmm7,%xmm7 4509 4510 vpsrld $2,%xmm11,%xmm10 4511 vpxor %xmm2,%xmm7,%xmm7 4512 4513 vpslld $30,%xmm11,%xmm1 4514 vpxor %xmm4,%xmm0,%xmm0 4515 vpxor %xmm11,%xmm12,%xmm4 4516 4517 vpxor %xmm1,%xmm10,%xmm10 4518 vpaddd %xmm7,%xmm6,%xmm6 4519 4520 vpsrld $13,%xmm11,%xmm1 4521 4522 vpslld $19,%xmm11,%xmm2 4523 vpaddd %xmm0,%xmm6,%xmm6 4524 vpand %xmm4,%xmm3,%xmm3 4525 4526 vpxor %xmm1,%xmm10,%xmm7 4527 4528 vpsrld $22,%xmm11,%xmm1 4529 vpxor %xmm2,%xmm7,%xmm7 4530 4531 vpslld $10,%xmm11,%xmm2 4532 vpxor %xmm3,%xmm12,%xmm10 4533 vpaddd %xmm6,%xmm14,%xmm14 4534 4535 vpxor %xmm1,%xmm7,%xmm7 4536 vpxor %xmm2,%xmm7,%xmm7 4537 4538 vpaddd %xmm6,%xmm10,%xmm10 4539 vpaddd %xmm7,%xmm10,%xmm10 4540 vmovdqu 112-128(%rax),%xmm6 4541 vpaddd 240-128(%rax),%xmm5,%xmm5 4542 4543 vpsrld $3,%xmm6,%xmm7 4544 vpsrld $7,%xmm6,%xmm1 4545 vpslld $25,%xmm6,%xmm2 4546 vpxor %xmm1,%xmm7,%xmm7 4547 vpsrld $18,%xmm6,%xmm1 4548 vpxor %xmm2,%xmm7,%xmm7 4549 vpslld $14,%xmm6,%xmm2 4550 vmovdqu 64-128(%rax),%xmm0 4551 vpsrld $10,%xmm0,%xmm3 4552 4553 vpxor %xmm1,%xmm7,%xmm7 4554 vpsrld $17,%xmm0,%xmm1 4555 vpxor %xmm2,%xmm7,%xmm7 4556 vpslld $15,%xmm0,%xmm2 4557 vpaddd %xmm7,%xmm5,%xmm5 4558 vpxor %xmm1,%xmm3,%xmm7 4559 vpsrld $19,%xmm0,%xmm1 4560 vpxor %xmm2,%xmm7,%xmm7 4561 vpslld $13,%xmm0,%xmm2 4562 vpxor %xmm1,%xmm7,%xmm7 4563 vpxor %xmm2,%xmm7,%xmm7 4564 vpaddd %xmm7,%xmm5,%xmm5 4565 vpsrld $6,%xmm14,%xmm7 4566 vpslld $26,%xmm14,%xmm2 4567 vmovdqu %xmm5,96-128(%rax) 4568 vpaddd %xmm9,%xmm5,%xmm5 4569 4570 vpsrld $11,%xmm14,%xmm1 4571 vpxor %xmm2,%xmm7,%xmm7 4572 vpslld $21,%xmm14,%xmm2 4573 vpaddd 64(%rbp),%xmm5,%xmm5 4574 vpxor %xmm1,%xmm7,%xmm7 4575 4576 vpsrld $25,%xmm14,%xmm1 4577 vpxor %xmm2,%xmm7,%xmm7 4578 4579 vpslld $7,%xmm14,%xmm2 4580 vpandn %xmm8,%xmm14,%xmm0 4581 vpand %xmm15,%xmm14,%xmm3 4582 4583 vpxor %xmm1,%xmm7,%xmm7 4584 4585 vpsrld $2,%xmm10,%xmm9 4586 vpxor %xmm2,%xmm7,%xmm7 4587 4588 vpslld $30,%xmm10,%xmm1 4589 vpxor %xmm3,%xmm0,%xmm0 4590 vpxor %xmm10,%xmm11,%xmm3 4591 4592 vpxor %xmm1,%xmm9,%xmm9 4593 vpaddd %xmm7,%xmm5,%xmm5 4594 4595 vpsrld $13,%xmm10,%xmm1 4596 4597 vpslld $19,%xmm10,%xmm2 4598 vpaddd %xmm0,%xmm5,%xmm5 4599 vpand %xmm3,%xmm4,%xmm4 4600 4601 vpxor %xmm1,%xmm9,%xmm7 4602 4603 vpsrld $22,%xmm10,%xmm1 4604 vpxor %xmm2,%xmm7,%xmm7 4605 4606 vpslld $10,%xmm10,%xmm2 4607 vpxor %xmm4,%xmm11,%xmm9 4608 vpaddd %xmm5,%xmm13,%xmm13 4609 4610 vpxor %xmm1,%xmm7,%xmm7 4611 vpxor %xmm2,%xmm7,%xmm7 4612 4613 vpaddd %xmm5,%xmm9,%xmm9 4614 vpaddd %xmm7,%xmm9,%xmm9 4615 vmovdqu 128-128(%rax),%xmm5 4616 vpaddd 0-128(%rax),%xmm6,%xmm6 4617 4618 vpsrld $3,%xmm5,%xmm7 4619 vpsrld $7,%xmm5,%xmm1 4620 vpslld $25,%xmm5,%xmm2 4621 vpxor %xmm1,%xmm7,%xmm7 4622 vpsrld $18,%xmm5,%xmm1 4623 vpxor %xmm2,%xmm7,%xmm7 4624 vpslld $14,%xmm5,%xmm2 4625 vmovdqu 80-128(%rax),%xmm0 4626 vpsrld $10,%xmm0,%xmm4 4627 4628 vpxor %xmm1,%xmm7,%xmm7 4629 vpsrld $17,%xmm0,%xmm1 4630 vpxor %xmm2,%xmm7,%xmm7 4631 vpslld $15,%xmm0,%xmm2 4632 vpaddd %xmm7,%xmm6,%xmm6 4633 vpxor %xmm1,%xmm4,%xmm7 4634 vpsrld $19,%xmm0,%xmm1 4635 vpxor %xmm2,%xmm7,%xmm7 4636 vpslld $13,%xmm0,%xmm2 4637 vpxor %xmm1,%xmm7,%xmm7 4638 vpxor %xmm2,%xmm7,%xmm7 4639 vpaddd %xmm7,%xmm6,%xmm6 4640 vpsrld $6,%xmm13,%xmm7 4641 vpslld $26,%xmm13,%xmm2 4642 vmovdqu %xmm6,112-128(%rax) 4643 vpaddd %xmm8,%xmm6,%xmm6 4644 4645 vpsrld $11,%xmm13,%xmm1 4646 vpxor %xmm2,%xmm7,%xmm7 4647 vpslld $21,%xmm13,%xmm2 4648 vpaddd 96(%rbp),%xmm6,%xmm6 4649 vpxor %xmm1,%xmm7,%xmm7 4650 4651 vpsrld $25,%xmm13,%xmm1 4652 vpxor %xmm2,%xmm7,%xmm7 4653 4654 vpslld $7,%xmm13,%xmm2 4655 vpandn %xmm15,%xmm13,%xmm0 4656 vpand %xmm14,%xmm13,%xmm4 4657 4658 vpxor %xmm1,%xmm7,%xmm7 4659 4660 vpsrld $2,%xmm9,%xmm8 4661 vpxor %xmm2,%xmm7,%xmm7 4662 4663 vpslld $30,%xmm9,%xmm1 4664 vpxor %xmm4,%xmm0,%xmm0 4665 vpxor %xmm9,%xmm10,%xmm4 4666 4667 vpxor %xmm1,%xmm8,%xmm8 4668 vpaddd %xmm7,%xmm6,%xmm6 4669 4670 vpsrld $13,%xmm9,%xmm1 4671 4672 vpslld $19,%xmm9,%xmm2 4673 vpaddd %xmm0,%xmm6,%xmm6 4674 vpand %xmm4,%xmm3,%xmm3 4675 4676 vpxor %xmm1,%xmm8,%xmm7 4677 4678 vpsrld $22,%xmm9,%xmm1 4679 vpxor %xmm2,%xmm7,%xmm7 4680 4681 vpslld $10,%xmm9,%xmm2 4682 vpxor %xmm3,%xmm10,%xmm8 4683 vpaddd %xmm6,%xmm12,%xmm12 4684 4685 vpxor %xmm1,%xmm7,%xmm7 4686 vpxor %xmm2,%xmm7,%xmm7 4687 4688 vpaddd %xmm6,%xmm8,%xmm8 4689 vpaddd %xmm7,%xmm8,%xmm8 4690 addq $256,%rbp 4691 vmovdqu 144-128(%rax),%xmm6 4692 vpaddd 16-128(%rax),%xmm5,%xmm5 4693 4694 vpsrld $3,%xmm6,%xmm7 4695 vpsrld $7,%xmm6,%xmm1 4696 vpslld $25,%xmm6,%xmm2 4697 vpxor %xmm1,%xmm7,%xmm7 4698 vpsrld $18,%xmm6,%xmm1 4699 vpxor %xmm2,%xmm7,%xmm7 4700 vpslld $14,%xmm6,%xmm2 4701 vmovdqu 96-128(%rax),%xmm0 4702 vpsrld $10,%xmm0,%xmm3 4703 4704 vpxor %xmm1,%xmm7,%xmm7 4705 vpsrld $17,%xmm0,%xmm1 4706 vpxor %xmm2,%xmm7,%xmm7 4707 vpslld $15,%xmm0,%xmm2 4708 vpaddd %xmm7,%xmm5,%xmm5 4709 vpxor %xmm1,%xmm3,%xmm7 4710 vpsrld $19,%xmm0,%xmm1 4711 vpxor %xmm2,%xmm7,%xmm7 4712 vpslld $13,%xmm0,%xmm2 4713 vpxor %xmm1,%xmm7,%xmm7 4714 vpxor %xmm2,%xmm7,%xmm7 4715 vpaddd %xmm7,%xmm5,%xmm5 4716 vpsrld $6,%xmm12,%xmm7 4717 vpslld $26,%xmm12,%xmm2 4718 vmovdqu %xmm5,128-128(%rax) 4719 vpaddd %xmm15,%xmm5,%xmm5 4720 4721 vpsrld $11,%xmm12,%xmm1 4722 vpxor %xmm2,%xmm7,%xmm7 4723 vpslld $21,%xmm12,%xmm2 4724 vpaddd -128(%rbp),%xmm5,%xmm5 4725 vpxor %xmm1,%xmm7,%xmm7 4726 4727 vpsrld $25,%xmm12,%xmm1 4728 vpxor %xmm2,%xmm7,%xmm7 4729 4730 vpslld $7,%xmm12,%xmm2 4731 vpandn %xmm14,%xmm12,%xmm0 4732 vpand %xmm13,%xmm12,%xmm3 4733 4734 vpxor %xmm1,%xmm7,%xmm7 4735 4736 vpsrld $2,%xmm8,%xmm15 4737 vpxor %xmm2,%xmm7,%xmm7 4738 4739 vpslld $30,%xmm8,%xmm1 4740 vpxor %xmm3,%xmm0,%xmm0 4741 vpxor %xmm8,%xmm9,%xmm3 4742 4743 vpxor %xmm1,%xmm15,%xmm15 4744 vpaddd %xmm7,%xmm5,%xmm5 4745 4746 vpsrld $13,%xmm8,%xmm1 4747 4748 vpslld $19,%xmm8,%xmm2 4749 vpaddd %xmm0,%xmm5,%xmm5 4750 vpand %xmm3,%xmm4,%xmm4 4751 4752 vpxor %xmm1,%xmm15,%xmm7 4753 4754 vpsrld $22,%xmm8,%xmm1 4755 vpxor %xmm2,%xmm7,%xmm7 4756 4757 vpslld $10,%xmm8,%xmm2 4758 vpxor %xmm4,%xmm9,%xmm15 4759 vpaddd %xmm5,%xmm11,%xmm11 4760 4761 vpxor %xmm1,%xmm7,%xmm7 4762 vpxor %xmm2,%xmm7,%xmm7 4763 4764 vpaddd %xmm5,%xmm15,%xmm15 4765 vpaddd %xmm7,%xmm15,%xmm15 4766 vmovdqu 160-128(%rax),%xmm5 4767 vpaddd 32-128(%rax),%xmm6,%xmm6 4768 4769 vpsrld $3,%xmm5,%xmm7 4770 vpsrld $7,%xmm5,%xmm1 4771 vpslld $25,%xmm5,%xmm2 4772 vpxor %xmm1,%xmm7,%xmm7 4773 vpsrld $18,%xmm5,%xmm1 4774 vpxor %xmm2,%xmm7,%xmm7 4775 vpslld $14,%xmm5,%xmm2 4776 vmovdqu 112-128(%rax),%xmm0 4777 vpsrld $10,%xmm0,%xmm4 4778 4779 vpxor %xmm1,%xmm7,%xmm7 4780 vpsrld $17,%xmm0,%xmm1 4781 vpxor %xmm2,%xmm7,%xmm7 4782 vpslld $15,%xmm0,%xmm2 4783 vpaddd %xmm7,%xmm6,%xmm6 4784 vpxor %xmm1,%xmm4,%xmm7 4785 vpsrld $19,%xmm0,%xmm1 4786 vpxor %xmm2,%xmm7,%xmm7 4787 vpslld $13,%xmm0,%xmm2 4788 vpxor %xmm1,%xmm7,%xmm7 4789 vpxor %xmm2,%xmm7,%xmm7 4790 vpaddd %xmm7,%xmm6,%xmm6 4791 vpsrld $6,%xmm11,%xmm7 4792 vpslld $26,%xmm11,%xmm2 4793 vmovdqu %xmm6,144-128(%rax) 4794 vpaddd %xmm14,%xmm6,%xmm6 4795 4796 vpsrld $11,%xmm11,%xmm1 4797 vpxor %xmm2,%xmm7,%xmm7 4798 vpslld $21,%xmm11,%xmm2 4799 vpaddd -96(%rbp),%xmm6,%xmm6 4800 vpxor %xmm1,%xmm7,%xmm7 4801 4802 vpsrld $25,%xmm11,%xmm1 4803 vpxor %xmm2,%xmm7,%xmm7 4804 4805 vpslld $7,%xmm11,%xmm2 4806 vpandn %xmm13,%xmm11,%xmm0 4807 vpand %xmm12,%xmm11,%xmm4 4808 4809 vpxor %xmm1,%xmm7,%xmm7 4810 4811 vpsrld $2,%xmm15,%xmm14 4812 vpxor %xmm2,%xmm7,%xmm7 4813 4814 vpslld $30,%xmm15,%xmm1 4815 vpxor %xmm4,%xmm0,%xmm0 4816 vpxor %xmm15,%xmm8,%xmm4 4817 4818 vpxor %xmm1,%xmm14,%xmm14 4819 vpaddd %xmm7,%xmm6,%xmm6 4820 4821 vpsrld $13,%xmm15,%xmm1 4822 4823 vpslld $19,%xmm15,%xmm2 4824 vpaddd %xmm0,%xmm6,%xmm6 4825 vpand %xmm4,%xmm3,%xmm3 4826 4827 vpxor %xmm1,%xmm14,%xmm7 4828 4829 vpsrld $22,%xmm15,%xmm1 4830 vpxor %xmm2,%xmm7,%xmm7 4831 4832 vpslld $10,%xmm15,%xmm2 4833 vpxor %xmm3,%xmm8,%xmm14 4834 vpaddd %xmm6,%xmm10,%xmm10 4835 4836 vpxor %xmm1,%xmm7,%xmm7 4837 vpxor %xmm2,%xmm7,%xmm7 4838 4839 vpaddd %xmm6,%xmm14,%xmm14 4840 vpaddd %xmm7,%xmm14,%xmm14 4841 vmovdqu 176-128(%rax),%xmm6 4842 vpaddd 48-128(%rax),%xmm5,%xmm5 4843 4844 vpsrld $3,%xmm6,%xmm7 4845 vpsrld $7,%xmm6,%xmm1 4846 vpslld $25,%xmm6,%xmm2 4847 vpxor %xmm1,%xmm7,%xmm7 4848 vpsrld $18,%xmm6,%xmm1 4849 vpxor %xmm2,%xmm7,%xmm7 4850 vpslld $14,%xmm6,%xmm2 4851 vmovdqu 128-128(%rax),%xmm0 4852 vpsrld $10,%xmm0,%xmm3 4853 4854 vpxor %xmm1,%xmm7,%xmm7 4855 vpsrld $17,%xmm0,%xmm1 4856 vpxor %xmm2,%xmm7,%xmm7 4857 vpslld $15,%xmm0,%xmm2 4858 vpaddd %xmm7,%xmm5,%xmm5 4859 vpxor %xmm1,%xmm3,%xmm7 4860 vpsrld $19,%xmm0,%xmm1 4861 vpxor %xmm2,%xmm7,%xmm7 4862 vpslld $13,%xmm0,%xmm2 4863 vpxor %xmm1,%xmm7,%xmm7 4864 vpxor %xmm2,%xmm7,%xmm7 4865 vpaddd %xmm7,%xmm5,%xmm5 4866 vpsrld $6,%xmm10,%xmm7 4867 vpslld $26,%xmm10,%xmm2 4868 vmovdqu %xmm5,160-128(%rax) 4869 vpaddd %xmm13,%xmm5,%xmm5 4870 4871 vpsrld $11,%xmm10,%xmm1 4872 vpxor %xmm2,%xmm7,%xmm7 4873 vpslld $21,%xmm10,%xmm2 4874 vpaddd -64(%rbp),%xmm5,%xmm5 4875 vpxor %xmm1,%xmm7,%xmm7 4876 4877 vpsrld $25,%xmm10,%xmm1 4878 vpxor %xmm2,%xmm7,%xmm7 4879 4880 vpslld $7,%xmm10,%xmm2 4881 vpandn %xmm12,%xmm10,%xmm0 4882 vpand %xmm11,%xmm10,%xmm3 4883 4884 vpxor %xmm1,%xmm7,%xmm7 4885 4886 vpsrld $2,%xmm14,%xmm13 4887 vpxor %xmm2,%xmm7,%xmm7 4888 4889 vpslld $30,%xmm14,%xmm1 4890 vpxor %xmm3,%xmm0,%xmm0 4891 vpxor %xmm14,%xmm15,%xmm3 4892 4893 vpxor %xmm1,%xmm13,%xmm13 4894 vpaddd %xmm7,%xmm5,%xmm5 4895 4896 vpsrld $13,%xmm14,%xmm1 4897 4898 vpslld $19,%xmm14,%xmm2 4899 vpaddd %xmm0,%xmm5,%xmm5 4900 vpand %xmm3,%xmm4,%xmm4 4901 4902 vpxor %xmm1,%xmm13,%xmm7 4903 4904 vpsrld $22,%xmm14,%xmm1 4905 vpxor %xmm2,%xmm7,%xmm7 4906 4907 vpslld $10,%xmm14,%xmm2 4908 vpxor %xmm4,%xmm15,%xmm13 4909 vpaddd %xmm5,%xmm9,%xmm9 4910 4911 vpxor %xmm1,%xmm7,%xmm7 4912 vpxor %xmm2,%xmm7,%xmm7 4913 4914 vpaddd %xmm5,%xmm13,%xmm13 4915 vpaddd %xmm7,%xmm13,%xmm13 4916 vmovdqu 192-128(%rax),%xmm5 4917 vpaddd 64-128(%rax),%xmm6,%xmm6 4918 4919 vpsrld $3,%xmm5,%xmm7 4920 vpsrld $7,%xmm5,%xmm1 4921 vpslld $25,%xmm5,%xmm2 4922 vpxor %xmm1,%xmm7,%xmm7 4923 vpsrld $18,%xmm5,%xmm1 4924 vpxor %xmm2,%xmm7,%xmm7 4925 vpslld $14,%xmm5,%xmm2 4926 vmovdqu 144-128(%rax),%xmm0 4927 vpsrld $10,%xmm0,%xmm4 4928 4929 vpxor %xmm1,%xmm7,%xmm7 4930 vpsrld $17,%xmm0,%xmm1 4931 vpxor %xmm2,%xmm7,%xmm7 4932 vpslld $15,%xmm0,%xmm2 4933 vpaddd %xmm7,%xmm6,%xmm6 4934 vpxor %xmm1,%xmm4,%xmm7 4935 vpsrld $19,%xmm0,%xmm1 4936 vpxor %xmm2,%xmm7,%xmm7 4937 vpslld $13,%xmm0,%xmm2 4938 vpxor %xmm1,%xmm7,%xmm7 4939 vpxor %xmm2,%xmm7,%xmm7 4940 vpaddd %xmm7,%xmm6,%xmm6 4941 vpsrld $6,%xmm9,%xmm7 4942 vpslld $26,%xmm9,%xmm2 4943 vmovdqu %xmm6,176-128(%rax) 4944 vpaddd %xmm12,%xmm6,%xmm6 4945 4946 vpsrld $11,%xmm9,%xmm1 4947 vpxor %xmm2,%xmm7,%xmm7 4948 vpslld $21,%xmm9,%xmm2 4949 vpaddd -32(%rbp),%xmm6,%xmm6 4950 vpxor %xmm1,%xmm7,%xmm7 4951 4952 vpsrld $25,%xmm9,%xmm1 4953 vpxor %xmm2,%xmm7,%xmm7 4954 4955 vpslld $7,%xmm9,%xmm2 4956 vpandn %xmm11,%xmm9,%xmm0 4957 vpand %xmm10,%xmm9,%xmm4 4958 4959 vpxor %xmm1,%xmm7,%xmm7 4960 4961 vpsrld $2,%xmm13,%xmm12 4962 vpxor %xmm2,%xmm7,%xmm7 4963 4964 vpslld $30,%xmm13,%xmm1 4965 vpxor %xmm4,%xmm0,%xmm0 4966 vpxor %xmm13,%xmm14,%xmm4 4967 4968 vpxor %xmm1,%xmm12,%xmm12 4969 vpaddd %xmm7,%xmm6,%xmm6 4970 4971 vpsrld $13,%xmm13,%xmm1 4972 4973 vpslld $19,%xmm13,%xmm2 4974 vpaddd %xmm0,%xmm6,%xmm6 4975 vpand %xmm4,%xmm3,%xmm3 4976 4977 vpxor %xmm1,%xmm12,%xmm7 4978 4979 vpsrld $22,%xmm13,%xmm1 4980 vpxor %xmm2,%xmm7,%xmm7 4981 4982 vpslld $10,%xmm13,%xmm2 4983 vpxor %xmm3,%xmm14,%xmm12 4984 vpaddd %xmm6,%xmm8,%xmm8 4985 4986 vpxor %xmm1,%xmm7,%xmm7 4987 vpxor %xmm2,%xmm7,%xmm7 4988 4989 vpaddd %xmm6,%xmm12,%xmm12 4990 vpaddd %xmm7,%xmm12,%xmm12 4991 vmovdqu 208-128(%rax),%xmm6 4992 vpaddd 80-128(%rax),%xmm5,%xmm5 4993 4994 vpsrld $3,%xmm6,%xmm7 4995 vpsrld $7,%xmm6,%xmm1 4996 vpslld $25,%xmm6,%xmm2 4997 vpxor %xmm1,%xmm7,%xmm7 4998 vpsrld $18,%xmm6,%xmm1 4999 vpxor %xmm2,%xmm7,%xmm7 5000 vpslld $14,%xmm6,%xmm2 5001 vmovdqu 160-128(%rax),%xmm0 5002 vpsrld $10,%xmm0,%xmm3 5003 5004 vpxor %xmm1,%xmm7,%xmm7 5005 vpsrld $17,%xmm0,%xmm1 5006 vpxor %xmm2,%xmm7,%xmm7 5007 vpslld $15,%xmm0,%xmm2 5008 vpaddd %xmm7,%xmm5,%xmm5 5009 vpxor %xmm1,%xmm3,%xmm7 5010 vpsrld $19,%xmm0,%xmm1 5011 vpxor %xmm2,%xmm7,%xmm7 5012 vpslld $13,%xmm0,%xmm2 5013 vpxor %xmm1,%xmm7,%xmm7 5014 vpxor %xmm2,%xmm7,%xmm7 5015 vpaddd %xmm7,%xmm5,%xmm5 5016 vpsrld $6,%xmm8,%xmm7 5017 vpslld $26,%xmm8,%xmm2 5018 vmovdqu %xmm5,192-128(%rax) 5019 vpaddd %xmm11,%xmm5,%xmm5 5020 5021 vpsrld $11,%xmm8,%xmm1 5022 vpxor %xmm2,%xmm7,%xmm7 5023 vpslld $21,%xmm8,%xmm2 5024 vpaddd 0(%rbp),%xmm5,%xmm5 5025 vpxor %xmm1,%xmm7,%xmm7 5026 5027 vpsrld $25,%xmm8,%xmm1 5028 vpxor %xmm2,%xmm7,%xmm7 5029 5030 vpslld $7,%xmm8,%xmm2 5031 vpandn %xmm10,%xmm8,%xmm0 5032 vpand %xmm9,%xmm8,%xmm3 5033 5034 vpxor %xmm1,%xmm7,%xmm7 5035 5036 vpsrld $2,%xmm12,%xmm11 5037 vpxor %xmm2,%xmm7,%xmm7 5038 5039 vpslld $30,%xmm12,%xmm1 5040 vpxor %xmm3,%xmm0,%xmm0 5041 vpxor %xmm12,%xmm13,%xmm3 5042 5043 vpxor %xmm1,%xmm11,%xmm11 5044 vpaddd %xmm7,%xmm5,%xmm5 5045 5046 vpsrld $13,%xmm12,%xmm1 5047 5048 vpslld $19,%xmm12,%xmm2 5049 vpaddd %xmm0,%xmm5,%xmm5 5050 vpand %xmm3,%xmm4,%xmm4 5051 5052 vpxor %xmm1,%xmm11,%xmm7 5053 5054 vpsrld $22,%xmm12,%xmm1 5055 vpxor %xmm2,%xmm7,%xmm7 5056 5057 vpslld $10,%xmm12,%xmm2 5058 vpxor %xmm4,%xmm13,%xmm11 5059 vpaddd %xmm5,%xmm15,%xmm15 5060 5061 vpxor %xmm1,%xmm7,%xmm7 5062 vpxor %xmm2,%xmm7,%xmm7 5063 5064 vpaddd %xmm5,%xmm11,%xmm11 5065 vpaddd %xmm7,%xmm11,%xmm11 5066 vmovdqu 224-128(%rax),%xmm5 5067 vpaddd 96-128(%rax),%xmm6,%xmm6 5068 5069 vpsrld $3,%xmm5,%xmm7 5070 vpsrld $7,%xmm5,%xmm1 5071 vpslld $25,%xmm5,%xmm2 5072 vpxor %xmm1,%xmm7,%xmm7 5073 vpsrld $18,%xmm5,%xmm1 5074 vpxor %xmm2,%xmm7,%xmm7 5075 vpslld $14,%xmm5,%xmm2 5076 vmovdqu 176-128(%rax),%xmm0 5077 vpsrld $10,%xmm0,%xmm4 5078 5079 vpxor %xmm1,%xmm7,%xmm7 5080 vpsrld $17,%xmm0,%xmm1 5081 vpxor %xmm2,%xmm7,%xmm7 5082 vpslld $15,%xmm0,%xmm2 5083 vpaddd %xmm7,%xmm6,%xmm6 5084 vpxor %xmm1,%xmm4,%xmm7 5085 vpsrld $19,%xmm0,%xmm1 5086 vpxor %xmm2,%xmm7,%xmm7 5087 vpslld $13,%xmm0,%xmm2 5088 vpxor %xmm1,%xmm7,%xmm7 5089 vpxor %xmm2,%xmm7,%xmm7 5090 vpaddd %xmm7,%xmm6,%xmm6 5091 vpsrld $6,%xmm15,%xmm7 5092 vpslld $26,%xmm15,%xmm2 5093 vmovdqu %xmm6,208-128(%rax) 5094 vpaddd %xmm10,%xmm6,%xmm6 5095 5096 vpsrld $11,%xmm15,%xmm1 5097 vpxor %xmm2,%xmm7,%xmm7 5098 vpslld $21,%xmm15,%xmm2 5099 vpaddd 32(%rbp),%xmm6,%xmm6 5100 vpxor %xmm1,%xmm7,%xmm7 5101 5102 vpsrld $25,%xmm15,%xmm1 5103 vpxor %xmm2,%xmm7,%xmm7 5104 5105 vpslld $7,%xmm15,%xmm2 5106 vpandn %xmm9,%xmm15,%xmm0 5107 vpand %xmm8,%xmm15,%xmm4 5108 5109 vpxor %xmm1,%xmm7,%xmm7 5110 5111 vpsrld $2,%xmm11,%xmm10 5112 vpxor %xmm2,%xmm7,%xmm7 5113 5114 vpslld $30,%xmm11,%xmm1 5115 vpxor %xmm4,%xmm0,%xmm0 5116 vpxor %xmm11,%xmm12,%xmm4 5117 5118 vpxor %xmm1,%xmm10,%xmm10 5119 vpaddd %xmm7,%xmm6,%xmm6 5120 5121 vpsrld $13,%xmm11,%xmm1 5122 5123 vpslld $19,%xmm11,%xmm2 5124 vpaddd %xmm0,%xmm6,%xmm6 5125 vpand %xmm4,%xmm3,%xmm3 5126 5127 vpxor %xmm1,%xmm10,%xmm7 5128 5129 vpsrld $22,%xmm11,%xmm1 5130 vpxor %xmm2,%xmm7,%xmm7 5131 5132 vpslld $10,%xmm11,%xmm2 5133 vpxor %xmm3,%xmm12,%xmm10 5134 vpaddd %xmm6,%xmm14,%xmm14 5135 5136 vpxor %xmm1,%xmm7,%xmm7 5137 vpxor %xmm2,%xmm7,%xmm7 5138 5139 vpaddd %xmm6,%xmm10,%xmm10 5140 vpaddd %xmm7,%xmm10,%xmm10 5141 vmovdqu 240-128(%rax),%xmm6 5142 vpaddd 112-128(%rax),%xmm5,%xmm5 5143 5144 vpsrld $3,%xmm6,%xmm7 5145 vpsrld $7,%xmm6,%xmm1 5146 vpslld $25,%xmm6,%xmm2 5147 vpxor %xmm1,%xmm7,%xmm7 5148 vpsrld $18,%xmm6,%xmm1 5149 vpxor %xmm2,%xmm7,%xmm7 5150 vpslld $14,%xmm6,%xmm2 5151 vmovdqu 192-128(%rax),%xmm0 5152 vpsrld $10,%xmm0,%xmm3 5153 5154 vpxor %xmm1,%xmm7,%xmm7 5155 vpsrld $17,%xmm0,%xmm1 5156 vpxor %xmm2,%xmm7,%xmm7 5157 vpslld $15,%xmm0,%xmm2 5158 vpaddd %xmm7,%xmm5,%xmm5 5159 vpxor %xmm1,%xmm3,%xmm7 5160 vpsrld $19,%xmm0,%xmm1 5161 vpxor %xmm2,%xmm7,%xmm7 5162 vpslld $13,%xmm0,%xmm2 5163 vpxor %xmm1,%xmm7,%xmm7 5164 vpxor %xmm2,%xmm7,%xmm7 5165 vpaddd %xmm7,%xmm5,%xmm5 5166 vpsrld $6,%xmm14,%xmm7 5167 vpslld $26,%xmm14,%xmm2 5168 vmovdqu %xmm5,224-128(%rax) 5169 vpaddd %xmm9,%xmm5,%xmm5 5170 5171 vpsrld $11,%xmm14,%xmm1 5172 vpxor %xmm2,%xmm7,%xmm7 5173 vpslld $21,%xmm14,%xmm2 5174 vpaddd 64(%rbp),%xmm5,%xmm5 5175 vpxor %xmm1,%xmm7,%xmm7 5176 5177 vpsrld $25,%xmm14,%xmm1 5178 vpxor %xmm2,%xmm7,%xmm7 5179 5180 vpslld $7,%xmm14,%xmm2 5181 vpandn %xmm8,%xmm14,%xmm0 5182 vpand %xmm15,%xmm14,%xmm3 5183 5184 vpxor %xmm1,%xmm7,%xmm7 5185 5186 vpsrld $2,%xmm10,%xmm9 5187 vpxor %xmm2,%xmm7,%xmm7 5188 5189 vpslld $30,%xmm10,%xmm1 5190 vpxor %xmm3,%xmm0,%xmm0 5191 vpxor %xmm10,%xmm11,%xmm3 5192 5193 vpxor %xmm1,%xmm9,%xmm9 5194 vpaddd %xmm7,%xmm5,%xmm5 5195 5196 vpsrld $13,%xmm10,%xmm1 5197 5198 vpslld $19,%xmm10,%xmm2 5199 vpaddd %xmm0,%xmm5,%xmm5 5200 vpand %xmm3,%xmm4,%xmm4 5201 5202 vpxor %xmm1,%xmm9,%xmm7 5203 5204 vpsrld $22,%xmm10,%xmm1 5205 vpxor %xmm2,%xmm7,%xmm7 5206 5207 vpslld $10,%xmm10,%xmm2 5208 vpxor %xmm4,%xmm11,%xmm9 5209 vpaddd %xmm5,%xmm13,%xmm13 5210 5211 vpxor %xmm1,%xmm7,%xmm7 5212 vpxor %xmm2,%xmm7,%xmm7 5213 5214 vpaddd %xmm5,%xmm9,%xmm9 5215 vpaddd %xmm7,%xmm9,%xmm9 5216 vmovdqu 0-128(%rax),%xmm5 5217 vpaddd 128-128(%rax),%xmm6,%xmm6 5218 5219 vpsrld $3,%xmm5,%xmm7 5220 vpsrld $7,%xmm5,%xmm1 5221 vpslld $25,%xmm5,%xmm2 5222 vpxor %xmm1,%xmm7,%xmm7 5223 vpsrld $18,%xmm5,%xmm1 5224 vpxor %xmm2,%xmm7,%xmm7 5225 vpslld $14,%xmm5,%xmm2 5226 vmovdqu 208-128(%rax),%xmm0 5227 vpsrld $10,%xmm0,%xmm4 5228 5229 vpxor %xmm1,%xmm7,%xmm7 5230 vpsrld $17,%xmm0,%xmm1 5231 vpxor %xmm2,%xmm7,%xmm7 5232 vpslld $15,%xmm0,%xmm2 5233 vpaddd %xmm7,%xmm6,%xmm6 5234 vpxor %xmm1,%xmm4,%xmm7 5235 vpsrld $19,%xmm0,%xmm1 5236 vpxor %xmm2,%xmm7,%xmm7 5237 vpslld $13,%xmm0,%xmm2 5238 vpxor %xmm1,%xmm7,%xmm7 5239 vpxor %xmm2,%xmm7,%xmm7 5240 vpaddd %xmm7,%xmm6,%xmm6 5241 vpsrld $6,%xmm13,%xmm7 5242 vpslld $26,%xmm13,%xmm2 5243 vmovdqu %xmm6,240-128(%rax) 5244 vpaddd %xmm8,%xmm6,%xmm6 5245 5246 vpsrld $11,%xmm13,%xmm1 5247 vpxor %xmm2,%xmm7,%xmm7 5248 vpslld $21,%xmm13,%xmm2 5249 vpaddd 96(%rbp),%xmm6,%xmm6 5250 vpxor %xmm1,%xmm7,%xmm7 5251 5252 vpsrld $25,%xmm13,%xmm1 5253 vpxor %xmm2,%xmm7,%xmm7 5254 5255 vpslld $7,%xmm13,%xmm2 5256 vpandn %xmm15,%xmm13,%xmm0 5257 vpand %xmm14,%xmm13,%xmm4 5258 5259 vpxor %xmm1,%xmm7,%xmm7 5260 5261 vpsrld $2,%xmm9,%xmm8 5262 vpxor %xmm2,%xmm7,%xmm7 5263 5264 vpslld $30,%xmm9,%xmm1 5265 vpxor %xmm4,%xmm0,%xmm0 5266 vpxor %xmm9,%xmm10,%xmm4 5267 5268 vpxor %xmm1,%xmm8,%xmm8 5269 vpaddd %xmm7,%xmm6,%xmm6 5270 5271 vpsrld $13,%xmm9,%xmm1 5272 5273 vpslld $19,%xmm9,%xmm2 5274 vpaddd %xmm0,%xmm6,%xmm6 5275 vpand %xmm4,%xmm3,%xmm3 5276 5277 vpxor %xmm1,%xmm8,%xmm7 5278 5279 vpsrld $22,%xmm9,%xmm1 5280 vpxor %xmm2,%xmm7,%xmm7 5281 5282 vpslld $10,%xmm9,%xmm2 5283 vpxor %xmm3,%xmm10,%xmm8 5284 vpaddd %xmm6,%xmm12,%xmm12 5285 5286 vpxor %xmm1,%xmm7,%xmm7 5287 vpxor %xmm2,%xmm7,%xmm7 5288 5289 vpaddd %xmm6,%xmm8,%xmm8 5290 vpaddd %xmm7,%xmm8,%xmm8 5291 addq $256,%rbp 5292 decl %ecx 5293 jnz .Loop_16_xx_avx 5294 5295 movl $1,%ecx 5296 leaq K256+128(%rip),%rbp 5297 cmpl 0(%rbx),%ecx 5298 cmovgeq %rbp,%r8 5299 cmpl 4(%rbx),%ecx 5300 cmovgeq %rbp,%r9 5301 cmpl 8(%rbx),%ecx 5302 cmovgeq %rbp,%r10 5303 cmpl 12(%rbx),%ecx 5304 cmovgeq %rbp,%r11 5305 vmovdqa (%rbx),%xmm7 5306 vpxor %xmm0,%xmm0,%xmm0 5307 vmovdqa %xmm7,%xmm6 5308 vpcmpgtd %xmm0,%xmm6,%xmm6 5309 vpaddd %xmm6,%xmm7,%xmm7 5310 5311 vmovdqu 0-128(%rdi),%xmm0 5312 vpand %xmm6,%xmm8,%xmm8 5313 vmovdqu 32-128(%rdi),%xmm1 5314 vpand %xmm6,%xmm9,%xmm9 5315 vmovdqu 64-128(%rdi),%xmm2 5316 vpand %xmm6,%xmm10,%xmm10 5317 vmovdqu 96-128(%rdi),%xmm5 5318 vpand %xmm6,%xmm11,%xmm11 5319 vpaddd %xmm0,%xmm8,%xmm8 5320 vmovdqu 128-128(%rdi),%xmm0 5321 vpand %xmm6,%xmm12,%xmm12 5322 vpaddd %xmm1,%xmm9,%xmm9 5323 vmovdqu 160-128(%rdi),%xmm1 5324 vpand %xmm6,%xmm13,%xmm13 5325 vpaddd %xmm2,%xmm10,%xmm10 5326 vmovdqu 192-128(%rdi),%xmm2 5327 vpand %xmm6,%xmm14,%xmm14 5328 vpaddd %xmm5,%xmm11,%xmm11 5329 vmovdqu 224-128(%rdi),%xmm5 5330 vpand %xmm6,%xmm15,%xmm15 5331 vpaddd %xmm0,%xmm12,%xmm12 5332 vpaddd %xmm1,%xmm13,%xmm13 5333 vmovdqu %xmm8,0-128(%rdi) 5334 vpaddd %xmm2,%xmm14,%xmm14 5335 vmovdqu %xmm9,32-128(%rdi) 5336 vpaddd %xmm5,%xmm15,%xmm15 5337 vmovdqu %xmm10,64-128(%rdi) 5338 vmovdqu %xmm11,96-128(%rdi) 5339 vmovdqu %xmm12,128-128(%rdi) 5340 vmovdqu %xmm13,160-128(%rdi) 5341 vmovdqu %xmm14,192-128(%rdi) 5342 vmovdqu %xmm15,224-128(%rdi) 5343 5344 vmovdqu %xmm7,(%rbx) 5345 vmovdqu .Lpbswap(%rip),%xmm6 5346 decl %edx 5347 jnz .Loop_avx 5348 5349 movl 280(%rsp),%edx 5350 leaq 16(%rdi),%rdi 5351 leaq 64(%rsi),%rsi 5352 decl %edx 5353 jnz .Loop_grande_avx 5354 5355.Ldone_avx: 5356 movq 272(%rsp),%rax 5357 vzeroupper 5358 movq -16(%rax),%rbp 5359 movq -8(%rax),%rbx 5360 leaq (%rax),%rsp 5361.Lepilogue_avx: 5362 .byte 0xf3,0xc3 5363.size sha256_multi_block_avx,.-sha256_multi_block_avx 5364.type sha256_multi_block_avx2,@function 5365.align 32 5366sha256_multi_block_avx2: 5367_avx2_shortcut: 5368 movq %rsp,%rax 5369 pushq %rbx 5370 pushq %rbp 5371 pushq %r12 5372 pushq %r13 5373 pushq %r14 5374 pushq %r15 5375 subq $576,%rsp 5376 andq $-256,%rsp 5377 movq %rax,544(%rsp) 5378.Lbody_avx2: 5379 leaq K256+128(%rip),%rbp 5380 leaq 128(%rdi),%rdi 5381 5382.Loop_grande_avx2: 5383 movl %edx,552(%rsp) 5384 xorl %edx,%edx 5385 leaq 512(%rsp),%rbx 5386 movq 0(%rsi),%r12 5387 movl 8(%rsi),%ecx 5388 cmpl %edx,%ecx 5389 cmovgl %ecx,%edx 5390 testl %ecx,%ecx 5391 movl %ecx,0(%rbx) 5392 cmovleq %rbp,%r12 5393 movq 16(%rsi),%r13 5394 movl 24(%rsi),%ecx 5395 cmpl %edx,%ecx 5396 cmovgl %ecx,%edx 5397 testl %ecx,%ecx 5398 movl %ecx,4(%rbx) 5399 cmovleq %rbp,%r13 5400 movq 32(%rsi),%r14 5401 movl 40(%rsi),%ecx 5402 cmpl %edx,%ecx 5403 cmovgl %ecx,%edx 5404 testl %ecx,%ecx 5405 movl %ecx,8(%rbx) 5406 cmovleq %rbp,%r14 5407 movq 48(%rsi),%r15 5408 movl 56(%rsi),%ecx 5409 cmpl %edx,%ecx 5410 cmovgl %ecx,%edx 5411 testl %ecx,%ecx 5412 movl %ecx,12(%rbx) 5413 cmovleq %rbp,%r15 5414 movq 64(%rsi),%r8 5415 movl 72(%rsi),%ecx 5416 cmpl %edx,%ecx 5417 cmovgl %ecx,%edx 5418 testl %ecx,%ecx 5419 movl %ecx,16(%rbx) 5420 cmovleq %rbp,%r8 5421 movq 80(%rsi),%r9 5422 movl 88(%rsi),%ecx 5423 cmpl %edx,%ecx 5424 cmovgl %ecx,%edx 5425 testl %ecx,%ecx 5426 movl %ecx,20(%rbx) 5427 cmovleq %rbp,%r9 5428 movq 96(%rsi),%r10 5429 movl 104(%rsi),%ecx 5430 cmpl %edx,%ecx 5431 cmovgl %ecx,%edx 5432 testl %ecx,%ecx 5433 movl %ecx,24(%rbx) 5434 cmovleq %rbp,%r10 5435 movq 112(%rsi),%r11 5436 movl 120(%rsi),%ecx 5437 cmpl %edx,%ecx 5438 cmovgl %ecx,%edx 5439 testl %ecx,%ecx 5440 movl %ecx,28(%rbx) 5441 cmovleq %rbp,%r11 5442 vmovdqu 0-128(%rdi),%ymm8 5443 leaq 128(%rsp),%rax 5444 vmovdqu 32-128(%rdi),%ymm9 5445 leaq 256+128(%rsp),%rbx 5446 vmovdqu 64-128(%rdi),%ymm10 5447 vmovdqu 96-128(%rdi),%ymm11 5448 vmovdqu 128-128(%rdi),%ymm12 5449 vmovdqu 160-128(%rdi),%ymm13 5450 vmovdqu 192-128(%rdi),%ymm14 5451 vmovdqu 224-128(%rdi),%ymm15 5452 vmovdqu .Lpbswap(%rip),%ymm6 5453 jmp .Loop_avx2 5454 5455.align 32 5456.Loop_avx2: 5457 vpxor %ymm9,%ymm10,%ymm4 5458 vmovd 0(%r12),%xmm5 5459 vmovd 0(%r8),%xmm0 5460 vmovd 0(%r13),%xmm1 5461 vmovd 0(%r9),%xmm2 5462 vpinsrd $1,0(%r14),%xmm5,%xmm5 5463 vpinsrd $1,0(%r10),%xmm0,%xmm0 5464 vpinsrd $1,0(%r15),%xmm1,%xmm1 5465 vpunpckldq %ymm1,%ymm5,%ymm5 5466 vpinsrd $1,0(%r11),%xmm2,%xmm2 5467 vpunpckldq %ymm2,%ymm0,%ymm0 5468 vinserti128 $1,%xmm0,%ymm5,%ymm5 5469 vpshufb %ymm6,%ymm5,%ymm5 5470 vpsrld $6,%ymm12,%ymm7 5471 vpslld $26,%ymm12,%ymm2 5472 vmovdqu %ymm5,0-128(%rax) 5473 vpaddd %ymm15,%ymm5,%ymm5 5474 5475 vpsrld $11,%ymm12,%ymm1 5476 vpxor %ymm2,%ymm7,%ymm7 5477 vpslld $21,%ymm12,%ymm2 5478 vpaddd -128(%rbp),%ymm5,%ymm5 5479 vpxor %ymm1,%ymm7,%ymm7 5480 5481 vpsrld $25,%ymm12,%ymm1 5482 vpxor %ymm2,%ymm7,%ymm7 5483 5484 vpslld $7,%ymm12,%ymm2 5485 vpandn %ymm14,%ymm12,%ymm0 5486 vpand %ymm13,%ymm12,%ymm3 5487 5488 vpxor %ymm1,%ymm7,%ymm7 5489 5490 vpsrld $2,%ymm8,%ymm15 5491 vpxor %ymm2,%ymm7,%ymm7 5492 5493 vpslld $30,%ymm8,%ymm1 5494 vpxor %ymm3,%ymm0,%ymm0 5495 vpxor %ymm8,%ymm9,%ymm3 5496 5497 vpxor %ymm1,%ymm15,%ymm15 5498 vpaddd %ymm7,%ymm5,%ymm5 5499 5500 vpsrld $13,%ymm8,%ymm1 5501 5502 vpslld $19,%ymm8,%ymm2 5503 vpaddd %ymm0,%ymm5,%ymm5 5504 vpand %ymm3,%ymm4,%ymm4 5505 5506 vpxor %ymm1,%ymm15,%ymm7 5507 5508 vpsrld $22,%ymm8,%ymm1 5509 vpxor %ymm2,%ymm7,%ymm7 5510 5511 vpslld $10,%ymm8,%ymm2 5512 vpxor %ymm4,%ymm9,%ymm15 5513 vpaddd %ymm5,%ymm11,%ymm11 5514 5515 vpxor %ymm1,%ymm7,%ymm7 5516 vpxor %ymm2,%ymm7,%ymm7 5517 5518 vpaddd %ymm5,%ymm15,%ymm15 5519 vpaddd %ymm7,%ymm15,%ymm15 5520 vmovd 4(%r12),%xmm5 5521 vmovd 4(%r8),%xmm0 5522 vmovd 4(%r13),%xmm1 5523 vmovd 4(%r9),%xmm2 5524 vpinsrd $1,4(%r14),%xmm5,%xmm5 5525 vpinsrd $1,4(%r10),%xmm0,%xmm0 5526 vpinsrd $1,4(%r15),%xmm1,%xmm1 5527 vpunpckldq %ymm1,%ymm5,%ymm5 5528 vpinsrd $1,4(%r11),%xmm2,%xmm2 5529 vpunpckldq %ymm2,%ymm0,%ymm0 5530 vinserti128 $1,%xmm0,%ymm5,%ymm5 5531 vpshufb %ymm6,%ymm5,%ymm5 5532 vpsrld $6,%ymm11,%ymm7 5533 vpslld $26,%ymm11,%ymm2 5534 vmovdqu %ymm5,32-128(%rax) 5535 vpaddd %ymm14,%ymm5,%ymm5 5536 5537 vpsrld $11,%ymm11,%ymm1 5538 vpxor %ymm2,%ymm7,%ymm7 5539 vpslld $21,%ymm11,%ymm2 5540 vpaddd -96(%rbp),%ymm5,%ymm5 5541 vpxor %ymm1,%ymm7,%ymm7 5542 5543 vpsrld $25,%ymm11,%ymm1 5544 vpxor %ymm2,%ymm7,%ymm7 5545 5546 vpslld $7,%ymm11,%ymm2 5547 vpandn %ymm13,%ymm11,%ymm0 5548 vpand %ymm12,%ymm11,%ymm4 5549 5550 vpxor %ymm1,%ymm7,%ymm7 5551 5552 vpsrld $2,%ymm15,%ymm14 5553 vpxor %ymm2,%ymm7,%ymm7 5554 5555 vpslld $30,%ymm15,%ymm1 5556 vpxor %ymm4,%ymm0,%ymm0 5557 vpxor %ymm15,%ymm8,%ymm4 5558 5559 vpxor %ymm1,%ymm14,%ymm14 5560 vpaddd %ymm7,%ymm5,%ymm5 5561 5562 vpsrld $13,%ymm15,%ymm1 5563 5564 vpslld $19,%ymm15,%ymm2 5565 vpaddd %ymm0,%ymm5,%ymm5 5566 vpand %ymm4,%ymm3,%ymm3 5567 5568 vpxor %ymm1,%ymm14,%ymm7 5569 5570 vpsrld $22,%ymm15,%ymm1 5571 vpxor %ymm2,%ymm7,%ymm7 5572 5573 vpslld $10,%ymm15,%ymm2 5574 vpxor %ymm3,%ymm8,%ymm14 5575 vpaddd %ymm5,%ymm10,%ymm10 5576 5577 vpxor %ymm1,%ymm7,%ymm7 5578 vpxor %ymm2,%ymm7,%ymm7 5579 5580 vpaddd %ymm5,%ymm14,%ymm14 5581 vpaddd %ymm7,%ymm14,%ymm14 5582 vmovd 8(%r12),%xmm5 5583 vmovd 8(%r8),%xmm0 5584 vmovd 8(%r13),%xmm1 5585 vmovd 8(%r9),%xmm2 5586 vpinsrd $1,8(%r14),%xmm5,%xmm5 5587 vpinsrd $1,8(%r10),%xmm0,%xmm0 5588 vpinsrd $1,8(%r15),%xmm1,%xmm1 5589 vpunpckldq %ymm1,%ymm5,%ymm5 5590 vpinsrd $1,8(%r11),%xmm2,%xmm2 5591 vpunpckldq %ymm2,%ymm0,%ymm0 5592 vinserti128 $1,%xmm0,%ymm5,%ymm5 5593 vpshufb %ymm6,%ymm5,%ymm5 5594 vpsrld $6,%ymm10,%ymm7 5595 vpslld $26,%ymm10,%ymm2 5596 vmovdqu %ymm5,64-128(%rax) 5597 vpaddd %ymm13,%ymm5,%ymm5 5598 5599 vpsrld $11,%ymm10,%ymm1 5600 vpxor %ymm2,%ymm7,%ymm7 5601 vpslld $21,%ymm10,%ymm2 5602 vpaddd -64(%rbp),%ymm5,%ymm5 5603 vpxor %ymm1,%ymm7,%ymm7 5604 5605 vpsrld $25,%ymm10,%ymm1 5606 vpxor %ymm2,%ymm7,%ymm7 5607 5608 vpslld $7,%ymm10,%ymm2 5609 vpandn %ymm12,%ymm10,%ymm0 5610 vpand %ymm11,%ymm10,%ymm3 5611 5612 vpxor %ymm1,%ymm7,%ymm7 5613 5614 vpsrld $2,%ymm14,%ymm13 5615 vpxor %ymm2,%ymm7,%ymm7 5616 5617 vpslld $30,%ymm14,%ymm1 5618 vpxor %ymm3,%ymm0,%ymm0 5619 vpxor %ymm14,%ymm15,%ymm3 5620 5621 vpxor %ymm1,%ymm13,%ymm13 5622 vpaddd %ymm7,%ymm5,%ymm5 5623 5624 vpsrld $13,%ymm14,%ymm1 5625 5626 vpslld $19,%ymm14,%ymm2 5627 vpaddd %ymm0,%ymm5,%ymm5 5628 vpand %ymm3,%ymm4,%ymm4 5629 5630 vpxor %ymm1,%ymm13,%ymm7 5631 5632 vpsrld $22,%ymm14,%ymm1 5633 vpxor %ymm2,%ymm7,%ymm7 5634 5635 vpslld $10,%ymm14,%ymm2 5636 vpxor %ymm4,%ymm15,%ymm13 5637 vpaddd %ymm5,%ymm9,%ymm9 5638 5639 vpxor %ymm1,%ymm7,%ymm7 5640 vpxor %ymm2,%ymm7,%ymm7 5641 5642 vpaddd %ymm5,%ymm13,%ymm13 5643 vpaddd %ymm7,%ymm13,%ymm13 5644 vmovd 12(%r12),%xmm5 5645 vmovd 12(%r8),%xmm0 5646 vmovd 12(%r13),%xmm1 5647 vmovd 12(%r9),%xmm2 5648 vpinsrd $1,12(%r14),%xmm5,%xmm5 5649 vpinsrd $1,12(%r10),%xmm0,%xmm0 5650 vpinsrd $1,12(%r15),%xmm1,%xmm1 5651 vpunpckldq %ymm1,%ymm5,%ymm5 5652 vpinsrd $1,12(%r11),%xmm2,%xmm2 5653 vpunpckldq %ymm2,%ymm0,%ymm0 5654 vinserti128 $1,%xmm0,%ymm5,%ymm5 5655 vpshufb %ymm6,%ymm5,%ymm5 5656 vpsrld $6,%ymm9,%ymm7 5657 vpslld $26,%ymm9,%ymm2 5658 vmovdqu %ymm5,96-128(%rax) 5659 vpaddd %ymm12,%ymm5,%ymm5 5660 5661 vpsrld $11,%ymm9,%ymm1 5662 vpxor %ymm2,%ymm7,%ymm7 5663 vpslld $21,%ymm9,%ymm2 5664 vpaddd -32(%rbp),%ymm5,%ymm5 5665 vpxor %ymm1,%ymm7,%ymm7 5666 5667 vpsrld $25,%ymm9,%ymm1 5668 vpxor %ymm2,%ymm7,%ymm7 5669 5670 vpslld $7,%ymm9,%ymm2 5671 vpandn %ymm11,%ymm9,%ymm0 5672 vpand %ymm10,%ymm9,%ymm4 5673 5674 vpxor %ymm1,%ymm7,%ymm7 5675 5676 vpsrld $2,%ymm13,%ymm12 5677 vpxor %ymm2,%ymm7,%ymm7 5678 5679 vpslld $30,%ymm13,%ymm1 5680 vpxor %ymm4,%ymm0,%ymm0 5681 vpxor %ymm13,%ymm14,%ymm4 5682 5683 vpxor %ymm1,%ymm12,%ymm12 5684 vpaddd %ymm7,%ymm5,%ymm5 5685 5686 vpsrld $13,%ymm13,%ymm1 5687 5688 vpslld $19,%ymm13,%ymm2 5689 vpaddd %ymm0,%ymm5,%ymm5 5690 vpand %ymm4,%ymm3,%ymm3 5691 5692 vpxor %ymm1,%ymm12,%ymm7 5693 5694 vpsrld $22,%ymm13,%ymm1 5695 vpxor %ymm2,%ymm7,%ymm7 5696 5697 vpslld $10,%ymm13,%ymm2 5698 vpxor %ymm3,%ymm14,%ymm12 5699 vpaddd %ymm5,%ymm8,%ymm8 5700 5701 vpxor %ymm1,%ymm7,%ymm7 5702 vpxor %ymm2,%ymm7,%ymm7 5703 5704 vpaddd %ymm5,%ymm12,%ymm12 5705 vpaddd %ymm7,%ymm12,%ymm12 5706 vmovd 16(%r12),%xmm5 5707 vmovd 16(%r8),%xmm0 5708 vmovd 16(%r13),%xmm1 5709 vmovd 16(%r9),%xmm2 5710 vpinsrd $1,16(%r14),%xmm5,%xmm5 5711 vpinsrd $1,16(%r10),%xmm0,%xmm0 5712 vpinsrd $1,16(%r15),%xmm1,%xmm1 5713 vpunpckldq %ymm1,%ymm5,%ymm5 5714 vpinsrd $1,16(%r11),%xmm2,%xmm2 5715 vpunpckldq %ymm2,%ymm0,%ymm0 5716 vinserti128 $1,%xmm0,%ymm5,%ymm5 5717 vpshufb %ymm6,%ymm5,%ymm5 5718 vpsrld $6,%ymm8,%ymm7 5719 vpslld $26,%ymm8,%ymm2 5720 vmovdqu %ymm5,128-128(%rax) 5721 vpaddd %ymm11,%ymm5,%ymm5 5722 5723 vpsrld $11,%ymm8,%ymm1 5724 vpxor %ymm2,%ymm7,%ymm7 5725 vpslld $21,%ymm8,%ymm2 5726 vpaddd 0(%rbp),%ymm5,%ymm5 5727 vpxor %ymm1,%ymm7,%ymm7 5728 5729 vpsrld $25,%ymm8,%ymm1 5730 vpxor %ymm2,%ymm7,%ymm7 5731 5732 vpslld $7,%ymm8,%ymm2 5733 vpandn %ymm10,%ymm8,%ymm0 5734 vpand %ymm9,%ymm8,%ymm3 5735 5736 vpxor %ymm1,%ymm7,%ymm7 5737 5738 vpsrld $2,%ymm12,%ymm11 5739 vpxor %ymm2,%ymm7,%ymm7 5740 5741 vpslld $30,%ymm12,%ymm1 5742 vpxor %ymm3,%ymm0,%ymm0 5743 vpxor %ymm12,%ymm13,%ymm3 5744 5745 vpxor %ymm1,%ymm11,%ymm11 5746 vpaddd %ymm7,%ymm5,%ymm5 5747 5748 vpsrld $13,%ymm12,%ymm1 5749 5750 vpslld $19,%ymm12,%ymm2 5751 vpaddd %ymm0,%ymm5,%ymm5 5752 vpand %ymm3,%ymm4,%ymm4 5753 5754 vpxor %ymm1,%ymm11,%ymm7 5755 5756 vpsrld $22,%ymm12,%ymm1 5757 vpxor %ymm2,%ymm7,%ymm7 5758 5759 vpslld $10,%ymm12,%ymm2 5760 vpxor %ymm4,%ymm13,%ymm11 5761 vpaddd %ymm5,%ymm15,%ymm15 5762 5763 vpxor %ymm1,%ymm7,%ymm7 5764 vpxor %ymm2,%ymm7,%ymm7 5765 5766 vpaddd %ymm5,%ymm11,%ymm11 5767 vpaddd %ymm7,%ymm11,%ymm11 5768 vmovd 20(%r12),%xmm5 5769 vmovd 20(%r8),%xmm0 5770 vmovd 20(%r13),%xmm1 5771 vmovd 20(%r9),%xmm2 5772 vpinsrd $1,20(%r14),%xmm5,%xmm5 5773 vpinsrd $1,20(%r10),%xmm0,%xmm0 5774 vpinsrd $1,20(%r15),%xmm1,%xmm1 5775 vpunpckldq %ymm1,%ymm5,%ymm5 5776 vpinsrd $1,20(%r11),%xmm2,%xmm2 5777 vpunpckldq %ymm2,%ymm0,%ymm0 5778 vinserti128 $1,%xmm0,%ymm5,%ymm5 5779 vpshufb %ymm6,%ymm5,%ymm5 5780 vpsrld $6,%ymm15,%ymm7 5781 vpslld $26,%ymm15,%ymm2 5782 vmovdqu %ymm5,160-128(%rax) 5783 vpaddd %ymm10,%ymm5,%ymm5 5784 5785 vpsrld $11,%ymm15,%ymm1 5786 vpxor %ymm2,%ymm7,%ymm7 5787 vpslld $21,%ymm15,%ymm2 5788 vpaddd 32(%rbp),%ymm5,%ymm5 5789 vpxor %ymm1,%ymm7,%ymm7 5790 5791 vpsrld $25,%ymm15,%ymm1 5792 vpxor %ymm2,%ymm7,%ymm7 5793 5794 vpslld $7,%ymm15,%ymm2 5795 vpandn %ymm9,%ymm15,%ymm0 5796 vpand %ymm8,%ymm15,%ymm4 5797 5798 vpxor %ymm1,%ymm7,%ymm7 5799 5800 vpsrld $2,%ymm11,%ymm10 5801 vpxor %ymm2,%ymm7,%ymm7 5802 5803 vpslld $30,%ymm11,%ymm1 5804 vpxor %ymm4,%ymm0,%ymm0 5805 vpxor %ymm11,%ymm12,%ymm4 5806 5807 vpxor %ymm1,%ymm10,%ymm10 5808 vpaddd %ymm7,%ymm5,%ymm5 5809 5810 vpsrld $13,%ymm11,%ymm1 5811 5812 vpslld $19,%ymm11,%ymm2 5813 vpaddd %ymm0,%ymm5,%ymm5 5814 vpand %ymm4,%ymm3,%ymm3 5815 5816 vpxor %ymm1,%ymm10,%ymm7 5817 5818 vpsrld $22,%ymm11,%ymm1 5819 vpxor %ymm2,%ymm7,%ymm7 5820 5821 vpslld $10,%ymm11,%ymm2 5822 vpxor %ymm3,%ymm12,%ymm10 5823 vpaddd %ymm5,%ymm14,%ymm14 5824 5825 vpxor %ymm1,%ymm7,%ymm7 5826 vpxor %ymm2,%ymm7,%ymm7 5827 5828 vpaddd %ymm5,%ymm10,%ymm10 5829 vpaddd %ymm7,%ymm10,%ymm10 5830 vmovd 24(%r12),%xmm5 5831 vmovd 24(%r8),%xmm0 5832 vmovd 24(%r13),%xmm1 5833 vmovd 24(%r9),%xmm2 5834 vpinsrd $1,24(%r14),%xmm5,%xmm5 5835 vpinsrd $1,24(%r10),%xmm0,%xmm0 5836 vpinsrd $1,24(%r15),%xmm1,%xmm1 5837 vpunpckldq %ymm1,%ymm5,%ymm5 5838 vpinsrd $1,24(%r11),%xmm2,%xmm2 5839 vpunpckldq %ymm2,%ymm0,%ymm0 5840 vinserti128 $1,%xmm0,%ymm5,%ymm5 5841 vpshufb %ymm6,%ymm5,%ymm5 5842 vpsrld $6,%ymm14,%ymm7 5843 vpslld $26,%ymm14,%ymm2 5844 vmovdqu %ymm5,192-128(%rax) 5845 vpaddd %ymm9,%ymm5,%ymm5 5846 5847 vpsrld $11,%ymm14,%ymm1 5848 vpxor %ymm2,%ymm7,%ymm7 5849 vpslld $21,%ymm14,%ymm2 5850 vpaddd 64(%rbp),%ymm5,%ymm5 5851 vpxor %ymm1,%ymm7,%ymm7 5852 5853 vpsrld $25,%ymm14,%ymm1 5854 vpxor %ymm2,%ymm7,%ymm7 5855 5856 vpslld $7,%ymm14,%ymm2 5857 vpandn %ymm8,%ymm14,%ymm0 5858 vpand %ymm15,%ymm14,%ymm3 5859 5860 vpxor %ymm1,%ymm7,%ymm7 5861 5862 vpsrld $2,%ymm10,%ymm9 5863 vpxor %ymm2,%ymm7,%ymm7 5864 5865 vpslld $30,%ymm10,%ymm1 5866 vpxor %ymm3,%ymm0,%ymm0 5867 vpxor %ymm10,%ymm11,%ymm3 5868 5869 vpxor %ymm1,%ymm9,%ymm9 5870 vpaddd %ymm7,%ymm5,%ymm5 5871 5872 vpsrld $13,%ymm10,%ymm1 5873 5874 vpslld $19,%ymm10,%ymm2 5875 vpaddd %ymm0,%ymm5,%ymm5 5876 vpand %ymm3,%ymm4,%ymm4 5877 5878 vpxor %ymm1,%ymm9,%ymm7 5879 5880 vpsrld $22,%ymm10,%ymm1 5881 vpxor %ymm2,%ymm7,%ymm7 5882 5883 vpslld $10,%ymm10,%ymm2 5884 vpxor %ymm4,%ymm11,%ymm9 5885 vpaddd %ymm5,%ymm13,%ymm13 5886 5887 vpxor %ymm1,%ymm7,%ymm7 5888 vpxor %ymm2,%ymm7,%ymm7 5889 5890 vpaddd %ymm5,%ymm9,%ymm9 5891 vpaddd %ymm7,%ymm9,%ymm9 5892 vmovd 28(%r12),%xmm5 5893 vmovd 28(%r8),%xmm0 5894 vmovd 28(%r13),%xmm1 5895 vmovd 28(%r9),%xmm2 5896 vpinsrd $1,28(%r14),%xmm5,%xmm5 5897 vpinsrd $1,28(%r10),%xmm0,%xmm0 5898 vpinsrd $1,28(%r15),%xmm1,%xmm1 5899 vpunpckldq %ymm1,%ymm5,%ymm5 5900 vpinsrd $1,28(%r11),%xmm2,%xmm2 5901 vpunpckldq %ymm2,%ymm0,%ymm0 5902 vinserti128 $1,%xmm0,%ymm5,%ymm5 5903 vpshufb %ymm6,%ymm5,%ymm5 5904 vpsrld $6,%ymm13,%ymm7 5905 vpslld $26,%ymm13,%ymm2 5906 vmovdqu %ymm5,224-128(%rax) 5907 vpaddd %ymm8,%ymm5,%ymm5 5908 5909 vpsrld $11,%ymm13,%ymm1 5910 vpxor %ymm2,%ymm7,%ymm7 5911 vpslld $21,%ymm13,%ymm2 5912 vpaddd 96(%rbp),%ymm5,%ymm5 5913 vpxor %ymm1,%ymm7,%ymm7 5914 5915 vpsrld $25,%ymm13,%ymm1 5916 vpxor %ymm2,%ymm7,%ymm7 5917 5918 vpslld $7,%ymm13,%ymm2 5919 vpandn %ymm15,%ymm13,%ymm0 5920 vpand %ymm14,%ymm13,%ymm4 5921 5922 vpxor %ymm1,%ymm7,%ymm7 5923 5924 vpsrld $2,%ymm9,%ymm8 5925 vpxor %ymm2,%ymm7,%ymm7 5926 5927 vpslld $30,%ymm9,%ymm1 5928 vpxor %ymm4,%ymm0,%ymm0 5929 vpxor %ymm9,%ymm10,%ymm4 5930 5931 vpxor %ymm1,%ymm8,%ymm8 5932 vpaddd %ymm7,%ymm5,%ymm5 5933 5934 vpsrld $13,%ymm9,%ymm1 5935 5936 vpslld $19,%ymm9,%ymm2 5937 vpaddd %ymm0,%ymm5,%ymm5 5938 vpand %ymm4,%ymm3,%ymm3 5939 5940 vpxor %ymm1,%ymm8,%ymm7 5941 5942 vpsrld $22,%ymm9,%ymm1 5943 vpxor %ymm2,%ymm7,%ymm7 5944 5945 vpslld $10,%ymm9,%ymm2 5946 vpxor %ymm3,%ymm10,%ymm8 5947 vpaddd %ymm5,%ymm12,%ymm12 5948 5949 vpxor %ymm1,%ymm7,%ymm7 5950 vpxor %ymm2,%ymm7,%ymm7 5951 5952 vpaddd %ymm5,%ymm8,%ymm8 5953 vpaddd %ymm7,%ymm8,%ymm8 5954 addq $256,%rbp 5955 vmovd 32(%r12),%xmm5 5956 vmovd 32(%r8),%xmm0 5957 vmovd 32(%r13),%xmm1 5958 vmovd 32(%r9),%xmm2 5959 vpinsrd $1,32(%r14),%xmm5,%xmm5 5960 vpinsrd $1,32(%r10),%xmm0,%xmm0 5961 vpinsrd $1,32(%r15),%xmm1,%xmm1 5962 vpunpckldq %ymm1,%ymm5,%ymm5 5963 vpinsrd $1,32(%r11),%xmm2,%xmm2 5964 vpunpckldq %ymm2,%ymm0,%ymm0 5965 vinserti128 $1,%xmm0,%ymm5,%ymm5 5966 vpshufb %ymm6,%ymm5,%ymm5 5967 vpsrld $6,%ymm12,%ymm7 5968 vpslld $26,%ymm12,%ymm2 5969 vmovdqu %ymm5,256-256-128(%rbx) 5970 vpaddd %ymm15,%ymm5,%ymm5 5971 5972 vpsrld $11,%ymm12,%ymm1 5973 vpxor %ymm2,%ymm7,%ymm7 5974 vpslld $21,%ymm12,%ymm2 5975 vpaddd -128(%rbp),%ymm5,%ymm5 5976 vpxor %ymm1,%ymm7,%ymm7 5977 5978 vpsrld $25,%ymm12,%ymm1 5979 vpxor %ymm2,%ymm7,%ymm7 5980 5981 vpslld $7,%ymm12,%ymm2 5982 vpandn %ymm14,%ymm12,%ymm0 5983 vpand %ymm13,%ymm12,%ymm3 5984 5985 vpxor %ymm1,%ymm7,%ymm7 5986 5987 vpsrld $2,%ymm8,%ymm15 5988 vpxor %ymm2,%ymm7,%ymm7 5989 5990 vpslld $30,%ymm8,%ymm1 5991 vpxor %ymm3,%ymm0,%ymm0 5992 vpxor %ymm8,%ymm9,%ymm3 5993 5994 vpxor %ymm1,%ymm15,%ymm15 5995 vpaddd %ymm7,%ymm5,%ymm5 5996 5997 vpsrld $13,%ymm8,%ymm1 5998 5999 vpslld $19,%ymm8,%ymm2 6000 vpaddd %ymm0,%ymm5,%ymm5 6001 vpand %ymm3,%ymm4,%ymm4 6002 6003 vpxor %ymm1,%ymm15,%ymm7 6004 6005 vpsrld $22,%ymm8,%ymm1 6006 vpxor %ymm2,%ymm7,%ymm7 6007 6008 vpslld $10,%ymm8,%ymm2 6009 vpxor %ymm4,%ymm9,%ymm15 6010 vpaddd %ymm5,%ymm11,%ymm11 6011 6012 vpxor %ymm1,%ymm7,%ymm7 6013 vpxor %ymm2,%ymm7,%ymm7 6014 6015 vpaddd %ymm5,%ymm15,%ymm15 6016 vpaddd %ymm7,%ymm15,%ymm15 6017 vmovd 36(%r12),%xmm5 6018 vmovd 36(%r8),%xmm0 6019 vmovd 36(%r13),%xmm1 6020 vmovd 36(%r9),%xmm2 6021 vpinsrd $1,36(%r14),%xmm5,%xmm5 6022 vpinsrd $1,36(%r10),%xmm0,%xmm0 6023 vpinsrd $1,36(%r15),%xmm1,%xmm1 6024 vpunpckldq %ymm1,%ymm5,%ymm5 6025 vpinsrd $1,36(%r11),%xmm2,%xmm2 6026 vpunpckldq %ymm2,%ymm0,%ymm0 6027 vinserti128 $1,%xmm0,%ymm5,%ymm5 6028 vpshufb %ymm6,%ymm5,%ymm5 6029 vpsrld $6,%ymm11,%ymm7 6030 vpslld $26,%ymm11,%ymm2 6031 vmovdqu %ymm5,288-256-128(%rbx) 6032 vpaddd %ymm14,%ymm5,%ymm5 6033 6034 vpsrld $11,%ymm11,%ymm1 6035 vpxor %ymm2,%ymm7,%ymm7 6036 vpslld $21,%ymm11,%ymm2 6037 vpaddd -96(%rbp),%ymm5,%ymm5 6038 vpxor %ymm1,%ymm7,%ymm7 6039 6040 vpsrld $25,%ymm11,%ymm1 6041 vpxor %ymm2,%ymm7,%ymm7 6042 6043 vpslld $7,%ymm11,%ymm2 6044 vpandn %ymm13,%ymm11,%ymm0 6045 vpand %ymm12,%ymm11,%ymm4 6046 6047 vpxor %ymm1,%ymm7,%ymm7 6048 6049 vpsrld $2,%ymm15,%ymm14 6050 vpxor %ymm2,%ymm7,%ymm7 6051 6052 vpslld $30,%ymm15,%ymm1 6053 vpxor %ymm4,%ymm0,%ymm0 6054 vpxor %ymm15,%ymm8,%ymm4 6055 6056 vpxor %ymm1,%ymm14,%ymm14 6057 vpaddd %ymm7,%ymm5,%ymm5 6058 6059 vpsrld $13,%ymm15,%ymm1 6060 6061 vpslld $19,%ymm15,%ymm2 6062 vpaddd %ymm0,%ymm5,%ymm5 6063 vpand %ymm4,%ymm3,%ymm3 6064 6065 vpxor %ymm1,%ymm14,%ymm7 6066 6067 vpsrld $22,%ymm15,%ymm1 6068 vpxor %ymm2,%ymm7,%ymm7 6069 6070 vpslld $10,%ymm15,%ymm2 6071 vpxor %ymm3,%ymm8,%ymm14 6072 vpaddd %ymm5,%ymm10,%ymm10 6073 6074 vpxor %ymm1,%ymm7,%ymm7 6075 vpxor %ymm2,%ymm7,%ymm7 6076 6077 vpaddd %ymm5,%ymm14,%ymm14 6078 vpaddd %ymm7,%ymm14,%ymm14 6079 vmovd 40(%r12),%xmm5 6080 vmovd 40(%r8),%xmm0 6081 vmovd 40(%r13),%xmm1 6082 vmovd 40(%r9),%xmm2 6083 vpinsrd $1,40(%r14),%xmm5,%xmm5 6084 vpinsrd $1,40(%r10),%xmm0,%xmm0 6085 vpinsrd $1,40(%r15),%xmm1,%xmm1 6086 vpunpckldq %ymm1,%ymm5,%ymm5 6087 vpinsrd $1,40(%r11),%xmm2,%xmm2 6088 vpunpckldq %ymm2,%ymm0,%ymm0 6089 vinserti128 $1,%xmm0,%ymm5,%ymm5 6090 vpshufb %ymm6,%ymm5,%ymm5 6091 vpsrld $6,%ymm10,%ymm7 6092 vpslld $26,%ymm10,%ymm2 6093 vmovdqu %ymm5,320-256-128(%rbx) 6094 vpaddd %ymm13,%ymm5,%ymm5 6095 6096 vpsrld $11,%ymm10,%ymm1 6097 vpxor %ymm2,%ymm7,%ymm7 6098 vpslld $21,%ymm10,%ymm2 6099 vpaddd -64(%rbp),%ymm5,%ymm5 6100 vpxor %ymm1,%ymm7,%ymm7 6101 6102 vpsrld $25,%ymm10,%ymm1 6103 vpxor %ymm2,%ymm7,%ymm7 6104 6105 vpslld $7,%ymm10,%ymm2 6106 vpandn %ymm12,%ymm10,%ymm0 6107 vpand %ymm11,%ymm10,%ymm3 6108 6109 vpxor %ymm1,%ymm7,%ymm7 6110 6111 vpsrld $2,%ymm14,%ymm13 6112 vpxor %ymm2,%ymm7,%ymm7 6113 6114 vpslld $30,%ymm14,%ymm1 6115 vpxor %ymm3,%ymm0,%ymm0 6116 vpxor %ymm14,%ymm15,%ymm3 6117 6118 vpxor %ymm1,%ymm13,%ymm13 6119 vpaddd %ymm7,%ymm5,%ymm5 6120 6121 vpsrld $13,%ymm14,%ymm1 6122 6123 vpslld $19,%ymm14,%ymm2 6124 vpaddd %ymm0,%ymm5,%ymm5 6125 vpand %ymm3,%ymm4,%ymm4 6126 6127 vpxor %ymm1,%ymm13,%ymm7 6128 6129 vpsrld $22,%ymm14,%ymm1 6130 vpxor %ymm2,%ymm7,%ymm7 6131 6132 vpslld $10,%ymm14,%ymm2 6133 vpxor %ymm4,%ymm15,%ymm13 6134 vpaddd %ymm5,%ymm9,%ymm9 6135 6136 vpxor %ymm1,%ymm7,%ymm7 6137 vpxor %ymm2,%ymm7,%ymm7 6138 6139 vpaddd %ymm5,%ymm13,%ymm13 6140 vpaddd %ymm7,%ymm13,%ymm13 6141 vmovd 44(%r12),%xmm5 6142 vmovd 44(%r8),%xmm0 6143 vmovd 44(%r13),%xmm1 6144 vmovd 44(%r9),%xmm2 6145 vpinsrd $1,44(%r14),%xmm5,%xmm5 6146 vpinsrd $1,44(%r10),%xmm0,%xmm0 6147 vpinsrd $1,44(%r15),%xmm1,%xmm1 6148 vpunpckldq %ymm1,%ymm5,%ymm5 6149 vpinsrd $1,44(%r11),%xmm2,%xmm2 6150 vpunpckldq %ymm2,%ymm0,%ymm0 6151 vinserti128 $1,%xmm0,%ymm5,%ymm5 6152 vpshufb %ymm6,%ymm5,%ymm5 6153 vpsrld $6,%ymm9,%ymm7 6154 vpslld $26,%ymm9,%ymm2 6155 vmovdqu %ymm5,352-256-128(%rbx) 6156 vpaddd %ymm12,%ymm5,%ymm5 6157 6158 vpsrld $11,%ymm9,%ymm1 6159 vpxor %ymm2,%ymm7,%ymm7 6160 vpslld $21,%ymm9,%ymm2 6161 vpaddd -32(%rbp),%ymm5,%ymm5 6162 vpxor %ymm1,%ymm7,%ymm7 6163 6164 vpsrld $25,%ymm9,%ymm1 6165 vpxor %ymm2,%ymm7,%ymm7 6166 6167 vpslld $7,%ymm9,%ymm2 6168 vpandn %ymm11,%ymm9,%ymm0 6169 vpand %ymm10,%ymm9,%ymm4 6170 6171 vpxor %ymm1,%ymm7,%ymm7 6172 6173 vpsrld $2,%ymm13,%ymm12 6174 vpxor %ymm2,%ymm7,%ymm7 6175 6176 vpslld $30,%ymm13,%ymm1 6177 vpxor %ymm4,%ymm0,%ymm0 6178 vpxor %ymm13,%ymm14,%ymm4 6179 6180 vpxor %ymm1,%ymm12,%ymm12 6181 vpaddd %ymm7,%ymm5,%ymm5 6182 6183 vpsrld $13,%ymm13,%ymm1 6184 6185 vpslld $19,%ymm13,%ymm2 6186 vpaddd %ymm0,%ymm5,%ymm5 6187 vpand %ymm4,%ymm3,%ymm3 6188 6189 vpxor %ymm1,%ymm12,%ymm7 6190 6191 vpsrld $22,%ymm13,%ymm1 6192 vpxor %ymm2,%ymm7,%ymm7 6193 6194 vpslld $10,%ymm13,%ymm2 6195 vpxor %ymm3,%ymm14,%ymm12 6196 vpaddd %ymm5,%ymm8,%ymm8 6197 6198 vpxor %ymm1,%ymm7,%ymm7 6199 vpxor %ymm2,%ymm7,%ymm7 6200 6201 vpaddd %ymm5,%ymm12,%ymm12 6202 vpaddd %ymm7,%ymm12,%ymm12 6203 vmovd 48(%r12),%xmm5 6204 vmovd 48(%r8),%xmm0 6205 vmovd 48(%r13),%xmm1 6206 vmovd 48(%r9),%xmm2 6207 vpinsrd $1,48(%r14),%xmm5,%xmm5 6208 vpinsrd $1,48(%r10),%xmm0,%xmm0 6209 vpinsrd $1,48(%r15),%xmm1,%xmm1 6210 vpunpckldq %ymm1,%ymm5,%ymm5 6211 vpinsrd $1,48(%r11),%xmm2,%xmm2 6212 vpunpckldq %ymm2,%ymm0,%ymm0 6213 vinserti128 $1,%xmm0,%ymm5,%ymm5 6214 vpshufb %ymm6,%ymm5,%ymm5 6215 vpsrld $6,%ymm8,%ymm7 6216 vpslld $26,%ymm8,%ymm2 6217 vmovdqu %ymm5,384-256-128(%rbx) 6218 vpaddd %ymm11,%ymm5,%ymm5 6219 6220 vpsrld $11,%ymm8,%ymm1 6221 vpxor %ymm2,%ymm7,%ymm7 6222 vpslld $21,%ymm8,%ymm2 6223 vpaddd 0(%rbp),%ymm5,%ymm5 6224 vpxor %ymm1,%ymm7,%ymm7 6225 6226 vpsrld $25,%ymm8,%ymm1 6227 vpxor %ymm2,%ymm7,%ymm7 6228 6229 vpslld $7,%ymm8,%ymm2 6230 vpandn %ymm10,%ymm8,%ymm0 6231 vpand %ymm9,%ymm8,%ymm3 6232 6233 vpxor %ymm1,%ymm7,%ymm7 6234 6235 vpsrld $2,%ymm12,%ymm11 6236 vpxor %ymm2,%ymm7,%ymm7 6237 6238 vpslld $30,%ymm12,%ymm1 6239 vpxor %ymm3,%ymm0,%ymm0 6240 vpxor %ymm12,%ymm13,%ymm3 6241 6242 vpxor %ymm1,%ymm11,%ymm11 6243 vpaddd %ymm7,%ymm5,%ymm5 6244 6245 vpsrld $13,%ymm12,%ymm1 6246 6247 vpslld $19,%ymm12,%ymm2 6248 vpaddd %ymm0,%ymm5,%ymm5 6249 vpand %ymm3,%ymm4,%ymm4 6250 6251 vpxor %ymm1,%ymm11,%ymm7 6252 6253 vpsrld $22,%ymm12,%ymm1 6254 vpxor %ymm2,%ymm7,%ymm7 6255 6256 vpslld $10,%ymm12,%ymm2 6257 vpxor %ymm4,%ymm13,%ymm11 6258 vpaddd %ymm5,%ymm15,%ymm15 6259 6260 vpxor %ymm1,%ymm7,%ymm7 6261 vpxor %ymm2,%ymm7,%ymm7 6262 6263 vpaddd %ymm5,%ymm11,%ymm11 6264 vpaddd %ymm7,%ymm11,%ymm11 6265 vmovd 52(%r12),%xmm5 6266 vmovd 52(%r8),%xmm0 6267 vmovd 52(%r13),%xmm1 6268 vmovd 52(%r9),%xmm2 6269 vpinsrd $1,52(%r14),%xmm5,%xmm5 6270 vpinsrd $1,52(%r10),%xmm0,%xmm0 6271 vpinsrd $1,52(%r15),%xmm1,%xmm1 6272 vpunpckldq %ymm1,%ymm5,%ymm5 6273 vpinsrd $1,52(%r11),%xmm2,%xmm2 6274 vpunpckldq %ymm2,%ymm0,%ymm0 6275 vinserti128 $1,%xmm0,%ymm5,%ymm5 6276 vpshufb %ymm6,%ymm5,%ymm5 6277 vpsrld $6,%ymm15,%ymm7 6278 vpslld $26,%ymm15,%ymm2 6279 vmovdqu %ymm5,416-256-128(%rbx) 6280 vpaddd %ymm10,%ymm5,%ymm5 6281 6282 vpsrld $11,%ymm15,%ymm1 6283 vpxor %ymm2,%ymm7,%ymm7 6284 vpslld $21,%ymm15,%ymm2 6285 vpaddd 32(%rbp),%ymm5,%ymm5 6286 vpxor %ymm1,%ymm7,%ymm7 6287 6288 vpsrld $25,%ymm15,%ymm1 6289 vpxor %ymm2,%ymm7,%ymm7 6290 6291 vpslld $7,%ymm15,%ymm2 6292 vpandn %ymm9,%ymm15,%ymm0 6293 vpand %ymm8,%ymm15,%ymm4 6294 6295 vpxor %ymm1,%ymm7,%ymm7 6296 6297 vpsrld $2,%ymm11,%ymm10 6298 vpxor %ymm2,%ymm7,%ymm7 6299 6300 vpslld $30,%ymm11,%ymm1 6301 vpxor %ymm4,%ymm0,%ymm0 6302 vpxor %ymm11,%ymm12,%ymm4 6303 6304 vpxor %ymm1,%ymm10,%ymm10 6305 vpaddd %ymm7,%ymm5,%ymm5 6306 6307 vpsrld $13,%ymm11,%ymm1 6308 6309 vpslld $19,%ymm11,%ymm2 6310 vpaddd %ymm0,%ymm5,%ymm5 6311 vpand %ymm4,%ymm3,%ymm3 6312 6313 vpxor %ymm1,%ymm10,%ymm7 6314 6315 vpsrld $22,%ymm11,%ymm1 6316 vpxor %ymm2,%ymm7,%ymm7 6317 6318 vpslld $10,%ymm11,%ymm2 6319 vpxor %ymm3,%ymm12,%ymm10 6320 vpaddd %ymm5,%ymm14,%ymm14 6321 6322 vpxor %ymm1,%ymm7,%ymm7 6323 vpxor %ymm2,%ymm7,%ymm7 6324 6325 vpaddd %ymm5,%ymm10,%ymm10 6326 vpaddd %ymm7,%ymm10,%ymm10 6327 vmovd 56(%r12),%xmm5 6328 vmovd 56(%r8),%xmm0 6329 vmovd 56(%r13),%xmm1 6330 vmovd 56(%r9),%xmm2 6331 vpinsrd $1,56(%r14),%xmm5,%xmm5 6332 vpinsrd $1,56(%r10),%xmm0,%xmm0 6333 vpinsrd $1,56(%r15),%xmm1,%xmm1 6334 vpunpckldq %ymm1,%ymm5,%ymm5 6335 vpinsrd $1,56(%r11),%xmm2,%xmm2 6336 vpunpckldq %ymm2,%ymm0,%ymm0 6337 vinserti128 $1,%xmm0,%ymm5,%ymm5 6338 vpshufb %ymm6,%ymm5,%ymm5 6339 vpsrld $6,%ymm14,%ymm7 6340 vpslld $26,%ymm14,%ymm2 6341 vmovdqu %ymm5,448-256-128(%rbx) 6342 vpaddd %ymm9,%ymm5,%ymm5 6343 6344 vpsrld $11,%ymm14,%ymm1 6345 vpxor %ymm2,%ymm7,%ymm7 6346 vpslld $21,%ymm14,%ymm2 6347 vpaddd 64(%rbp),%ymm5,%ymm5 6348 vpxor %ymm1,%ymm7,%ymm7 6349 6350 vpsrld $25,%ymm14,%ymm1 6351 vpxor %ymm2,%ymm7,%ymm7 6352 6353 vpslld $7,%ymm14,%ymm2 6354 vpandn %ymm8,%ymm14,%ymm0 6355 vpand %ymm15,%ymm14,%ymm3 6356 6357 vpxor %ymm1,%ymm7,%ymm7 6358 6359 vpsrld $2,%ymm10,%ymm9 6360 vpxor %ymm2,%ymm7,%ymm7 6361 6362 vpslld $30,%ymm10,%ymm1 6363 vpxor %ymm3,%ymm0,%ymm0 6364 vpxor %ymm10,%ymm11,%ymm3 6365 6366 vpxor %ymm1,%ymm9,%ymm9 6367 vpaddd %ymm7,%ymm5,%ymm5 6368 6369 vpsrld $13,%ymm10,%ymm1 6370 6371 vpslld $19,%ymm10,%ymm2 6372 vpaddd %ymm0,%ymm5,%ymm5 6373 vpand %ymm3,%ymm4,%ymm4 6374 6375 vpxor %ymm1,%ymm9,%ymm7 6376 6377 vpsrld $22,%ymm10,%ymm1 6378 vpxor %ymm2,%ymm7,%ymm7 6379 6380 vpslld $10,%ymm10,%ymm2 6381 vpxor %ymm4,%ymm11,%ymm9 6382 vpaddd %ymm5,%ymm13,%ymm13 6383 6384 vpxor %ymm1,%ymm7,%ymm7 6385 vpxor %ymm2,%ymm7,%ymm7 6386 6387 vpaddd %ymm5,%ymm9,%ymm9 6388 vpaddd %ymm7,%ymm9,%ymm9 6389 vmovd 60(%r12),%xmm5 6390 leaq 64(%r12),%r12 6391 vmovd 60(%r8),%xmm0 6392 leaq 64(%r8),%r8 6393 vmovd 60(%r13),%xmm1 6394 leaq 64(%r13),%r13 6395 vmovd 60(%r9),%xmm2 6396 leaq 64(%r9),%r9 6397 vpinsrd $1,60(%r14),%xmm5,%xmm5 6398 leaq 64(%r14),%r14 6399 vpinsrd $1,60(%r10),%xmm0,%xmm0 6400 leaq 64(%r10),%r10 6401 vpinsrd $1,60(%r15),%xmm1,%xmm1 6402 leaq 64(%r15),%r15 6403 vpunpckldq %ymm1,%ymm5,%ymm5 6404 vpinsrd $1,60(%r11),%xmm2,%xmm2 6405 leaq 64(%r11),%r11 6406 vpunpckldq %ymm2,%ymm0,%ymm0 6407 vinserti128 $1,%xmm0,%ymm5,%ymm5 6408 vpshufb %ymm6,%ymm5,%ymm5 6409 vpsrld $6,%ymm13,%ymm7 6410 vpslld $26,%ymm13,%ymm2 6411 vmovdqu %ymm5,480-256-128(%rbx) 6412 vpaddd %ymm8,%ymm5,%ymm5 6413 6414 vpsrld $11,%ymm13,%ymm1 6415 vpxor %ymm2,%ymm7,%ymm7 6416 vpslld $21,%ymm13,%ymm2 6417 vpaddd 96(%rbp),%ymm5,%ymm5 6418 vpxor %ymm1,%ymm7,%ymm7 6419 6420 vpsrld $25,%ymm13,%ymm1 6421 vpxor %ymm2,%ymm7,%ymm7 6422 prefetcht0 63(%r12) 6423 vpslld $7,%ymm13,%ymm2 6424 vpandn %ymm15,%ymm13,%ymm0 6425 vpand %ymm14,%ymm13,%ymm4 6426 prefetcht0 63(%r13) 6427 vpxor %ymm1,%ymm7,%ymm7 6428 6429 vpsrld $2,%ymm9,%ymm8 6430 vpxor %ymm2,%ymm7,%ymm7 6431 prefetcht0 63(%r14) 6432 vpslld $30,%ymm9,%ymm1 6433 vpxor %ymm4,%ymm0,%ymm0 6434 vpxor %ymm9,%ymm10,%ymm4 6435 prefetcht0 63(%r15) 6436 vpxor %ymm1,%ymm8,%ymm8 6437 vpaddd %ymm7,%ymm5,%ymm5 6438 6439 vpsrld $13,%ymm9,%ymm1 6440 prefetcht0 63(%r8) 6441 vpslld $19,%ymm9,%ymm2 6442 vpaddd %ymm0,%ymm5,%ymm5 6443 vpand %ymm4,%ymm3,%ymm3 6444 prefetcht0 63(%r9) 6445 vpxor %ymm1,%ymm8,%ymm7 6446 6447 vpsrld $22,%ymm9,%ymm1 6448 vpxor %ymm2,%ymm7,%ymm7 6449 prefetcht0 63(%r10) 6450 vpslld $10,%ymm9,%ymm2 6451 vpxor %ymm3,%ymm10,%ymm8 6452 vpaddd %ymm5,%ymm12,%ymm12 6453 prefetcht0 63(%r11) 6454 vpxor %ymm1,%ymm7,%ymm7 6455 vpxor %ymm2,%ymm7,%ymm7 6456 6457 vpaddd %ymm5,%ymm8,%ymm8 6458 vpaddd %ymm7,%ymm8,%ymm8 6459 addq $256,%rbp 6460 vmovdqu 0-128(%rax),%ymm5 6461 movl $3,%ecx 6462 jmp .Loop_16_xx_avx2 6463.align 32 6464.Loop_16_xx_avx2: 6465 vmovdqu 32-128(%rax),%ymm6 6466 vpaddd 288-256-128(%rbx),%ymm5,%ymm5 6467 6468 vpsrld $3,%ymm6,%ymm7 6469 vpsrld $7,%ymm6,%ymm1 6470 vpslld $25,%ymm6,%ymm2 6471 vpxor %ymm1,%ymm7,%ymm7 6472 vpsrld $18,%ymm6,%ymm1 6473 vpxor %ymm2,%ymm7,%ymm7 6474 vpslld $14,%ymm6,%ymm2 6475 vmovdqu 448-256-128(%rbx),%ymm0 6476 vpsrld $10,%ymm0,%ymm3 6477 6478 vpxor %ymm1,%ymm7,%ymm7 6479 vpsrld $17,%ymm0,%ymm1 6480 vpxor %ymm2,%ymm7,%ymm7 6481 vpslld $15,%ymm0,%ymm2 6482 vpaddd %ymm7,%ymm5,%ymm5 6483 vpxor %ymm1,%ymm3,%ymm7 6484 vpsrld $19,%ymm0,%ymm1 6485 vpxor %ymm2,%ymm7,%ymm7 6486 vpslld $13,%ymm0,%ymm2 6487 vpxor %ymm1,%ymm7,%ymm7 6488 vpxor %ymm2,%ymm7,%ymm7 6489 vpaddd %ymm7,%ymm5,%ymm5 6490 vpsrld $6,%ymm12,%ymm7 6491 vpslld $26,%ymm12,%ymm2 6492 vmovdqu %ymm5,0-128(%rax) 6493 vpaddd %ymm15,%ymm5,%ymm5 6494 6495 vpsrld $11,%ymm12,%ymm1 6496 vpxor %ymm2,%ymm7,%ymm7 6497 vpslld $21,%ymm12,%ymm2 6498 vpaddd -128(%rbp),%ymm5,%ymm5 6499 vpxor %ymm1,%ymm7,%ymm7 6500 6501 vpsrld $25,%ymm12,%ymm1 6502 vpxor %ymm2,%ymm7,%ymm7 6503 6504 vpslld $7,%ymm12,%ymm2 6505 vpandn %ymm14,%ymm12,%ymm0 6506 vpand %ymm13,%ymm12,%ymm3 6507 6508 vpxor %ymm1,%ymm7,%ymm7 6509 6510 vpsrld $2,%ymm8,%ymm15 6511 vpxor %ymm2,%ymm7,%ymm7 6512 6513 vpslld $30,%ymm8,%ymm1 6514 vpxor %ymm3,%ymm0,%ymm0 6515 vpxor %ymm8,%ymm9,%ymm3 6516 6517 vpxor %ymm1,%ymm15,%ymm15 6518 vpaddd %ymm7,%ymm5,%ymm5 6519 6520 vpsrld $13,%ymm8,%ymm1 6521 6522 vpslld $19,%ymm8,%ymm2 6523 vpaddd %ymm0,%ymm5,%ymm5 6524 vpand %ymm3,%ymm4,%ymm4 6525 6526 vpxor %ymm1,%ymm15,%ymm7 6527 6528 vpsrld $22,%ymm8,%ymm1 6529 vpxor %ymm2,%ymm7,%ymm7 6530 6531 vpslld $10,%ymm8,%ymm2 6532 vpxor %ymm4,%ymm9,%ymm15 6533 vpaddd %ymm5,%ymm11,%ymm11 6534 6535 vpxor %ymm1,%ymm7,%ymm7 6536 vpxor %ymm2,%ymm7,%ymm7 6537 6538 vpaddd %ymm5,%ymm15,%ymm15 6539 vpaddd %ymm7,%ymm15,%ymm15 6540 vmovdqu 64-128(%rax),%ymm5 6541 vpaddd 320-256-128(%rbx),%ymm6,%ymm6 6542 6543 vpsrld $3,%ymm5,%ymm7 6544 vpsrld $7,%ymm5,%ymm1 6545 vpslld $25,%ymm5,%ymm2 6546 vpxor %ymm1,%ymm7,%ymm7 6547 vpsrld $18,%ymm5,%ymm1 6548 vpxor %ymm2,%ymm7,%ymm7 6549 vpslld $14,%ymm5,%ymm2 6550 vmovdqu 480-256-128(%rbx),%ymm0 6551 vpsrld $10,%ymm0,%ymm4 6552 6553 vpxor %ymm1,%ymm7,%ymm7 6554 vpsrld $17,%ymm0,%ymm1 6555 vpxor %ymm2,%ymm7,%ymm7 6556 vpslld $15,%ymm0,%ymm2 6557 vpaddd %ymm7,%ymm6,%ymm6 6558 vpxor %ymm1,%ymm4,%ymm7 6559 vpsrld $19,%ymm0,%ymm1 6560 vpxor %ymm2,%ymm7,%ymm7 6561 vpslld $13,%ymm0,%ymm2 6562 vpxor %ymm1,%ymm7,%ymm7 6563 vpxor %ymm2,%ymm7,%ymm7 6564 vpaddd %ymm7,%ymm6,%ymm6 6565 vpsrld $6,%ymm11,%ymm7 6566 vpslld $26,%ymm11,%ymm2 6567 vmovdqu %ymm6,32-128(%rax) 6568 vpaddd %ymm14,%ymm6,%ymm6 6569 6570 vpsrld $11,%ymm11,%ymm1 6571 vpxor %ymm2,%ymm7,%ymm7 6572 vpslld $21,%ymm11,%ymm2 6573 vpaddd -96(%rbp),%ymm6,%ymm6 6574 vpxor %ymm1,%ymm7,%ymm7 6575 6576 vpsrld $25,%ymm11,%ymm1 6577 vpxor %ymm2,%ymm7,%ymm7 6578 6579 vpslld $7,%ymm11,%ymm2 6580 vpandn %ymm13,%ymm11,%ymm0 6581 vpand %ymm12,%ymm11,%ymm4 6582 6583 vpxor %ymm1,%ymm7,%ymm7 6584 6585 vpsrld $2,%ymm15,%ymm14 6586 vpxor %ymm2,%ymm7,%ymm7 6587 6588 vpslld $30,%ymm15,%ymm1 6589 vpxor %ymm4,%ymm0,%ymm0 6590 vpxor %ymm15,%ymm8,%ymm4 6591 6592 vpxor %ymm1,%ymm14,%ymm14 6593 vpaddd %ymm7,%ymm6,%ymm6 6594 6595 vpsrld $13,%ymm15,%ymm1 6596 6597 vpslld $19,%ymm15,%ymm2 6598 vpaddd %ymm0,%ymm6,%ymm6 6599 vpand %ymm4,%ymm3,%ymm3 6600 6601 vpxor %ymm1,%ymm14,%ymm7 6602 6603 vpsrld $22,%ymm15,%ymm1 6604 vpxor %ymm2,%ymm7,%ymm7 6605 6606 vpslld $10,%ymm15,%ymm2 6607 vpxor %ymm3,%ymm8,%ymm14 6608 vpaddd %ymm6,%ymm10,%ymm10 6609 6610 vpxor %ymm1,%ymm7,%ymm7 6611 vpxor %ymm2,%ymm7,%ymm7 6612 6613 vpaddd %ymm6,%ymm14,%ymm14 6614 vpaddd %ymm7,%ymm14,%ymm14 6615 vmovdqu 96-128(%rax),%ymm6 6616 vpaddd 352-256-128(%rbx),%ymm5,%ymm5 6617 6618 vpsrld $3,%ymm6,%ymm7 6619 vpsrld $7,%ymm6,%ymm1 6620 vpslld $25,%ymm6,%ymm2 6621 vpxor %ymm1,%ymm7,%ymm7 6622 vpsrld $18,%ymm6,%ymm1 6623 vpxor %ymm2,%ymm7,%ymm7 6624 vpslld $14,%ymm6,%ymm2 6625 vmovdqu 0-128(%rax),%ymm0 6626 vpsrld $10,%ymm0,%ymm3 6627 6628 vpxor %ymm1,%ymm7,%ymm7 6629 vpsrld $17,%ymm0,%ymm1 6630 vpxor %ymm2,%ymm7,%ymm7 6631 vpslld $15,%ymm0,%ymm2 6632 vpaddd %ymm7,%ymm5,%ymm5 6633 vpxor %ymm1,%ymm3,%ymm7 6634 vpsrld $19,%ymm0,%ymm1 6635 vpxor %ymm2,%ymm7,%ymm7 6636 vpslld $13,%ymm0,%ymm2 6637 vpxor %ymm1,%ymm7,%ymm7 6638 vpxor %ymm2,%ymm7,%ymm7 6639 vpaddd %ymm7,%ymm5,%ymm5 6640 vpsrld $6,%ymm10,%ymm7 6641 vpslld $26,%ymm10,%ymm2 6642 vmovdqu %ymm5,64-128(%rax) 6643 vpaddd %ymm13,%ymm5,%ymm5 6644 6645 vpsrld $11,%ymm10,%ymm1 6646 vpxor %ymm2,%ymm7,%ymm7 6647 vpslld $21,%ymm10,%ymm2 6648 vpaddd -64(%rbp),%ymm5,%ymm5 6649 vpxor %ymm1,%ymm7,%ymm7 6650 6651 vpsrld $25,%ymm10,%ymm1 6652 vpxor %ymm2,%ymm7,%ymm7 6653 6654 vpslld $7,%ymm10,%ymm2 6655 vpandn %ymm12,%ymm10,%ymm0 6656 vpand %ymm11,%ymm10,%ymm3 6657 6658 vpxor %ymm1,%ymm7,%ymm7 6659 6660 vpsrld $2,%ymm14,%ymm13 6661 vpxor %ymm2,%ymm7,%ymm7 6662 6663 vpslld $30,%ymm14,%ymm1 6664 vpxor %ymm3,%ymm0,%ymm0 6665 vpxor %ymm14,%ymm15,%ymm3 6666 6667 vpxor %ymm1,%ymm13,%ymm13 6668 vpaddd %ymm7,%ymm5,%ymm5 6669 6670 vpsrld $13,%ymm14,%ymm1 6671 6672 vpslld $19,%ymm14,%ymm2 6673 vpaddd %ymm0,%ymm5,%ymm5 6674 vpand %ymm3,%ymm4,%ymm4 6675 6676 vpxor %ymm1,%ymm13,%ymm7 6677 6678 vpsrld $22,%ymm14,%ymm1 6679 vpxor %ymm2,%ymm7,%ymm7 6680 6681 vpslld $10,%ymm14,%ymm2 6682 vpxor %ymm4,%ymm15,%ymm13 6683 vpaddd %ymm5,%ymm9,%ymm9 6684 6685 vpxor %ymm1,%ymm7,%ymm7 6686 vpxor %ymm2,%ymm7,%ymm7 6687 6688 vpaddd %ymm5,%ymm13,%ymm13 6689 vpaddd %ymm7,%ymm13,%ymm13 6690 vmovdqu 128-128(%rax),%ymm5 6691 vpaddd 384-256-128(%rbx),%ymm6,%ymm6 6692 6693 vpsrld $3,%ymm5,%ymm7 6694 vpsrld $7,%ymm5,%ymm1 6695 vpslld $25,%ymm5,%ymm2 6696 vpxor %ymm1,%ymm7,%ymm7 6697 vpsrld $18,%ymm5,%ymm1 6698 vpxor %ymm2,%ymm7,%ymm7 6699 vpslld $14,%ymm5,%ymm2 6700 vmovdqu 32-128(%rax),%ymm0 6701 vpsrld $10,%ymm0,%ymm4 6702 6703 vpxor %ymm1,%ymm7,%ymm7 6704 vpsrld $17,%ymm0,%ymm1 6705 vpxor %ymm2,%ymm7,%ymm7 6706 vpslld $15,%ymm0,%ymm2 6707 vpaddd %ymm7,%ymm6,%ymm6 6708 vpxor %ymm1,%ymm4,%ymm7 6709 vpsrld $19,%ymm0,%ymm1 6710 vpxor %ymm2,%ymm7,%ymm7 6711 vpslld $13,%ymm0,%ymm2 6712 vpxor %ymm1,%ymm7,%ymm7 6713 vpxor %ymm2,%ymm7,%ymm7 6714 vpaddd %ymm7,%ymm6,%ymm6 6715 vpsrld $6,%ymm9,%ymm7 6716 vpslld $26,%ymm9,%ymm2 6717 vmovdqu %ymm6,96-128(%rax) 6718 vpaddd %ymm12,%ymm6,%ymm6 6719 6720 vpsrld $11,%ymm9,%ymm1 6721 vpxor %ymm2,%ymm7,%ymm7 6722 vpslld $21,%ymm9,%ymm2 6723 vpaddd -32(%rbp),%ymm6,%ymm6 6724 vpxor %ymm1,%ymm7,%ymm7 6725 6726 vpsrld $25,%ymm9,%ymm1 6727 vpxor %ymm2,%ymm7,%ymm7 6728 6729 vpslld $7,%ymm9,%ymm2 6730 vpandn %ymm11,%ymm9,%ymm0 6731 vpand %ymm10,%ymm9,%ymm4 6732 6733 vpxor %ymm1,%ymm7,%ymm7 6734 6735 vpsrld $2,%ymm13,%ymm12 6736 vpxor %ymm2,%ymm7,%ymm7 6737 6738 vpslld $30,%ymm13,%ymm1 6739 vpxor %ymm4,%ymm0,%ymm0 6740 vpxor %ymm13,%ymm14,%ymm4 6741 6742 vpxor %ymm1,%ymm12,%ymm12 6743 vpaddd %ymm7,%ymm6,%ymm6 6744 6745 vpsrld $13,%ymm13,%ymm1 6746 6747 vpslld $19,%ymm13,%ymm2 6748 vpaddd %ymm0,%ymm6,%ymm6 6749 vpand %ymm4,%ymm3,%ymm3 6750 6751 vpxor %ymm1,%ymm12,%ymm7 6752 6753 vpsrld $22,%ymm13,%ymm1 6754 vpxor %ymm2,%ymm7,%ymm7 6755 6756 vpslld $10,%ymm13,%ymm2 6757 vpxor %ymm3,%ymm14,%ymm12 6758 vpaddd %ymm6,%ymm8,%ymm8 6759 6760 vpxor %ymm1,%ymm7,%ymm7 6761 vpxor %ymm2,%ymm7,%ymm7 6762 6763 vpaddd %ymm6,%ymm12,%ymm12 6764 vpaddd %ymm7,%ymm12,%ymm12 6765 vmovdqu 160-128(%rax),%ymm6 6766 vpaddd 416-256-128(%rbx),%ymm5,%ymm5 6767 6768 vpsrld $3,%ymm6,%ymm7 6769 vpsrld $7,%ymm6,%ymm1 6770 vpslld $25,%ymm6,%ymm2 6771 vpxor %ymm1,%ymm7,%ymm7 6772 vpsrld $18,%ymm6,%ymm1 6773 vpxor %ymm2,%ymm7,%ymm7 6774 vpslld $14,%ymm6,%ymm2 6775 vmovdqu 64-128(%rax),%ymm0 6776 vpsrld $10,%ymm0,%ymm3 6777 6778 vpxor %ymm1,%ymm7,%ymm7 6779 vpsrld $17,%ymm0,%ymm1 6780 vpxor %ymm2,%ymm7,%ymm7 6781 vpslld $15,%ymm0,%ymm2 6782 vpaddd %ymm7,%ymm5,%ymm5 6783 vpxor %ymm1,%ymm3,%ymm7 6784 vpsrld $19,%ymm0,%ymm1 6785 vpxor %ymm2,%ymm7,%ymm7 6786 vpslld $13,%ymm0,%ymm2 6787 vpxor %ymm1,%ymm7,%ymm7 6788 vpxor %ymm2,%ymm7,%ymm7 6789 vpaddd %ymm7,%ymm5,%ymm5 6790 vpsrld $6,%ymm8,%ymm7 6791 vpslld $26,%ymm8,%ymm2 6792 vmovdqu %ymm5,128-128(%rax) 6793 vpaddd %ymm11,%ymm5,%ymm5 6794 6795 vpsrld $11,%ymm8,%ymm1 6796 vpxor %ymm2,%ymm7,%ymm7 6797 vpslld $21,%ymm8,%ymm2 6798 vpaddd 0(%rbp),%ymm5,%ymm5 6799 vpxor %ymm1,%ymm7,%ymm7 6800 6801 vpsrld $25,%ymm8,%ymm1 6802 vpxor %ymm2,%ymm7,%ymm7 6803 6804 vpslld $7,%ymm8,%ymm2 6805 vpandn %ymm10,%ymm8,%ymm0 6806 vpand %ymm9,%ymm8,%ymm3 6807 6808 vpxor %ymm1,%ymm7,%ymm7 6809 6810 vpsrld $2,%ymm12,%ymm11 6811 vpxor %ymm2,%ymm7,%ymm7 6812 6813 vpslld $30,%ymm12,%ymm1 6814 vpxor %ymm3,%ymm0,%ymm0 6815 vpxor %ymm12,%ymm13,%ymm3 6816 6817 vpxor %ymm1,%ymm11,%ymm11 6818 vpaddd %ymm7,%ymm5,%ymm5 6819 6820 vpsrld $13,%ymm12,%ymm1 6821 6822 vpslld $19,%ymm12,%ymm2 6823 vpaddd %ymm0,%ymm5,%ymm5 6824 vpand %ymm3,%ymm4,%ymm4 6825 6826 vpxor %ymm1,%ymm11,%ymm7 6827 6828 vpsrld $22,%ymm12,%ymm1 6829 vpxor %ymm2,%ymm7,%ymm7 6830 6831 vpslld $10,%ymm12,%ymm2 6832 vpxor %ymm4,%ymm13,%ymm11 6833 vpaddd %ymm5,%ymm15,%ymm15 6834 6835 vpxor %ymm1,%ymm7,%ymm7 6836 vpxor %ymm2,%ymm7,%ymm7 6837 6838 vpaddd %ymm5,%ymm11,%ymm11 6839 vpaddd %ymm7,%ymm11,%ymm11 6840 vmovdqu 192-128(%rax),%ymm5 6841 vpaddd 448-256-128(%rbx),%ymm6,%ymm6 6842 6843 vpsrld $3,%ymm5,%ymm7 6844 vpsrld $7,%ymm5,%ymm1 6845 vpslld $25,%ymm5,%ymm2 6846 vpxor %ymm1,%ymm7,%ymm7 6847 vpsrld $18,%ymm5,%ymm1 6848 vpxor %ymm2,%ymm7,%ymm7 6849 vpslld $14,%ymm5,%ymm2 6850 vmovdqu 96-128(%rax),%ymm0 6851 vpsrld $10,%ymm0,%ymm4 6852 6853 vpxor %ymm1,%ymm7,%ymm7 6854 vpsrld $17,%ymm0,%ymm1 6855 vpxor %ymm2,%ymm7,%ymm7 6856 vpslld $15,%ymm0,%ymm2 6857 vpaddd %ymm7,%ymm6,%ymm6 6858 vpxor %ymm1,%ymm4,%ymm7 6859 vpsrld $19,%ymm0,%ymm1 6860 vpxor %ymm2,%ymm7,%ymm7 6861 vpslld $13,%ymm0,%ymm2 6862 vpxor %ymm1,%ymm7,%ymm7 6863 vpxor %ymm2,%ymm7,%ymm7 6864 vpaddd %ymm7,%ymm6,%ymm6 6865 vpsrld $6,%ymm15,%ymm7 6866 vpslld $26,%ymm15,%ymm2 6867 vmovdqu %ymm6,160-128(%rax) 6868 vpaddd %ymm10,%ymm6,%ymm6 6869 6870 vpsrld $11,%ymm15,%ymm1 6871 vpxor %ymm2,%ymm7,%ymm7 6872 vpslld $21,%ymm15,%ymm2 6873 vpaddd 32(%rbp),%ymm6,%ymm6 6874 vpxor %ymm1,%ymm7,%ymm7 6875 6876 vpsrld $25,%ymm15,%ymm1 6877 vpxor %ymm2,%ymm7,%ymm7 6878 6879 vpslld $7,%ymm15,%ymm2 6880 vpandn %ymm9,%ymm15,%ymm0 6881 vpand %ymm8,%ymm15,%ymm4 6882 6883 vpxor %ymm1,%ymm7,%ymm7 6884 6885 vpsrld $2,%ymm11,%ymm10 6886 vpxor %ymm2,%ymm7,%ymm7 6887 6888 vpslld $30,%ymm11,%ymm1 6889 vpxor %ymm4,%ymm0,%ymm0 6890 vpxor %ymm11,%ymm12,%ymm4 6891 6892 vpxor %ymm1,%ymm10,%ymm10 6893 vpaddd %ymm7,%ymm6,%ymm6 6894 6895 vpsrld $13,%ymm11,%ymm1 6896 6897 vpslld $19,%ymm11,%ymm2 6898 vpaddd %ymm0,%ymm6,%ymm6 6899 vpand %ymm4,%ymm3,%ymm3 6900 6901 vpxor %ymm1,%ymm10,%ymm7 6902 6903 vpsrld $22,%ymm11,%ymm1 6904 vpxor %ymm2,%ymm7,%ymm7 6905 6906 vpslld $10,%ymm11,%ymm2 6907 vpxor %ymm3,%ymm12,%ymm10 6908 vpaddd %ymm6,%ymm14,%ymm14 6909 6910 vpxor %ymm1,%ymm7,%ymm7 6911 vpxor %ymm2,%ymm7,%ymm7 6912 6913 vpaddd %ymm6,%ymm10,%ymm10 6914 vpaddd %ymm7,%ymm10,%ymm10 6915 vmovdqu 224-128(%rax),%ymm6 6916 vpaddd 480-256-128(%rbx),%ymm5,%ymm5 6917 6918 vpsrld $3,%ymm6,%ymm7 6919 vpsrld $7,%ymm6,%ymm1 6920 vpslld $25,%ymm6,%ymm2 6921 vpxor %ymm1,%ymm7,%ymm7 6922 vpsrld $18,%ymm6,%ymm1 6923 vpxor %ymm2,%ymm7,%ymm7 6924 vpslld $14,%ymm6,%ymm2 6925 vmovdqu 128-128(%rax),%ymm0 6926 vpsrld $10,%ymm0,%ymm3 6927 6928 vpxor %ymm1,%ymm7,%ymm7 6929 vpsrld $17,%ymm0,%ymm1 6930 vpxor %ymm2,%ymm7,%ymm7 6931 vpslld $15,%ymm0,%ymm2 6932 vpaddd %ymm7,%ymm5,%ymm5 6933 vpxor %ymm1,%ymm3,%ymm7 6934 vpsrld $19,%ymm0,%ymm1 6935 vpxor %ymm2,%ymm7,%ymm7 6936 vpslld $13,%ymm0,%ymm2 6937 vpxor %ymm1,%ymm7,%ymm7 6938 vpxor %ymm2,%ymm7,%ymm7 6939 vpaddd %ymm7,%ymm5,%ymm5 6940 vpsrld $6,%ymm14,%ymm7 6941 vpslld $26,%ymm14,%ymm2 6942 vmovdqu %ymm5,192-128(%rax) 6943 vpaddd %ymm9,%ymm5,%ymm5 6944 6945 vpsrld $11,%ymm14,%ymm1 6946 vpxor %ymm2,%ymm7,%ymm7 6947 vpslld $21,%ymm14,%ymm2 6948 vpaddd 64(%rbp),%ymm5,%ymm5 6949 vpxor %ymm1,%ymm7,%ymm7 6950 6951 vpsrld $25,%ymm14,%ymm1 6952 vpxor %ymm2,%ymm7,%ymm7 6953 6954 vpslld $7,%ymm14,%ymm2 6955 vpandn %ymm8,%ymm14,%ymm0 6956 vpand %ymm15,%ymm14,%ymm3 6957 6958 vpxor %ymm1,%ymm7,%ymm7 6959 6960 vpsrld $2,%ymm10,%ymm9 6961 vpxor %ymm2,%ymm7,%ymm7 6962 6963 vpslld $30,%ymm10,%ymm1 6964 vpxor %ymm3,%ymm0,%ymm0 6965 vpxor %ymm10,%ymm11,%ymm3 6966 6967 vpxor %ymm1,%ymm9,%ymm9 6968 vpaddd %ymm7,%ymm5,%ymm5 6969 6970 vpsrld $13,%ymm10,%ymm1 6971 6972 vpslld $19,%ymm10,%ymm2 6973 vpaddd %ymm0,%ymm5,%ymm5 6974 vpand %ymm3,%ymm4,%ymm4 6975 6976 vpxor %ymm1,%ymm9,%ymm7 6977 6978 vpsrld $22,%ymm10,%ymm1 6979 vpxor %ymm2,%ymm7,%ymm7 6980 6981 vpslld $10,%ymm10,%ymm2 6982 vpxor %ymm4,%ymm11,%ymm9 6983 vpaddd %ymm5,%ymm13,%ymm13 6984 6985 vpxor %ymm1,%ymm7,%ymm7 6986 vpxor %ymm2,%ymm7,%ymm7 6987 6988 vpaddd %ymm5,%ymm9,%ymm9 6989 vpaddd %ymm7,%ymm9,%ymm9 6990 vmovdqu 256-256-128(%rbx),%ymm5 6991 vpaddd 0-128(%rax),%ymm6,%ymm6 6992 6993 vpsrld $3,%ymm5,%ymm7 6994 vpsrld $7,%ymm5,%ymm1 6995 vpslld $25,%ymm5,%ymm2 6996 vpxor %ymm1,%ymm7,%ymm7 6997 vpsrld $18,%ymm5,%ymm1 6998 vpxor %ymm2,%ymm7,%ymm7 6999 vpslld $14,%ymm5,%ymm2 7000 vmovdqu 160-128(%rax),%ymm0 7001 vpsrld $10,%ymm0,%ymm4 7002 7003 vpxor %ymm1,%ymm7,%ymm7 7004 vpsrld $17,%ymm0,%ymm1 7005 vpxor %ymm2,%ymm7,%ymm7 7006 vpslld $15,%ymm0,%ymm2 7007 vpaddd %ymm7,%ymm6,%ymm6 7008 vpxor %ymm1,%ymm4,%ymm7 7009 vpsrld $19,%ymm0,%ymm1 7010 vpxor %ymm2,%ymm7,%ymm7 7011 vpslld $13,%ymm0,%ymm2 7012 vpxor %ymm1,%ymm7,%ymm7 7013 vpxor %ymm2,%ymm7,%ymm7 7014 vpaddd %ymm7,%ymm6,%ymm6 7015 vpsrld $6,%ymm13,%ymm7 7016 vpslld $26,%ymm13,%ymm2 7017 vmovdqu %ymm6,224-128(%rax) 7018 vpaddd %ymm8,%ymm6,%ymm6 7019 7020 vpsrld $11,%ymm13,%ymm1 7021 vpxor %ymm2,%ymm7,%ymm7 7022 vpslld $21,%ymm13,%ymm2 7023 vpaddd 96(%rbp),%ymm6,%ymm6 7024 vpxor %ymm1,%ymm7,%ymm7 7025 7026 vpsrld $25,%ymm13,%ymm1 7027 vpxor %ymm2,%ymm7,%ymm7 7028 7029 vpslld $7,%ymm13,%ymm2 7030 vpandn %ymm15,%ymm13,%ymm0 7031 vpand %ymm14,%ymm13,%ymm4 7032 7033 vpxor %ymm1,%ymm7,%ymm7 7034 7035 vpsrld $2,%ymm9,%ymm8 7036 vpxor %ymm2,%ymm7,%ymm7 7037 7038 vpslld $30,%ymm9,%ymm1 7039 vpxor %ymm4,%ymm0,%ymm0 7040 vpxor %ymm9,%ymm10,%ymm4 7041 7042 vpxor %ymm1,%ymm8,%ymm8 7043 vpaddd %ymm7,%ymm6,%ymm6 7044 7045 vpsrld $13,%ymm9,%ymm1 7046 7047 vpslld $19,%ymm9,%ymm2 7048 vpaddd %ymm0,%ymm6,%ymm6 7049 vpand %ymm4,%ymm3,%ymm3 7050 7051 vpxor %ymm1,%ymm8,%ymm7 7052 7053 vpsrld $22,%ymm9,%ymm1 7054 vpxor %ymm2,%ymm7,%ymm7 7055 7056 vpslld $10,%ymm9,%ymm2 7057 vpxor %ymm3,%ymm10,%ymm8 7058 vpaddd %ymm6,%ymm12,%ymm12 7059 7060 vpxor %ymm1,%ymm7,%ymm7 7061 vpxor %ymm2,%ymm7,%ymm7 7062 7063 vpaddd %ymm6,%ymm8,%ymm8 7064 vpaddd %ymm7,%ymm8,%ymm8 7065 addq $256,%rbp 7066 vmovdqu 288-256-128(%rbx),%ymm6 7067 vpaddd 32-128(%rax),%ymm5,%ymm5 7068 7069 vpsrld $3,%ymm6,%ymm7 7070 vpsrld $7,%ymm6,%ymm1 7071 vpslld $25,%ymm6,%ymm2 7072 vpxor %ymm1,%ymm7,%ymm7 7073 vpsrld $18,%ymm6,%ymm1 7074 vpxor %ymm2,%ymm7,%ymm7 7075 vpslld $14,%ymm6,%ymm2 7076 vmovdqu 192-128(%rax),%ymm0 7077 vpsrld $10,%ymm0,%ymm3 7078 7079 vpxor %ymm1,%ymm7,%ymm7 7080 vpsrld $17,%ymm0,%ymm1 7081 vpxor %ymm2,%ymm7,%ymm7 7082 vpslld $15,%ymm0,%ymm2 7083 vpaddd %ymm7,%ymm5,%ymm5 7084 vpxor %ymm1,%ymm3,%ymm7 7085 vpsrld $19,%ymm0,%ymm1 7086 vpxor %ymm2,%ymm7,%ymm7 7087 vpslld $13,%ymm0,%ymm2 7088 vpxor %ymm1,%ymm7,%ymm7 7089 vpxor %ymm2,%ymm7,%ymm7 7090 vpaddd %ymm7,%ymm5,%ymm5 7091 vpsrld $6,%ymm12,%ymm7 7092 vpslld $26,%ymm12,%ymm2 7093 vmovdqu %ymm5,256-256-128(%rbx) 7094 vpaddd %ymm15,%ymm5,%ymm5 7095 7096 vpsrld $11,%ymm12,%ymm1 7097 vpxor %ymm2,%ymm7,%ymm7 7098 vpslld $21,%ymm12,%ymm2 7099 vpaddd -128(%rbp),%ymm5,%ymm5 7100 vpxor %ymm1,%ymm7,%ymm7 7101 7102 vpsrld $25,%ymm12,%ymm1 7103 vpxor %ymm2,%ymm7,%ymm7 7104 7105 vpslld $7,%ymm12,%ymm2 7106 vpandn %ymm14,%ymm12,%ymm0 7107 vpand %ymm13,%ymm12,%ymm3 7108 7109 vpxor %ymm1,%ymm7,%ymm7 7110 7111 vpsrld $2,%ymm8,%ymm15 7112 vpxor %ymm2,%ymm7,%ymm7 7113 7114 vpslld $30,%ymm8,%ymm1 7115 vpxor %ymm3,%ymm0,%ymm0 7116 vpxor %ymm8,%ymm9,%ymm3 7117 7118 vpxor %ymm1,%ymm15,%ymm15 7119 vpaddd %ymm7,%ymm5,%ymm5 7120 7121 vpsrld $13,%ymm8,%ymm1 7122 7123 vpslld $19,%ymm8,%ymm2 7124 vpaddd %ymm0,%ymm5,%ymm5 7125 vpand %ymm3,%ymm4,%ymm4 7126 7127 vpxor %ymm1,%ymm15,%ymm7 7128 7129 vpsrld $22,%ymm8,%ymm1 7130 vpxor %ymm2,%ymm7,%ymm7 7131 7132 vpslld $10,%ymm8,%ymm2 7133 vpxor %ymm4,%ymm9,%ymm15 7134 vpaddd %ymm5,%ymm11,%ymm11 7135 7136 vpxor %ymm1,%ymm7,%ymm7 7137 vpxor %ymm2,%ymm7,%ymm7 7138 7139 vpaddd %ymm5,%ymm15,%ymm15 7140 vpaddd %ymm7,%ymm15,%ymm15 7141 vmovdqu 320-256-128(%rbx),%ymm5 7142 vpaddd 64-128(%rax),%ymm6,%ymm6 7143 7144 vpsrld $3,%ymm5,%ymm7 7145 vpsrld $7,%ymm5,%ymm1 7146 vpslld $25,%ymm5,%ymm2 7147 vpxor %ymm1,%ymm7,%ymm7 7148 vpsrld $18,%ymm5,%ymm1 7149 vpxor %ymm2,%ymm7,%ymm7 7150 vpslld $14,%ymm5,%ymm2 7151 vmovdqu 224-128(%rax),%ymm0 7152 vpsrld $10,%ymm0,%ymm4 7153 7154 vpxor %ymm1,%ymm7,%ymm7 7155 vpsrld $17,%ymm0,%ymm1 7156 vpxor %ymm2,%ymm7,%ymm7 7157 vpslld $15,%ymm0,%ymm2 7158 vpaddd %ymm7,%ymm6,%ymm6 7159 vpxor %ymm1,%ymm4,%ymm7 7160 vpsrld $19,%ymm0,%ymm1 7161 vpxor %ymm2,%ymm7,%ymm7 7162 vpslld $13,%ymm0,%ymm2 7163 vpxor %ymm1,%ymm7,%ymm7 7164 vpxor %ymm2,%ymm7,%ymm7 7165 vpaddd %ymm7,%ymm6,%ymm6 7166 vpsrld $6,%ymm11,%ymm7 7167 vpslld $26,%ymm11,%ymm2 7168 vmovdqu %ymm6,288-256-128(%rbx) 7169 vpaddd %ymm14,%ymm6,%ymm6 7170 7171 vpsrld $11,%ymm11,%ymm1 7172 vpxor %ymm2,%ymm7,%ymm7 7173 vpslld $21,%ymm11,%ymm2 7174 vpaddd -96(%rbp),%ymm6,%ymm6 7175 vpxor %ymm1,%ymm7,%ymm7 7176 7177 vpsrld $25,%ymm11,%ymm1 7178 vpxor %ymm2,%ymm7,%ymm7 7179 7180 vpslld $7,%ymm11,%ymm2 7181 vpandn %ymm13,%ymm11,%ymm0 7182 vpand %ymm12,%ymm11,%ymm4 7183 7184 vpxor %ymm1,%ymm7,%ymm7 7185 7186 vpsrld $2,%ymm15,%ymm14 7187 vpxor %ymm2,%ymm7,%ymm7 7188 7189 vpslld $30,%ymm15,%ymm1 7190 vpxor %ymm4,%ymm0,%ymm0 7191 vpxor %ymm15,%ymm8,%ymm4 7192 7193 vpxor %ymm1,%ymm14,%ymm14 7194 vpaddd %ymm7,%ymm6,%ymm6 7195 7196 vpsrld $13,%ymm15,%ymm1 7197 7198 vpslld $19,%ymm15,%ymm2 7199 vpaddd %ymm0,%ymm6,%ymm6 7200 vpand %ymm4,%ymm3,%ymm3 7201 7202 vpxor %ymm1,%ymm14,%ymm7 7203 7204 vpsrld $22,%ymm15,%ymm1 7205 vpxor %ymm2,%ymm7,%ymm7 7206 7207 vpslld $10,%ymm15,%ymm2 7208 vpxor %ymm3,%ymm8,%ymm14 7209 vpaddd %ymm6,%ymm10,%ymm10 7210 7211 vpxor %ymm1,%ymm7,%ymm7 7212 vpxor %ymm2,%ymm7,%ymm7 7213 7214 vpaddd %ymm6,%ymm14,%ymm14 7215 vpaddd %ymm7,%ymm14,%ymm14 7216 vmovdqu 352-256-128(%rbx),%ymm6 7217 vpaddd 96-128(%rax),%ymm5,%ymm5 7218 7219 vpsrld $3,%ymm6,%ymm7 7220 vpsrld $7,%ymm6,%ymm1 7221 vpslld $25,%ymm6,%ymm2 7222 vpxor %ymm1,%ymm7,%ymm7 7223 vpsrld $18,%ymm6,%ymm1 7224 vpxor %ymm2,%ymm7,%ymm7 7225 vpslld $14,%ymm6,%ymm2 7226 vmovdqu 256-256-128(%rbx),%ymm0 7227 vpsrld $10,%ymm0,%ymm3 7228 7229 vpxor %ymm1,%ymm7,%ymm7 7230 vpsrld $17,%ymm0,%ymm1 7231 vpxor %ymm2,%ymm7,%ymm7 7232 vpslld $15,%ymm0,%ymm2 7233 vpaddd %ymm7,%ymm5,%ymm5 7234 vpxor %ymm1,%ymm3,%ymm7 7235 vpsrld $19,%ymm0,%ymm1 7236 vpxor %ymm2,%ymm7,%ymm7 7237 vpslld $13,%ymm0,%ymm2 7238 vpxor %ymm1,%ymm7,%ymm7 7239 vpxor %ymm2,%ymm7,%ymm7 7240 vpaddd %ymm7,%ymm5,%ymm5 7241 vpsrld $6,%ymm10,%ymm7 7242 vpslld $26,%ymm10,%ymm2 7243 vmovdqu %ymm5,320-256-128(%rbx) 7244 vpaddd %ymm13,%ymm5,%ymm5 7245 7246 vpsrld $11,%ymm10,%ymm1 7247 vpxor %ymm2,%ymm7,%ymm7 7248 vpslld $21,%ymm10,%ymm2 7249 vpaddd -64(%rbp),%ymm5,%ymm5 7250 vpxor %ymm1,%ymm7,%ymm7 7251 7252 vpsrld $25,%ymm10,%ymm1 7253 vpxor %ymm2,%ymm7,%ymm7 7254 7255 vpslld $7,%ymm10,%ymm2 7256 vpandn %ymm12,%ymm10,%ymm0 7257 vpand %ymm11,%ymm10,%ymm3 7258 7259 vpxor %ymm1,%ymm7,%ymm7 7260 7261 vpsrld $2,%ymm14,%ymm13 7262 vpxor %ymm2,%ymm7,%ymm7 7263 7264 vpslld $30,%ymm14,%ymm1 7265 vpxor %ymm3,%ymm0,%ymm0 7266 vpxor %ymm14,%ymm15,%ymm3 7267 7268 vpxor %ymm1,%ymm13,%ymm13 7269 vpaddd %ymm7,%ymm5,%ymm5 7270 7271 vpsrld $13,%ymm14,%ymm1 7272 7273 vpslld $19,%ymm14,%ymm2 7274 vpaddd %ymm0,%ymm5,%ymm5 7275 vpand %ymm3,%ymm4,%ymm4 7276 7277 vpxor %ymm1,%ymm13,%ymm7 7278 7279 vpsrld $22,%ymm14,%ymm1 7280 vpxor %ymm2,%ymm7,%ymm7 7281 7282 vpslld $10,%ymm14,%ymm2 7283 vpxor %ymm4,%ymm15,%ymm13 7284 vpaddd %ymm5,%ymm9,%ymm9 7285 7286 vpxor %ymm1,%ymm7,%ymm7 7287 vpxor %ymm2,%ymm7,%ymm7 7288 7289 vpaddd %ymm5,%ymm13,%ymm13 7290 vpaddd %ymm7,%ymm13,%ymm13 7291 vmovdqu 384-256-128(%rbx),%ymm5 7292 vpaddd 128-128(%rax),%ymm6,%ymm6 7293 7294 vpsrld $3,%ymm5,%ymm7 7295 vpsrld $7,%ymm5,%ymm1 7296 vpslld $25,%ymm5,%ymm2 7297 vpxor %ymm1,%ymm7,%ymm7 7298 vpsrld $18,%ymm5,%ymm1 7299 vpxor %ymm2,%ymm7,%ymm7 7300 vpslld $14,%ymm5,%ymm2 7301 vmovdqu 288-256-128(%rbx),%ymm0 7302 vpsrld $10,%ymm0,%ymm4 7303 7304 vpxor %ymm1,%ymm7,%ymm7 7305 vpsrld $17,%ymm0,%ymm1 7306 vpxor %ymm2,%ymm7,%ymm7 7307 vpslld $15,%ymm0,%ymm2 7308 vpaddd %ymm7,%ymm6,%ymm6 7309 vpxor %ymm1,%ymm4,%ymm7 7310 vpsrld $19,%ymm0,%ymm1 7311 vpxor %ymm2,%ymm7,%ymm7 7312 vpslld $13,%ymm0,%ymm2 7313 vpxor %ymm1,%ymm7,%ymm7 7314 vpxor %ymm2,%ymm7,%ymm7 7315 vpaddd %ymm7,%ymm6,%ymm6 7316 vpsrld $6,%ymm9,%ymm7 7317 vpslld $26,%ymm9,%ymm2 7318 vmovdqu %ymm6,352-256-128(%rbx) 7319 vpaddd %ymm12,%ymm6,%ymm6 7320 7321 vpsrld $11,%ymm9,%ymm1 7322 vpxor %ymm2,%ymm7,%ymm7 7323 vpslld $21,%ymm9,%ymm2 7324 vpaddd -32(%rbp),%ymm6,%ymm6 7325 vpxor %ymm1,%ymm7,%ymm7 7326 7327 vpsrld $25,%ymm9,%ymm1 7328 vpxor %ymm2,%ymm7,%ymm7 7329 7330 vpslld $7,%ymm9,%ymm2 7331 vpandn %ymm11,%ymm9,%ymm0 7332 vpand %ymm10,%ymm9,%ymm4 7333 7334 vpxor %ymm1,%ymm7,%ymm7 7335 7336 vpsrld $2,%ymm13,%ymm12 7337 vpxor %ymm2,%ymm7,%ymm7 7338 7339 vpslld $30,%ymm13,%ymm1 7340 vpxor %ymm4,%ymm0,%ymm0 7341 vpxor %ymm13,%ymm14,%ymm4 7342 7343 vpxor %ymm1,%ymm12,%ymm12 7344 vpaddd %ymm7,%ymm6,%ymm6 7345 7346 vpsrld $13,%ymm13,%ymm1 7347 7348 vpslld $19,%ymm13,%ymm2 7349 vpaddd %ymm0,%ymm6,%ymm6 7350 vpand %ymm4,%ymm3,%ymm3 7351 7352 vpxor %ymm1,%ymm12,%ymm7 7353 7354 vpsrld $22,%ymm13,%ymm1 7355 vpxor %ymm2,%ymm7,%ymm7 7356 7357 vpslld $10,%ymm13,%ymm2 7358 vpxor %ymm3,%ymm14,%ymm12 7359 vpaddd %ymm6,%ymm8,%ymm8 7360 7361 vpxor %ymm1,%ymm7,%ymm7 7362 vpxor %ymm2,%ymm7,%ymm7 7363 7364 vpaddd %ymm6,%ymm12,%ymm12 7365 vpaddd %ymm7,%ymm12,%ymm12 7366 vmovdqu 416-256-128(%rbx),%ymm6 7367 vpaddd 160-128(%rax),%ymm5,%ymm5 7368 7369 vpsrld $3,%ymm6,%ymm7 7370 vpsrld $7,%ymm6,%ymm1 7371 vpslld $25,%ymm6,%ymm2 7372 vpxor %ymm1,%ymm7,%ymm7 7373 vpsrld $18,%ymm6,%ymm1 7374 vpxor %ymm2,%ymm7,%ymm7 7375 vpslld $14,%ymm6,%ymm2 7376 vmovdqu 320-256-128(%rbx),%ymm0 7377 vpsrld $10,%ymm0,%ymm3 7378 7379 vpxor %ymm1,%ymm7,%ymm7 7380 vpsrld $17,%ymm0,%ymm1 7381 vpxor %ymm2,%ymm7,%ymm7 7382 vpslld $15,%ymm0,%ymm2 7383 vpaddd %ymm7,%ymm5,%ymm5 7384 vpxor %ymm1,%ymm3,%ymm7 7385 vpsrld $19,%ymm0,%ymm1 7386 vpxor %ymm2,%ymm7,%ymm7 7387 vpslld $13,%ymm0,%ymm2 7388 vpxor %ymm1,%ymm7,%ymm7 7389 vpxor %ymm2,%ymm7,%ymm7 7390 vpaddd %ymm7,%ymm5,%ymm5 7391 vpsrld $6,%ymm8,%ymm7 7392 vpslld $26,%ymm8,%ymm2 7393 vmovdqu %ymm5,384-256-128(%rbx) 7394 vpaddd %ymm11,%ymm5,%ymm5 7395 7396 vpsrld $11,%ymm8,%ymm1 7397 vpxor %ymm2,%ymm7,%ymm7 7398 vpslld $21,%ymm8,%ymm2 7399 vpaddd 0(%rbp),%ymm5,%ymm5 7400 vpxor %ymm1,%ymm7,%ymm7 7401 7402 vpsrld $25,%ymm8,%ymm1 7403 vpxor %ymm2,%ymm7,%ymm7 7404 7405 vpslld $7,%ymm8,%ymm2 7406 vpandn %ymm10,%ymm8,%ymm0 7407 vpand %ymm9,%ymm8,%ymm3 7408 7409 vpxor %ymm1,%ymm7,%ymm7 7410 7411 vpsrld $2,%ymm12,%ymm11 7412 vpxor %ymm2,%ymm7,%ymm7 7413 7414 vpslld $30,%ymm12,%ymm1 7415 vpxor %ymm3,%ymm0,%ymm0 7416 vpxor %ymm12,%ymm13,%ymm3 7417 7418 vpxor %ymm1,%ymm11,%ymm11 7419 vpaddd %ymm7,%ymm5,%ymm5 7420 7421 vpsrld $13,%ymm12,%ymm1 7422 7423 vpslld $19,%ymm12,%ymm2 7424 vpaddd %ymm0,%ymm5,%ymm5 7425 vpand %ymm3,%ymm4,%ymm4 7426 7427 vpxor %ymm1,%ymm11,%ymm7 7428 7429 vpsrld $22,%ymm12,%ymm1 7430 vpxor %ymm2,%ymm7,%ymm7 7431 7432 vpslld $10,%ymm12,%ymm2 7433 vpxor %ymm4,%ymm13,%ymm11 7434 vpaddd %ymm5,%ymm15,%ymm15 7435 7436 vpxor %ymm1,%ymm7,%ymm7 7437 vpxor %ymm2,%ymm7,%ymm7 7438 7439 vpaddd %ymm5,%ymm11,%ymm11 7440 vpaddd %ymm7,%ymm11,%ymm11 7441 vmovdqu 448-256-128(%rbx),%ymm5 7442 vpaddd 192-128(%rax),%ymm6,%ymm6 7443 7444 vpsrld $3,%ymm5,%ymm7 7445 vpsrld $7,%ymm5,%ymm1 7446 vpslld $25,%ymm5,%ymm2 7447 vpxor %ymm1,%ymm7,%ymm7 7448 vpsrld $18,%ymm5,%ymm1 7449 vpxor %ymm2,%ymm7,%ymm7 7450 vpslld $14,%ymm5,%ymm2 7451 vmovdqu 352-256-128(%rbx),%ymm0 7452 vpsrld $10,%ymm0,%ymm4 7453 7454 vpxor %ymm1,%ymm7,%ymm7 7455 vpsrld $17,%ymm0,%ymm1 7456 vpxor %ymm2,%ymm7,%ymm7 7457 vpslld $15,%ymm0,%ymm2 7458 vpaddd %ymm7,%ymm6,%ymm6 7459 vpxor %ymm1,%ymm4,%ymm7 7460 vpsrld $19,%ymm0,%ymm1 7461 vpxor %ymm2,%ymm7,%ymm7 7462 vpslld $13,%ymm0,%ymm2 7463 vpxor %ymm1,%ymm7,%ymm7 7464 vpxor %ymm2,%ymm7,%ymm7 7465 vpaddd %ymm7,%ymm6,%ymm6 7466 vpsrld $6,%ymm15,%ymm7 7467 vpslld $26,%ymm15,%ymm2 7468 vmovdqu %ymm6,416-256-128(%rbx) 7469 vpaddd %ymm10,%ymm6,%ymm6 7470 7471 vpsrld $11,%ymm15,%ymm1 7472 vpxor %ymm2,%ymm7,%ymm7 7473 vpslld $21,%ymm15,%ymm2 7474 vpaddd 32(%rbp),%ymm6,%ymm6 7475 vpxor %ymm1,%ymm7,%ymm7 7476 7477 vpsrld $25,%ymm15,%ymm1 7478 vpxor %ymm2,%ymm7,%ymm7 7479 7480 vpslld $7,%ymm15,%ymm2 7481 vpandn %ymm9,%ymm15,%ymm0 7482 vpand %ymm8,%ymm15,%ymm4 7483 7484 vpxor %ymm1,%ymm7,%ymm7 7485 7486 vpsrld $2,%ymm11,%ymm10 7487 vpxor %ymm2,%ymm7,%ymm7 7488 7489 vpslld $30,%ymm11,%ymm1 7490 vpxor %ymm4,%ymm0,%ymm0 7491 vpxor %ymm11,%ymm12,%ymm4 7492 7493 vpxor %ymm1,%ymm10,%ymm10 7494 vpaddd %ymm7,%ymm6,%ymm6 7495 7496 vpsrld $13,%ymm11,%ymm1 7497 7498 vpslld $19,%ymm11,%ymm2 7499 vpaddd %ymm0,%ymm6,%ymm6 7500 vpand %ymm4,%ymm3,%ymm3 7501 7502 vpxor %ymm1,%ymm10,%ymm7 7503 7504 vpsrld $22,%ymm11,%ymm1 7505 vpxor %ymm2,%ymm7,%ymm7 7506 7507 vpslld $10,%ymm11,%ymm2 7508 vpxor %ymm3,%ymm12,%ymm10 7509 vpaddd %ymm6,%ymm14,%ymm14 7510 7511 vpxor %ymm1,%ymm7,%ymm7 7512 vpxor %ymm2,%ymm7,%ymm7 7513 7514 vpaddd %ymm6,%ymm10,%ymm10 7515 vpaddd %ymm7,%ymm10,%ymm10 7516 vmovdqu 480-256-128(%rbx),%ymm6 7517 vpaddd 224-128(%rax),%ymm5,%ymm5 7518 7519 vpsrld $3,%ymm6,%ymm7 7520 vpsrld $7,%ymm6,%ymm1 7521 vpslld $25,%ymm6,%ymm2 7522 vpxor %ymm1,%ymm7,%ymm7 7523 vpsrld $18,%ymm6,%ymm1 7524 vpxor %ymm2,%ymm7,%ymm7 7525 vpslld $14,%ymm6,%ymm2 7526 vmovdqu 384-256-128(%rbx),%ymm0 7527 vpsrld $10,%ymm0,%ymm3 7528 7529 vpxor %ymm1,%ymm7,%ymm7 7530 vpsrld $17,%ymm0,%ymm1 7531 vpxor %ymm2,%ymm7,%ymm7 7532 vpslld $15,%ymm0,%ymm2 7533 vpaddd %ymm7,%ymm5,%ymm5 7534 vpxor %ymm1,%ymm3,%ymm7 7535 vpsrld $19,%ymm0,%ymm1 7536 vpxor %ymm2,%ymm7,%ymm7 7537 vpslld $13,%ymm0,%ymm2 7538 vpxor %ymm1,%ymm7,%ymm7 7539 vpxor %ymm2,%ymm7,%ymm7 7540 vpaddd %ymm7,%ymm5,%ymm5 7541 vpsrld $6,%ymm14,%ymm7 7542 vpslld $26,%ymm14,%ymm2 7543 vmovdqu %ymm5,448-256-128(%rbx) 7544 vpaddd %ymm9,%ymm5,%ymm5 7545 7546 vpsrld $11,%ymm14,%ymm1 7547 vpxor %ymm2,%ymm7,%ymm7 7548 vpslld $21,%ymm14,%ymm2 7549 vpaddd 64(%rbp),%ymm5,%ymm5 7550 vpxor %ymm1,%ymm7,%ymm7 7551 7552 vpsrld $25,%ymm14,%ymm1 7553 vpxor %ymm2,%ymm7,%ymm7 7554 7555 vpslld $7,%ymm14,%ymm2 7556 vpandn %ymm8,%ymm14,%ymm0 7557 vpand %ymm15,%ymm14,%ymm3 7558 7559 vpxor %ymm1,%ymm7,%ymm7 7560 7561 vpsrld $2,%ymm10,%ymm9 7562 vpxor %ymm2,%ymm7,%ymm7 7563 7564 vpslld $30,%ymm10,%ymm1 7565 vpxor %ymm3,%ymm0,%ymm0 7566 vpxor %ymm10,%ymm11,%ymm3 7567 7568 vpxor %ymm1,%ymm9,%ymm9 7569 vpaddd %ymm7,%ymm5,%ymm5 7570 7571 vpsrld $13,%ymm10,%ymm1 7572 7573 vpslld $19,%ymm10,%ymm2 7574 vpaddd %ymm0,%ymm5,%ymm5 7575 vpand %ymm3,%ymm4,%ymm4 7576 7577 vpxor %ymm1,%ymm9,%ymm7 7578 7579 vpsrld $22,%ymm10,%ymm1 7580 vpxor %ymm2,%ymm7,%ymm7 7581 7582 vpslld $10,%ymm10,%ymm2 7583 vpxor %ymm4,%ymm11,%ymm9 7584 vpaddd %ymm5,%ymm13,%ymm13 7585 7586 vpxor %ymm1,%ymm7,%ymm7 7587 vpxor %ymm2,%ymm7,%ymm7 7588 7589 vpaddd %ymm5,%ymm9,%ymm9 7590 vpaddd %ymm7,%ymm9,%ymm9 7591 vmovdqu 0-128(%rax),%ymm5 7592 vpaddd 256-256-128(%rbx),%ymm6,%ymm6 7593 7594 vpsrld $3,%ymm5,%ymm7 7595 vpsrld $7,%ymm5,%ymm1 7596 vpslld $25,%ymm5,%ymm2 7597 vpxor %ymm1,%ymm7,%ymm7 7598 vpsrld $18,%ymm5,%ymm1 7599 vpxor %ymm2,%ymm7,%ymm7 7600 vpslld $14,%ymm5,%ymm2 7601 vmovdqu 416-256-128(%rbx),%ymm0 7602 vpsrld $10,%ymm0,%ymm4 7603 7604 vpxor %ymm1,%ymm7,%ymm7 7605 vpsrld $17,%ymm0,%ymm1 7606 vpxor %ymm2,%ymm7,%ymm7 7607 vpslld $15,%ymm0,%ymm2 7608 vpaddd %ymm7,%ymm6,%ymm6 7609 vpxor %ymm1,%ymm4,%ymm7 7610 vpsrld $19,%ymm0,%ymm1 7611 vpxor %ymm2,%ymm7,%ymm7 7612 vpslld $13,%ymm0,%ymm2 7613 vpxor %ymm1,%ymm7,%ymm7 7614 vpxor %ymm2,%ymm7,%ymm7 7615 vpaddd %ymm7,%ymm6,%ymm6 7616 vpsrld $6,%ymm13,%ymm7 7617 vpslld $26,%ymm13,%ymm2 7618 vmovdqu %ymm6,480-256-128(%rbx) 7619 vpaddd %ymm8,%ymm6,%ymm6 7620 7621 vpsrld $11,%ymm13,%ymm1 7622 vpxor %ymm2,%ymm7,%ymm7 7623 vpslld $21,%ymm13,%ymm2 7624 vpaddd 96(%rbp),%ymm6,%ymm6 7625 vpxor %ymm1,%ymm7,%ymm7 7626 7627 vpsrld $25,%ymm13,%ymm1 7628 vpxor %ymm2,%ymm7,%ymm7 7629 7630 vpslld $7,%ymm13,%ymm2 7631 vpandn %ymm15,%ymm13,%ymm0 7632 vpand %ymm14,%ymm13,%ymm4 7633 7634 vpxor %ymm1,%ymm7,%ymm7 7635 7636 vpsrld $2,%ymm9,%ymm8 7637 vpxor %ymm2,%ymm7,%ymm7 7638 7639 vpslld $30,%ymm9,%ymm1 7640 vpxor %ymm4,%ymm0,%ymm0 7641 vpxor %ymm9,%ymm10,%ymm4 7642 7643 vpxor %ymm1,%ymm8,%ymm8 7644 vpaddd %ymm7,%ymm6,%ymm6 7645 7646 vpsrld $13,%ymm9,%ymm1 7647 7648 vpslld $19,%ymm9,%ymm2 7649 vpaddd %ymm0,%ymm6,%ymm6 7650 vpand %ymm4,%ymm3,%ymm3 7651 7652 vpxor %ymm1,%ymm8,%ymm7 7653 7654 vpsrld $22,%ymm9,%ymm1 7655 vpxor %ymm2,%ymm7,%ymm7 7656 7657 vpslld $10,%ymm9,%ymm2 7658 vpxor %ymm3,%ymm10,%ymm8 7659 vpaddd %ymm6,%ymm12,%ymm12 7660 7661 vpxor %ymm1,%ymm7,%ymm7 7662 vpxor %ymm2,%ymm7,%ymm7 7663 7664 vpaddd %ymm6,%ymm8,%ymm8 7665 vpaddd %ymm7,%ymm8,%ymm8 7666 addq $256,%rbp 7667 decl %ecx 7668 jnz .Loop_16_xx_avx2 7669 7670 movl $1,%ecx 7671 leaq 512(%rsp),%rbx 7672 leaq K256+128(%rip),%rbp 7673 cmpl 0(%rbx),%ecx 7674 cmovgeq %rbp,%r12 7675 cmpl 4(%rbx),%ecx 7676 cmovgeq %rbp,%r13 7677 cmpl 8(%rbx),%ecx 7678 cmovgeq %rbp,%r14 7679 cmpl 12(%rbx),%ecx 7680 cmovgeq %rbp,%r15 7681 cmpl 16(%rbx),%ecx 7682 cmovgeq %rbp,%r8 7683 cmpl 20(%rbx),%ecx 7684 cmovgeq %rbp,%r9 7685 cmpl 24(%rbx),%ecx 7686 cmovgeq %rbp,%r10 7687 cmpl 28(%rbx),%ecx 7688 cmovgeq %rbp,%r11 7689 vmovdqa (%rbx),%ymm7 7690 vpxor %ymm0,%ymm0,%ymm0 7691 vmovdqa %ymm7,%ymm6 7692 vpcmpgtd %ymm0,%ymm6,%ymm6 7693 vpaddd %ymm6,%ymm7,%ymm7 7694 7695 vmovdqu 0-128(%rdi),%ymm0 7696 vpand %ymm6,%ymm8,%ymm8 7697 vmovdqu 32-128(%rdi),%ymm1 7698 vpand %ymm6,%ymm9,%ymm9 7699 vmovdqu 64-128(%rdi),%ymm2 7700 vpand %ymm6,%ymm10,%ymm10 7701 vmovdqu 96-128(%rdi),%ymm5 7702 vpand %ymm6,%ymm11,%ymm11 7703 vpaddd %ymm0,%ymm8,%ymm8 7704 vmovdqu 128-128(%rdi),%ymm0 7705 vpand %ymm6,%ymm12,%ymm12 7706 vpaddd %ymm1,%ymm9,%ymm9 7707 vmovdqu 160-128(%rdi),%ymm1 7708 vpand %ymm6,%ymm13,%ymm13 7709 vpaddd %ymm2,%ymm10,%ymm10 7710 vmovdqu 192-128(%rdi),%ymm2 7711 vpand %ymm6,%ymm14,%ymm14 7712 vpaddd %ymm5,%ymm11,%ymm11 7713 vmovdqu 224-128(%rdi),%ymm5 7714 vpand %ymm6,%ymm15,%ymm15 7715 vpaddd %ymm0,%ymm12,%ymm12 7716 vpaddd %ymm1,%ymm13,%ymm13 7717 vmovdqu %ymm8,0-128(%rdi) 7718 vpaddd %ymm2,%ymm14,%ymm14 7719 vmovdqu %ymm9,32-128(%rdi) 7720 vpaddd %ymm5,%ymm15,%ymm15 7721 vmovdqu %ymm10,64-128(%rdi) 7722 vmovdqu %ymm11,96-128(%rdi) 7723 vmovdqu %ymm12,128-128(%rdi) 7724 vmovdqu %ymm13,160-128(%rdi) 7725 vmovdqu %ymm14,192-128(%rdi) 7726 vmovdqu %ymm15,224-128(%rdi) 7727 7728 vmovdqu %ymm7,(%rbx) 7729 leaq 256+128(%rsp),%rbx 7730 vmovdqu .Lpbswap(%rip),%ymm6 7731 decl %edx 7732 jnz .Loop_avx2 7733 7734 7735 7736 7737 7738 7739 7740.Ldone_avx2: 7741 movq 544(%rsp),%rax 7742 vzeroupper 7743 movq -48(%rax),%r15 7744 movq -40(%rax),%r14 7745 movq -32(%rax),%r13 7746 movq -24(%rax),%r12 7747 movq -16(%rax),%rbp 7748 movq -8(%rax),%rbx 7749 leaq (%rax),%rsp 7750.Lepilogue_avx2: 7751 .byte 0xf3,0xc3 7752.size sha256_multi_block_avx2,.-sha256_multi_block_avx2 7753.align 256 7754K256: 7755.long 1116352408,1116352408,1116352408,1116352408 7756.long 1116352408,1116352408,1116352408,1116352408 7757.long 1899447441,1899447441,1899447441,1899447441 7758.long 1899447441,1899447441,1899447441,1899447441 7759.long 3049323471,3049323471,3049323471,3049323471 7760.long 3049323471,3049323471,3049323471,3049323471 7761.long 3921009573,3921009573,3921009573,3921009573 7762.long 3921009573,3921009573,3921009573,3921009573 7763.long 961987163,961987163,961987163,961987163 7764.long 961987163,961987163,961987163,961987163 7765.long 1508970993,1508970993,1508970993,1508970993 7766.long 1508970993,1508970993,1508970993,1508970993 7767.long 2453635748,2453635748,2453635748,2453635748 7768.long 2453635748,2453635748,2453635748,2453635748 7769.long 2870763221,2870763221,2870763221,2870763221 7770.long 2870763221,2870763221,2870763221,2870763221 7771.long 3624381080,3624381080,3624381080,3624381080 7772.long 3624381080,3624381080,3624381080,3624381080 7773.long 310598401,310598401,310598401,310598401 7774.long 310598401,310598401,310598401,310598401 7775.long 607225278,607225278,607225278,607225278 7776.long 607225278,607225278,607225278,607225278 7777.long 1426881987,1426881987,1426881987,1426881987 7778.long 1426881987,1426881987,1426881987,1426881987 7779.long 1925078388,1925078388,1925078388,1925078388 7780.long 1925078388,1925078388,1925078388,1925078388 7781.long 2162078206,2162078206,2162078206,2162078206 7782.long 2162078206,2162078206,2162078206,2162078206 7783.long 2614888103,2614888103,2614888103,2614888103 7784.long 2614888103,2614888103,2614888103,2614888103 7785.long 3248222580,3248222580,3248222580,3248222580 7786.long 3248222580,3248222580,3248222580,3248222580 7787.long 3835390401,3835390401,3835390401,3835390401 7788.long 3835390401,3835390401,3835390401,3835390401 7789.long 4022224774,4022224774,4022224774,4022224774 7790.long 4022224774,4022224774,4022224774,4022224774 7791.long 264347078,264347078,264347078,264347078 7792.long 264347078,264347078,264347078,264347078 7793.long 604807628,604807628,604807628,604807628 7794.long 604807628,604807628,604807628,604807628 7795.long 770255983,770255983,770255983,770255983 7796.long 770255983,770255983,770255983,770255983 7797.long 1249150122,1249150122,1249150122,1249150122 7798.long 1249150122,1249150122,1249150122,1249150122 7799.long 1555081692,1555081692,1555081692,1555081692 7800.long 1555081692,1555081692,1555081692,1555081692 7801.long 1996064986,1996064986,1996064986,1996064986 7802.long 1996064986,1996064986,1996064986,1996064986 7803.long 2554220882,2554220882,2554220882,2554220882 7804.long 2554220882,2554220882,2554220882,2554220882 7805.long 2821834349,2821834349,2821834349,2821834349 7806.long 2821834349,2821834349,2821834349,2821834349 7807.long 2952996808,2952996808,2952996808,2952996808 7808.long 2952996808,2952996808,2952996808,2952996808 7809.long 3210313671,3210313671,3210313671,3210313671 7810.long 3210313671,3210313671,3210313671,3210313671 7811.long 3336571891,3336571891,3336571891,3336571891 7812.long 3336571891,3336571891,3336571891,3336571891 7813.long 3584528711,3584528711,3584528711,3584528711 7814.long 3584528711,3584528711,3584528711,3584528711 7815.long 113926993,113926993,113926993,113926993 7816.long 113926993,113926993,113926993,113926993 7817.long 338241895,338241895,338241895,338241895 7818.long 338241895,338241895,338241895,338241895 7819.long 666307205,666307205,666307205,666307205 7820.long 666307205,666307205,666307205,666307205 7821.long 773529912,773529912,773529912,773529912 7822.long 773529912,773529912,773529912,773529912 7823.long 1294757372,1294757372,1294757372,1294757372 7824.long 1294757372,1294757372,1294757372,1294757372 7825.long 1396182291,1396182291,1396182291,1396182291 7826.long 1396182291,1396182291,1396182291,1396182291 7827.long 1695183700,1695183700,1695183700,1695183700 7828.long 1695183700,1695183700,1695183700,1695183700 7829.long 1986661051,1986661051,1986661051,1986661051 7830.long 1986661051,1986661051,1986661051,1986661051 7831.long 2177026350,2177026350,2177026350,2177026350 7832.long 2177026350,2177026350,2177026350,2177026350 7833.long 2456956037,2456956037,2456956037,2456956037 7834.long 2456956037,2456956037,2456956037,2456956037 7835.long 2730485921,2730485921,2730485921,2730485921 7836.long 2730485921,2730485921,2730485921,2730485921 7837.long 2820302411,2820302411,2820302411,2820302411 7838.long 2820302411,2820302411,2820302411,2820302411 7839.long 3259730800,3259730800,3259730800,3259730800 7840.long 3259730800,3259730800,3259730800,3259730800 7841.long 3345764771,3345764771,3345764771,3345764771 7842.long 3345764771,3345764771,3345764771,3345764771 7843.long 3516065817,3516065817,3516065817,3516065817 7844.long 3516065817,3516065817,3516065817,3516065817 7845.long 3600352804,3600352804,3600352804,3600352804 7846.long 3600352804,3600352804,3600352804,3600352804 7847.long 4094571909,4094571909,4094571909,4094571909 7848.long 4094571909,4094571909,4094571909,4094571909 7849.long 275423344,275423344,275423344,275423344 7850.long 275423344,275423344,275423344,275423344 7851.long 430227734,430227734,430227734,430227734 7852.long 430227734,430227734,430227734,430227734 7853.long 506948616,506948616,506948616,506948616 7854.long 506948616,506948616,506948616,506948616 7855.long 659060556,659060556,659060556,659060556 7856.long 659060556,659060556,659060556,659060556 7857.long 883997877,883997877,883997877,883997877 7858.long 883997877,883997877,883997877,883997877 7859.long 958139571,958139571,958139571,958139571 7860.long 958139571,958139571,958139571,958139571 7861.long 1322822218,1322822218,1322822218,1322822218 7862.long 1322822218,1322822218,1322822218,1322822218 7863.long 1537002063,1537002063,1537002063,1537002063 7864.long 1537002063,1537002063,1537002063,1537002063 7865.long 1747873779,1747873779,1747873779,1747873779 7866.long 1747873779,1747873779,1747873779,1747873779 7867.long 1955562222,1955562222,1955562222,1955562222 7868.long 1955562222,1955562222,1955562222,1955562222 7869.long 2024104815,2024104815,2024104815,2024104815 7870.long 2024104815,2024104815,2024104815,2024104815 7871.long 2227730452,2227730452,2227730452,2227730452 7872.long 2227730452,2227730452,2227730452,2227730452 7873.long 2361852424,2361852424,2361852424,2361852424 7874.long 2361852424,2361852424,2361852424,2361852424 7875.long 2428436474,2428436474,2428436474,2428436474 7876.long 2428436474,2428436474,2428436474,2428436474 7877.long 2756734187,2756734187,2756734187,2756734187 7878.long 2756734187,2756734187,2756734187,2756734187 7879.long 3204031479,3204031479,3204031479,3204031479 7880.long 3204031479,3204031479,3204031479,3204031479 7881.long 3329325298,3329325298,3329325298,3329325298 7882.long 3329325298,3329325298,3329325298,3329325298 7883.Lpbswap: 7884.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 7885.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 7886K256_shaext: 7887.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 7888.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 7889.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 7890.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 7891.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 7892.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 7893.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 7894.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 7895.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 7896.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 7897.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 7898.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 7899.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 7900.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 7901.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 7902.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 7903.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,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 7904