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