sha1-mb-x86_64.S revision 1.1
1#include <machine/asm.h> 2.text 3 4 5 6.globl sha1_multi_block 7.type sha1_multi_block,@function 8.align 32 9sha1_multi_block: 10 movq OPENSSL_ia32cap_P+4(%rip),%rcx 11 btq $61,%rcx 12 jc _shaext_shortcut 13 movq %rsp,%rax 14 pushq %rbx 15 pushq %rbp 16 subq $288,%rsp 17 andq $-256,%rsp 18 movq %rax,272(%rsp) 19.Lbody: 20 leaq K_XX_XX(%rip),%rbp 21 leaq 256(%rsp),%rbx 22 23.Loop_grande: 24 movl %edx,280(%rsp) 25 xorl %edx,%edx 26 movq 0(%rsi),%r8 27 movl 8(%rsi),%ecx 28 cmpl %edx,%ecx 29 cmovgl %ecx,%edx 30 testl %ecx,%ecx 31 movl %ecx,0(%rbx) 32 cmovleq %rbp,%r8 33 movq 16(%rsi),%r9 34 movl 24(%rsi),%ecx 35 cmpl %edx,%ecx 36 cmovgl %ecx,%edx 37 testl %ecx,%ecx 38 movl %ecx,4(%rbx) 39 cmovleq %rbp,%r9 40 movq 32(%rsi),%r10 41 movl 40(%rsi),%ecx 42 cmpl %edx,%ecx 43 cmovgl %ecx,%edx 44 testl %ecx,%ecx 45 movl %ecx,8(%rbx) 46 cmovleq %rbp,%r10 47 movq 48(%rsi),%r11 48 movl 56(%rsi),%ecx 49 cmpl %edx,%ecx 50 cmovgl %ecx,%edx 51 testl %ecx,%ecx 52 movl %ecx,12(%rbx) 53 cmovleq %rbp,%r11 54 testl %edx,%edx 55 jz .Ldone 56 57 movdqu 0(%rdi),%xmm10 58 leaq 128(%rsp),%rax 59 movdqu 32(%rdi),%xmm11 60 movdqu 64(%rdi),%xmm12 61 movdqu 96(%rdi),%xmm13 62 movdqu 128(%rdi),%xmm14 63 movdqa 96(%rbp),%xmm5 64 movdqa -32(%rbp),%xmm15 65 jmp .Loop 66 67.align 32 68.Loop: 69 movd (%r8),%xmm0 70 leaq 64(%r8),%r8 71 movd (%r9),%xmm2 72 leaq 64(%r9),%r9 73 movd (%r10),%xmm3 74 leaq 64(%r10),%r10 75 movd (%r11),%xmm4 76 leaq 64(%r11),%r11 77 punpckldq %xmm3,%xmm0 78 movd -60(%r8),%xmm1 79 punpckldq %xmm4,%xmm2 80 movd -60(%r9),%xmm9 81 punpckldq %xmm2,%xmm0 82 movd -60(%r10),%xmm8 83.byte 102,15,56,0,197 84 movd -60(%r11),%xmm7 85 punpckldq %xmm8,%xmm1 86 movdqa %xmm10,%xmm8 87 paddd %xmm15,%xmm14 88 punpckldq %xmm7,%xmm9 89 movdqa %xmm11,%xmm7 90 movdqa %xmm11,%xmm6 91 pslld $5,%xmm8 92 pandn %xmm13,%xmm7 93 pand %xmm12,%xmm6 94 punpckldq %xmm9,%xmm1 95 movdqa %xmm10,%xmm9 96 97 movdqa %xmm0,0-128(%rax) 98 paddd %xmm0,%xmm14 99 movd -56(%r8),%xmm2 100 psrld $27,%xmm9 101 pxor %xmm7,%xmm6 102 movdqa %xmm11,%xmm7 103 104 por %xmm9,%xmm8 105 movd -56(%r9),%xmm9 106 pslld $30,%xmm7 107 paddd %xmm6,%xmm14 108 109 psrld $2,%xmm11 110 paddd %xmm8,%xmm14 111.byte 102,15,56,0,205 112 movd -56(%r10),%xmm8 113 por %xmm7,%xmm11 114 movd -56(%r11),%xmm7 115 punpckldq %xmm8,%xmm2 116 movdqa %xmm14,%xmm8 117 paddd %xmm15,%xmm13 118 punpckldq %xmm7,%xmm9 119 movdqa %xmm10,%xmm7 120 movdqa %xmm10,%xmm6 121 pslld $5,%xmm8 122 pandn %xmm12,%xmm7 123 pand %xmm11,%xmm6 124 punpckldq %xmm9,%xmm2 125 movdqa %xmm14,%xmm9 126 127 movdqa %xmm1,16-128(%rax) 128 paddd %xmm1,%xmm13 129 movd -52(%r8),%xmm3 130 psrld $27,%xmm9 131 pxor %xmm7,%xmm6 132 movdqa %xmm10,%xmm7 133 134 por %xmm9,%xmm8 135 movd -52(%r9),%xmm9 136 pslld $30,%xmm7 137 paddd %xmm6,%xmm13 138 139 psrld $2,%xmm10 140 paddd %xmm8,%xmm13 141.byte 102,15,56,0,213 142 movd -52(%r10),%xmm8 143 por %xmm7,%xmm10 144 movd -52(%r11),%xmm7 145 punpckldq %xmm8,%xmm3 146 movdqa %xmm13,%xmm8 147 paddd %xmm15,%xmm12 148 punpckldq %xmm7,%xmm9 149 movdqa %xmm14,%xmm7 150 movdqa %xmm14,%xmm6 151 pslld $5,%xmm8 152 pandn %xmm11,%xmm7 153 pand %xmm10,%xmm6 154 punpckldq %xmm9,%xmm3 155 movdqa %xmm13,%xmm9 156 157 movdqa %xmm2,32-128(%rax) 158 paddd %xmm2,%xmm12 159 movd -48(%r8),%xmm4 160 psrld $27,%xmm9 161 pxor %xmm7,%xmm6 162 movdqa %xmm14,%xmm7 163 164 por %xmm9,%xmm8 165 movd -48(%r9),%xmm9 166 pslld $30,%xmm7 167 paddd %xmm6,%xmm12 168 169 psrld $2,%xmm14 170 paddd %xmm8,%xmm12 171.byte 102,15,56,0,221 172 movd -48(%r10),%xmm8 173 por %xmm7,%xmm14 174 movd -48(%r11),%xmm7 175 punpckldq %xmm8,%xmm4 176 movdqa %xmm12,%xmm8 177 paddd %xmm15,%xmm11 178 punpckldq %xmm7,%xmm9 179 movdqa %xmm13,%xmm7 180 movdqa %xmm13,%xmm6 181 pslld $5,%xmm8 182 pandn %xmm10,%xmm7 183 pand %xmm14,%xmm6 184 punpckldq %xmm9,%xmm4 185 movdqa %xmm12,%xmm9 186 187 movdqa %xmm3,48-128(%rax) 188 paddd %xmm3,%xmm11 189 movd -44(%r8),%xmm0 190 psrld $27,%xmm9 191 pxor %xmm7,%xmm6 192 movdqa %xmm13,%xmm7 193 194 por %xmm9,%xmm8 195 movd -44(%r9),%xmm9 196 pslld $30,%xmm7 197 paddd %xmm6,%xmm11 198 199 psrld $2,%xmm13 200 paddd %xmm8,%xmm11 201.byte 102,15,56,0,229 202 movd -44(%r10),%xmm8 203 por %xmm7,%xmm13 204 movd -44(%r11),%xmm7 205 punpckldq %xmm8,%xmm0 206 movdqa %xmm11,%xmm8 207 paddd %xmm15,%xmm10 208 punpckldq %xmm7,%xmm9 209 movdqa %xmm12,%xmm7 210 movdqa %xmm12,%xmm6 211 pslld $5,%xmm8 212 pandn %xmm14,%xmm7 213 pand %xmm13,%xmm6 214 punpckldq %xmm9,%xmm0 215 movdqa %xmm11,%xmm9 216 217 movdqa %xmm4,64-128(%rax) 218 paddd %xmm4,%xmm10 219 movd -40(%r8),%xmm1 220 psrld $27,%xmm9 221 pxor %xmm7,%xmm6 222 movdqa %xmm12,%xmm7 223 224 por %xmm9,%xmm8 225 movd -40(%r9),%xmm9 226 pslld $30,%xmm7 227 paddd %xmm6,%xmm10 228 229 psrld $2,%xmm12 230 paddd %xmm8,%xmm10 231.byte 102,15,56,0,197 232 movd -40(%r10),%xmm8 233 por %xmm7,%xmm12 234 movd -40(%r11),%xmm7 235 punpckldq %xmm8,%xmm1 236 movdqa %xmm10,%xmm8 237 paddd %xmm15,%xmm14 238 punpckldq %xmm7,%xmm9 239 movdqa %xmm11,%xmm7 240 movdqa %xmm11,%xmm6 241 pslld $5,%xmm8 242 pandn %xmm13,%xmm7 243 pand %xmm12,%xmm6 244 punpckldq %xmm9,%xmm1 245 movdqa %xmm10,%xmm9 246 247 movdqa %xmm0,80-128(%rax) 248 paddd %xmm0,%xmm14 249 movd -36(%r8),%xmm2 250 psrld $27,%xmm9 251 pxor %xmm7,%xmm6 252 movdqa %xmm11,%xmm7 253 254 por %xmm9,%xmm8 255 movd -36(%r9),%xmm9 256 pslld $30,%xmm7 257 paddd %xmm6,%xmm14 258 259 psrld $2,%xmm11 260 paddd %xmm8,%xmm14 261.byte 102,15,56,0,205 262 movd -36(%r10),%xmm8 263 por %xmm7,%xmm11 264 movd -36(%r11),%xmm7 265 punpckldq %xmm8,%xmm2 266 movdqa %xmm14,%xmm8 267 paddd %xmm15,%xmm13 268 punpckldq %xmm7,%xmm9 269 movdqa %xmm10,%xmm7 270 movdqa %xmm10,%xmm6 271 pslld $5,%xmm8 272 pandn %xmm12,%xmm7 273 pand %xmm11,%xmm6 274 punpckldq %xmm9,%xmm2 275 movdqa %xmm14,%xmm9 276 277 movdqa %xmm1,96-128(%rax) 278 paddd %xmm1,%xmm13 279 movd -32(%r8),%xmm3 280 psrld $27,%xmm9 281 pxor %xmm7,%xmm6 282 movdqa %xmm10,%xmm7 283 284 por %xmm9,%xmm8 285 movd -32(%r9),%xmm9 286 pslld $30,%xmm7 287 paddd %xmm6,%xmm13 288 289 psrld $2,%xmm10 290 paddd %xmm8,%xmm13 291.byte 102,15,56,0,213 292 movd -32(%r10),%xmm8 293 por %xmm7,%xmm10 294 movd -32(%r11),%xmm7 295 punpckldq %xmm8,%xmm3 296 movdqa %xmm13,%xmm8 297 paddd %xmm15,%xmm12 298 punpckldq %xmm7,%xmm9 299 movdqa %xmm14,%xmm7 300 movdqa %xmm14,%xmm6 301 pslld $5,%xmm8 302 pandn %xmm11,%xmm7 303 pand %xmm10,%xmm6 304 punpckldq %xmm9,%xmm3 305 movdqa %xmm13,%xmm9 306 307 movdqa %xmm2,112-128(%rax) 308 paddd %xmm2,%xmm12 309 movd -28(%r8),%xmm4 310 psrld $27,%xmm9 311 pxor %xmm7,%xmm6 312 movdqa %xmm14,%xmm7 313 314 por %xmm9,%xmm8 315 movd -28(%r9),%xmm9 316 pslld $30,%xmm7 317 paddd %xmm6,%xmm12 318 319 psrld $2,%xmm14 320 paddd %xmm8,%xmm12 321.byte 102,15,56,0,221 322 movd -28(%r10),%xmm8 323 por %xmm7,%xmm14 324 movd -28(%r11),%xmm7 325 punpckldq %xmm8,%xmm4 326 movdqa %xmm12,%xmm8 327 paddd %xmm15,%xmm11 328 punpckldq %xmm7,%xmm9 329 movdqa %xmm13,%xmm7 330 movdqa %xmm13,%xmm6 331 pslld $5,%xmm8 332 pandn %xmm10,%xmm7 333 pand %xmm14,%xmm6 334 punpckldq %xmm9,%xmm4 335 movdqa %xmm12,%xmm9 336 337 movdqa %xmm3,128-128(%rax) 338 paddd %xmm3,%xmm11 339 movd -24(%r8),%xmm0 340 psrld $27,%xmm9 341 pxor %xmm7,%xmm6 342 movdqa %xmm13,%xmm7 343 344 por %xmm9,%xmm8 345 movd -24(%r9),%xmm9 346 pslld $30,%xmm7 347 paddd %xmm6,%xmm11 348 349 psrld $2,%xmm13 350 paddd %xmm8,%xmm11 351.byte 102,15,56,0,229 352 movd -24(%r10),%xmm8 353 por %xmm7,%xmm13 354 movd -24(%r11),%xmm7 355 punpckldq %xmm8,%xmm0 356 movdqa %xmm11,%xmm8 357 paddd %xmm15,%xmm10 358 punpckldq %xmm7,%xmm9 359 movdqa %xmm12,%xmm7 360 movdqa %xmm12,%xmm6 361 pslld $5,%xmm8 362 pandn %xmm14,%xmm7 363 pand %xmm13,%xmm6 364 punpckldq %xmm9,%xmm0 365 movdqa %xmm11,%xmm9 366 367 movdqa %xmm4,144-128(%rax) 368 paddd %xmm4,%xmm10 369 movd -20(%r8),%xmm1 370 psrld $27,%xmm9 371 pxor %xmm7,%xmm6 372 movdqa %xmm12,%xmm7 373 374 por %xmm9,%xmm8 375 movd -20(%r9),%xmm9 376 pslld $30,%xmm7 377 paddd %xmm6,%xmm10 378 379 psrld $2,%xmm12 380 paddd %xmm8,%xmm10 381.byte 102,15,56,0,197 382 movd -20(%r10),%xmm8 383 por %xmm7,%xmm12 384 movd -20(%r11),%xmm7 385 punpckldq %xmm8,%xmm1 386 movdqa %xmm10,%xmm8 387 paddd %xmm15,%xmm14 388 punpckldq %xmm7,%xmm9 389 movdqa %xmm11,%xmm7 390 movdqa %xmm11,%xmm6 391 pslld $5,%xmm8 392 pandn %xmm13,%xmm7 393 pand %xmm12,%xmm6 394 punpckldq %xmm9,%xmm1 395 movdqa %xmm10,%xmm9 396 397 movdqa %xmm0,160-128(%rax) 398 paddd %xmm0,%xmm14 399 movd -16(%r8),%xmm2 400 psrld $27,%xmm9 401 pxor %xmm7,%xmm6 402 movdqa %xmm11,%xmm7 403 404 por %xmm9,%xmm8 405 movd -16(%r9),%xmm9 406 pslld $30,%xmm7 407 paddd %xmm6,%xmm14 408 409 psrld $2,%xmm11 410 paddd %xmm8,%xmm14 411.byte 102,15,56,0,205 412 movd -16(%r10),%xmm8 413 por %xmm7,%xmm11 414 movd -16(%r11),%xmm7 415 punpckldq %xmm8,%xmm2 416 movdqa %xmm14,%xmm8 417 paddd %xmm15,%xmm13 418 punpckldq %xmm7,%xmm9 419 movdqa %xmm10,%xmm7 420 movdqa %xmm10,%xmm6 421 pslld $5,%xmm8 422 pandn %xmm12,%xmm7 423 pand %xmm11,%xmm6 424 punpckldq %xmm9,%xmm2 425 movdqa %xmm14,%xmm9 426 427 movdqa %xmm1,176-128(%rax) 428 paddd %xmm1,%xmm13 429 movd -12(%r8),%xmm3 430 psrld $27,%xmm9 431 pxor %xmm7,%xmm6 432 movdqa %xmm10,%xmm7 433 434 por %xmm9,%xmm8 435 movd -12(%r9),%xmm9 436 pslld $30,%xmm7 437 paddd %xmm6,%xmm13 438 439 psrld $2,%xmm10 440 paddd %xmm8,%xmm13 441.byte 102,15,56,0,213 442 movd -12(%r10),%xmm8 443 por %xmm7,%xmm10 444 movd -12(%r11),%xmm7 445 punpckldq %xmm8,%xmm3 446 movdqa %xmm13,%xmm8 447 paddd %xmm15,%xmm12 448 punpckldq %xmm7,%xmm9 449 movdqa %xmm14,%xmm7 450 movdqa %xmm14,%xmm6 451 pslld $5,%xmm8 452 pandn %xmm11,%xmm7 453 pand %xmm10,%xmm6 454 punpckldq %xmm9,%xmm3 455 movdqa %xmm13,%xmm9 456 457 movdqa %xmm2,192-128(%rax) 458 paddd %xmm2,%xmm12 459 movd -8(%r8),%xmm4 460 psrld $27,%xmm9 461 pxor %xmm7,%xmm6 462 movdqa %xmm14,%xmm7 463 464 por %xmm9,%xmm8 465 movd -8(%r9),%xmm9 466 pslld $30,%xmm7 467 paddd %xmm6,%xmm12 468 469 psrld $2,%xmm14 470 paddd %xmm8,%xmm12 471.byte 102,15,56,0,221 472 movd -8(%r10),%xmm8 473 por %xmm7,%xmm14 474 movd -8(%r11),%xmm7 475 punpckldq %xmm8,%xmm4 476 movdqa %xmm12,%xmm8 477 paddd %xmm15,%xmm11 478 punpckldq %xmm7,%xmm9 479 movdqa %xmm13,%xmm7 480 movdqa %xmm13,%xmm6 481 pslld $5,%xmm8 482 pandn %xmm10,%xmm7 483 pand %xmm14,%xmm6 484 punpckldq %xmm9,%xmm4 485 movdqa %xmm12,%xmm9 486 487 movdqa %xmm3,208-128(%rax) 488 paddd %xmm3,%xmm11 489 movd -4(%r8),%xmm0 490 psrld $27,%xmm9 491 pxor %xmm7,%xmm6 492 movdqa %xmm13,%xmm7 493 494 por %xmm9,%xmm8 495 movd -4(%r9),%xmm9 496 pslld $30,%xmm7 497 paddd %xmm6,%xmm11 498 499 psrld $2,%xmm13 500 paddd %xmm8,%xmm11 501.byte 102,15,56,0,229 502 movd -4(%r10),%xmm8 503 por %xmm7,%xmm13 504 movdqa 0-128(%rax),%xmm1 505 movd -4(%r11),%xmm7 506 punpckldq %xmm8,%xmm0 507 movdqa %xmm11,%xmm8 508 paddd %xmm15,%xmm10 509 punpckldq %xmm7,%xmm9 510 movdqa %xmm12,%xmm7 511 movdqa %xmm12,%xmm6 512 pslld $5,%xmm8 513 prefetcht0 63(%r8) 514 pandn %xmm14,%xmm7 515 pand %xmm13,%xmm6 516 punpckldq %xmm9,%xmm0 517 movdqa %xmm11,%xmm9 518 519 movdqa %xmm4,224-128(%rax) 520 paddd %xmm4,%xmm10 521 psrld $27,%xmm9 522 pxor %xmm7,%xmm6 523 movdqa %xmm12,%xmm7 524 prefetcht0 63(%r9) 525 526 por %xmm9,%xmm8 527 pslld $30,%xmm7 528 paddd %xmm6,%xmm10 529 prefetcht0 63(%r10) 530 531 psrld $2,%xmm12 532 paddd %xmm8,%xmm10 533.byte 102,15,56,0,197 534 prefetcht0 63(%r11) 535 por %xmm7,%xmm12 536 movdqa 16-128(%rax),%xmm2 537 pxor %xmm3,%xmm1 538 movdqa 32-128(%rax),%xmm3 539 540 movdqa %xmm10,%xmm8 541 pxor 128-128(%rax),%xmm1 542 paddd %xmm15,%xmm14 543 movdqa %xmm11,%xmm7 544 pslld $5,%xmm8 545 pxor %xmm3,%xmm1 546 movdqa %xmm11,%xmm6 547 pandn %xmm13,%xmm7 548 movdqa %xmm1,%xmm5 549 pand %xmm12,%xmm6 550 movdqa %xmm10,%xmm9 551 psrld $31,%xmm5 552 paddd %xmm1,%xmm1 553 554 movdqa %xmm0,240-128(%rax) 555 paddd %xmm0,%xmm14 556 psrld $27,%xmm9 557 pxor %xmm7,%xmm6 558 559 movdqa %xmm11,%xmm7 560 por %xmm9,%xmm8 561 pslld $30,%xmm7 562 paddd %xmm6,%xmm14 563 564 psrld $2,%xmm11 565 paddd %xmm8,%xmm14 566 por %xmm5,%xmm1 567 por %xmm7,%xmm11 568 pxor %xmm4,%xmm2 569 movdqa 48-128(%rax),%xmm4 570 571 movdqa %xmm14,%xmm8 572 pxor 144-128(%rax),%xmm2 573 paddd %xmm15,%xmm13 574 movdqa %xmm10,%xmm7 575 pslld $5,%xmm8 576 pxor %xmm4,%xmm2 577 movdqa %xmm10,%xmm6 578 pandn %xmm12,%xmm7 579 movdqa %xmm2,%xmm5 580 pand %xmm11,%xmm6 581 movdqa %xmm14,%xmm9 582 psrld $31,%xmm5 583 paddd %xmm2,%xmm2 584 585 movdqa %xmm1,0-128(%rax) 586 paddd %xmm1,%xmm13 587 psrld $27,%xmm9 588 pxor %xmm7,%xmm6 589 590 movdqa %xmm10,%xmm7 591 por %xmm9,%xmm8 592 pslld $30,%xmm7 593 paddd %xmm6,%xmm13 594 595 psrld $2,%xmm10 596 paddd %xmm8,%xmm13 597 por %xmm5,%xmm2 598 por %xmm7,%xmm10 599 pxor %xmm0,%xmm3 600 movdqa 64-128(%rax),%xmm0 601 602 movdqa %xmm13,%xmm8 603 pxor 160-128(%rax),%xmm3 604 paddd %xmm15,%xmm12 605 movdqa %xmm14,%xmm7 606 pslld $5,%xmm8 607 pxor %xmm0,%xmm3 608 movdqa %xmm14,%xmm6 609 pandn %xmm11,%xmm7 610 movdqa %xmm3,%xmm5 611 pand %xmm10,%xmm6 612 movdqa %xmm13,%xmm9 613 psrld $31,%xmm5 614 paddd %xmm3,%xmm3 615 616 movdqa %xmm2,16-128(%rax) 617 paddd %xmm2,%xmm12 618 psrld $27,%xmm9 619 pxor %xmm7,%xmm6 620 621 movdqa %xmm14,%xmm7 622 por %xmm9,%xmm8 623 pslld $30,%xmm7 624 paddd %xmm6,%xmm12 625 626 psrld $2,%xmm14 627 paddd %xmm8,%xmm12 628 por %xmm5,%xmm3 629 por %xmm7,%xmm14 630 pxor %xmm1,%xmm4 631 movdqa 80-128(%rax),%xmm1 632 633 movdqa %xmm12,%xmm8 634 pxor 176-128(%rax),%xmm4 635 paddd %xmm15,%xmm11 636 movdqa %xmm13,%xmm7 637 pslld $5,%xmm8 638 pxor %xmm1,%xmm4 639 movdqa %xmm13,%xmm6 640 pandn %xmm10,%xmm7 641 movdqa %xmm4,%xmm5 642 pand %xmm14,%xmm6 643 movdqa %xmm12,%xmm9 644 psrld $31,%xmm5 645 paddd %xmm4,%xmm4 646 647 movdqa %xmm3,32-128(%rax) 648 paddd %xmm3,%xmm11 649 psrld $27,%xmm9 650 pxor %xmm7,%xmm6 651 652 movdqa %xmm13,%xmm7 653 por %xmm9,%xmm8 654 pslld $30,%xmm7 655 paddd %xmm6,%xmm11 656 657 psrld $2,%xmm13 658 paddd %xmm8,%xmm11 659 por %xmm5,%xmm4 660 por %xmm7,%xmm13 661 pxor %xmm2,%xmm0 662 movdqa 96-128(%rax),%xmm2 663 664 movdqa %xmm11,%xmm8 665 pxor 192-128(%rax),%xmm0 666 paddd %xmm15,%xmm10 667 movdqa %xmm12,%xmm7 668 pslld $5,%xmm8 669 pxor %xmm2,%xmm0 670 movdqa %xmm12,%xmm6 671 pandn %xmm14,%xmm7 672 movdqa %xmm0,%xmm5 673 pand %xmm13,%xmm6 674 movdqa %xmm11,%xmm9 675 psrld $31,%xmm5 676 paddd %xmm0,%xmm0 677 678 movdqa %xmm4,48-128(%rax) 679 paddd %xmm4,%xmm10 680 psrld $27,%xmm9 681 pxor %xmm7,%xmm6 682 683 movdqa %xmm12,%xmm7 684 por %xmm9,%xmm8 685 pslld $30,%xmm7 686 paddd %xmm6,%xmm10 687 688 psrld $2,%xmm12 689 paddd %xmm8,%xmm10 690 por %xmm5,%xmm0 691 por %xmm7,%xmm12 692 movdqa 0(%rbp),%xmm15 693 pxor %xmm3,%xmm1 694 movdqa 112-128(%rax),%xmm3 695 696 movdqa %xmm10,%xmm8 697 movdqa %xmm13,%xmm6 698 pxor 208-128(%rax),%xmm1 699 paddd %xmm15,%xmm14 700 pslld $5,%xmm8 701 pxor %xmm11,%xmm6 702 703 movdqa %xmm10,%xmm9 704 movdqa %xmm0,64-128(%rax) 705 paddd %xmm0,%xmm14 706 pxor %xmm3,%xmm1 707 psrld $27,%xmm9 708 pxor %xmm12,%xmm6 709 movdqa %xmm11,%xmm7 710 711 pslld $30,%xmm7 712 movdqa %xmm1,%xmm5 713 por %xmm9,%xmm8 714 psrld $31,%xmm5 715 paddd %xmm6,%xmm14 716 paddd %xmm1,%xmm1 717 718 psrld $2,%xmm11 719 paddd %xmm8,%xmm14 720 por %xmm5,%xmm1 721 por %xmm7,%xmm11 722 pxor %xmm4,%xmm2 723 movdqa 128-128(%rax),%xmm4 724 725 movdqa %xmm14,%xmm8 726 movdqa %xmm12,%xmm6 727 pxor 224-128(%rax),%xmm2 728 paddd %xmm15,%xmm13 729 pslld $5,%xmm8 730 pxor %xmm10,%xmm6 731 732 movdqa %xmm14,%xmm9 733 movdqa %xmm1,80-128(%rax) 734 paddd %xmm1,%xmm13 735 pxor %xmm4,%xmm2 736 psrld $27,%xmm9 737 pxor %xmm11,%xmm6 738 movdqa %xmm10,%xmm7 739 740 pslld $30,%xmm7 741 movdqa %xmm2,%xmm5 742 por %xmm9,%xmm8 743 psrld $31,%xmm5 744 paddd %xmm6,%xmm13 745 paddd %xmm2,%xmm2 746 747 psrld $2,%xmm10 748 paddd %xmm8,%xmm13 749 por %xmm5,%xmm2 750 por %xmm7,%xmm10 751 pxor %xmm0,%xmm3 752 movdqa 144-128(%rax),%xmm0 753 754 movdqa %xmm13,%xmm8 755 movdqa %xmm11,%xmm6 756 pxor 240-128(%rax),%xmm3 757 paddd %xmm15,%xmm12 758 pslld $5,%xmm8 759 pxor %xmm14,%xmm6 760 761 movdqa %xmm13,%xmm9 762 movdqa %xmm2,96-128(%rax) 763 paddd %xmm2,%xmm12 764 pxor %xmm0,%xmm3 765 psrld $27,%xmm9 766 pxor %xmm10,%xmm6 767 movdqa %xmm14,%xmm7 768 769 pslld $30,%xmm7 770 movdqa %xmm3,%xmm5 771 por %xmm9,%xmm8 772 psrld $31,%xmm5 773 paddd %xmm6,%xmm12 774 paddd %xmm3,%xmm3 775 776 psrld $2,%xmm14 777 paddd %xmm8,%xmm12 778 por %xmm5,%xmm3 779 por %xmm7,%xmm14 780 pxor %xmm1,%xmm4 781 movdqa 160-128(%rax),%xmm1 782 783 movdqa %xmm12,%xmm8 784 movdqa %xmm10,%xmm6 785 pxor 0-128(%rax),%xmm4 786 paddd %xmm15,%xmm11 787 pslld $5,%xmm8 788 pxor %xmm13,%xmm6 789 790 movdqa %xmm12,%xmm9 791 movdqa %xmm3,112-128(%rax) 792 paddd %xmm3,%xmm11 793 pxor %xmm1,%xmm4 794 psrld $27,%xmm9 795 pxor %xmm14,%xmm6 796 movdqa %xmm13,%xmm7 797 798 pslld $30,%xmm7 799 movdqa %xmm4,%xmm5 800 por %xmm9,%xmm8 801 psrld $31,%xmm5 802 paddd %xmm6,%xmm11 803 paddd %xmm4,%xmm4 804 805 psrld $2,%xmm13 806 paddd %xmm8,%xmm11 807 por %xmm5,%xmm4 808 por %xmm7,%xmm13 809 pxor %xmm2,%xmm0 810 movdqa 176-128(%rax),%xmm2 811 812 movdqa %xmm11,%xmm8 813 movdqa %xmm14,%xmm6 814 pxor 16-128(%rax),%xmm0 815 paddd %xmm15,%xmm10 816 pslld $5,%xmm8 817 pxor %xmm12,%xmm6 818 819 movdqa %xmm11,%xmm9 820 movdqa %xmm4,128-128(%rax) 821 paddd %xmm4,%xmm10 822 pxor %xmm2,%xmm0 823 psrld $27,%xmm9 824 pxor %xmm13,%xmm6 825 movdqa %xmm12,%xmm7 826 827 pslld $30,%xmm7 828 movdqa %xmm0,%xmm5 829 por %xmm9,%xmm8 830 psrld $31,%xmm5 831 paddd %xmm6,%xmm10 832 paddd %xmm0,%xmm0 833 834 psrld $2,%xmm12 835 paddd %xmm8,%xmm10 836 por %xmm5,%xmm0 837 por %xmm7,%xmm12 838 pxor %xmm3,%xmm1 839 movdqa 192-128(%rax),%xmm3 840 841 movdqa %xmm10,%xmm8 842 movdqa %xmm13,%xmm6 843 pxor 32-128(%rax),%xmm1 844 paddd %xmm15,%xmm14 845 pslld $5,%xmm8 846 pxor %xmm11,%xmm6 847 848 movdqa %xmm10,%xmm9 849 movdqa %xmm0,144-128(%rax) 850 paddd %xmm0,%xmm14 851 pxor %xmm3,%xmm1 852 psrld $27,%xmm9 853 pxor %xmm12,%xmm6 854 movdqa %xmm11,%xmm7 855 856 pslld $30,%xmm7 857 movdqa %xmm1,%xmm5 858 por %xmm9,%xmm8 859 psrld $31,%xmm5 860 paddd %xmm6,%xmm14 861 paddd %xmm1,%xmm1 862 863 psrld $2,%xmm11 864 paddd %xmm8,%xmm14 865 por %xmm5,%xmm1 866 por %xmm7,%xmm11 867 pxor %xmm4,%xmm2 868 movdqa 208-128(%rax),%xmm4 869 870 movdqa %xmm14,%xmm8 871 movdqa %xmm12,%xmm6 872 pxor 48-128(%rax),%xmm2 873 paddd %xmm15,%xmm13 874 pslld $5,%xmm8 875 pxor %xmm10,%xmm6 876 877 movdqa %xmm14,%xmm9 878 movdqa %xmm1,160-128(%rax) 879 paddd %xmm1,%xmm13 880 pxor %xmm4,%xmm2 881 psrld $27,%xmm9 882 pxor %xmm11,%xmm6 883 movdqa %xmm10,%xmm7 884 885 pslld $30,%xmm7 886 movdqa %xmm2,%xmm5 887 por %xmm9,%xmm8 888 psrld $31,%xmm5 889 paddd %xmm6,%xmm13 890 paddd %xmm2,%xmm2 891 892 psrld $2,%xmm10 893 paddd %xmm8,%xmm13 894 por %xmm5,%xmm2 895 por %xmm7,%xmm10 896 pxor %xmm0,%xmm3 897 movdqa 224-128(%rax),%xmm0 898 899 movdqa %xmm13,%xmm8 900 movdqa %xmm11,%xmm6 901 pxor 64-128(%rax),%xmm3 902 paddd %xmm15,%xmm12 903 pslld $5,%xmm8 904 pxor %xmm14,%xmm6 905 906 movdqa %xmm13,%xmm9 907 movdqa %xmm2,176-128(%rax) 908 paddd %xmm2,%xmm12 909 pxor %xmm0,%xmm3 910 psrld $27,%xmm9 911 pxor %xmm10,%xmm6 912 movdqa %xmm14,%xmm7 913 914 pslld $30,%xmm7 915 movdqa %xmm3,%xmm5 916 por %xmm9,%xmm8 917 psrld $31,%xmm5 918 paddd %xmm6,%xmm12 919 paddd %xmm3,%xmm3 920 921 psrld $2,%xmm14 922 paddd %xmm8,%xmm12 923 por %xmm5,%xmm3 924 por %xmm7,%xmm14 925 pxor %xmm1,%xmm4 926 movdqa 240-128(%rax),%xmm1 927 928 movdqa %xmm12,%xmm8 929 movdqa %xmm10,%xmm6 930 pxor 80-128(%rax),%xmm4 931 paddd %xmm15,%xmm11 932 pslld $5,%xmm8 933 pxor %xmm13,%xmm6 934 935 movdqa %xmm12,%xmm9 936 movdqa %xmm3,192-128(%rax) 937 paddd %xmm3,%xmm11 938 pxor %xmm1,%xmm4 939 psrld $27,%xmm9 940 pxor %xmm14,%xmm6 941 movdqa %xmm13,%xmm7 942 943 pslld $30,%xmm7 944 movdqa %xmm4,%xmm5 945 por %xmm9,%xmm8 946 psrld $31,%xmm5 947 paddd %xmm6,%xmm11 948 paddd %xmm4,%xmm4 949 950 psrld $2,%xmm13 951 paddd %xmm8,%xmm11 952 por %xmm5,%xmm4 953 por %xmm7,%xmm13 954 pxor %xmm2,%xmm0 955 movdqa 0-128(%rax),%xmm2 956 957 movdqa %xmm11,%xmm8 958 movdqa %xmm14,%xmm6 959 pxor 96-128(%rax),%xmm0 960 paddd %xmm15,%xmm10 961 pslld $5,%xmm8 962 pxor %xmm12,%xmm6 963 964 movdqa %xmm11,%xmm9 965 movdqa %xmm4,208-128(%rax) 966 paddd %xmm4,%xmm10 967 pxor %xmm2,%xmm0 968 psrld $27,%xmm9 969 pxor %xmm13,%xmm6 970 movdqa %xmm12,%xmm7 971 972 pslld $30,%xmm7 973 movdqa %xmm0,%xmm5 974 por %xmm9,%xmm8 975 psrld $31,%xmm5 976 paddd %xmm6,%xmm10 977 paddd %xmm0,%xmm0 978 979 psrld $2,%xmm12 980 paddd %xmm8,%xmm10 981 por %xmm5,%xmm0 982 por %xmm7,%xmm12 983 pxor %xmm3,%xmm1 984 movdqa 16-128(%rax),%xmm3 985 986 movdqa %xmm10,%xmm8 987 movdqa %xmm13,%xmm6 988 pxor 112-128(%rax),%xmm1 989 paddd %xmm15,%xmm14 990 pslld $5,%xmm8 991 pxor %xmm11,%xmm6 992 993 movdqa %xmm10,%xmm9 994 movdqa %xmm0,224-128(%rax) 995 paddd %xmm0,%xmm14 996 pxor %xmm3,%xmm1 997 psrld $27,%xmm9 998 pxor %xmm12,%xmm6 999 movdqa %xmm11,%xmm7 1000 1001 pslld $30,%xmm7 1002 movdqa %xmm1,%xmm5 1003 por %xmm9,%xmm8 1004 psrld $31,%xmm5 1005 paddd %xmm6,%xmm14 1006 paddd %xmm1,%xmm1 1007 1008 psrld $2,%xmm11 1009 paddd %xmm8,%xmm14 1010 por %xmm5,%xmm1 1011 por %xmm7,%xmm11 1012 pxor %xmm4,%xmm2 1013 movdqa 32-128(%rax),%xmm4 1014 1015 movdqa %xmm14,%xmm8 1016 movdqa %xmm12,%xmm6 1017 pxor 128-128(%rax),%xmm2 1018 paddd %xmm15,%xmm13 1019 pslld $5,%xmm8 1020 pxor %xmm10,%xmm6 1021 1022 movdqa %xmm14,%xmm9 1023 movdqa %xmm1,240-128(%rax) 1024 paddd %xmm1,%xmm13 1025 pxor %xmm4,%xmm2 1026 psrld $27,%xmm9 1027 pxor %xmm11,%xmm6 1028 movdqa %xmm10,%xmm7 1029 1030 pslld $30,%xmm7 1031 movdqa %xmm2,%xmm5 1032 por %xmm9,%xmm8 1033 psrld $31,%xmm5 1034 paddd %xmm6,%xmm13 1035 paddd %xmm2,%xmm2 1036 1037 psrld $2,%xmm10 1038 paddd %xmm8,%xmm13 1039 por %xmm5,%xmm2 1040 por %xmm7,%xmm10 1041 pxor %xmm0,%xmm3 1042 movdqa 48-128(%rax),%xmm0 1043 1044 movdqa %xmm13,%xmm8 1045 movdqa %xmm11,%xmm6 1046 pxor 144-128(%rax),%xmm3 1047 paddd %xmm15,%xmm12 1048 pslld $5,%xmm8 1049 pxor %xmm14,%xmm6 1050 1051 movdqa %xmm13,%xmm9 1052 movdqa %xmm2,0-128(%rax) 1053 paddd %xmm2,%xmm12 1054 pxor %xmm0,%xmm3 1055 psrld $27,%xmm9 1056 pxor %xmm10,%xmm6 1057 movdqa %xmm14,%xmm7 1058 1059 pslld $30,%xmm7 1060 movdqa %xmm3,%xmm5 1061 por %xmm9,%xmm8 1062 psrld $31,%xmm5 1063 paddd %xmm6,%xmm12 1064 paddd %xmm3,%xmm3 1065 1066 psrld $2,%xmm14 1067 paddd %xmm8,%xmm12 1068 por %xmm5,%xmm3 1069 por %xmm7,%xmm14 1070 pxor %xmm1,%xmm4 1071 movdqa 64-128(%rax),%xmm1 1072 1073 movdqa %xmm12,%xmm8 1074 movdqa %xmm10,%xmm6 1075 pxor 160-128(%rax),%xmm4 1076 paddd %xmm15,%xmm11 1077 pslld $5,%xmm8 1078 pxor %xmm13,%xmm6 1079 1080 movdqa %xmm12,%xmm9 1081 movdqa %xmm3,16-128(%rax) 1082 paddd %xmm3,%xmm11 1083 pxor %xmm1,%xmm4 1084 psrld $27,%xmm9 1085 pxor %xmm14,%xmm6 1086 movdqa %xmm13,%xmm7 1087 1088 pslld $30,%xmm7 1089 movdqa %xmm4,%xmm5 1090 por %xmm9,%xmm8 1091 psrld $31,%xmm5 1092 paddd %xmm6,%xmm11 1093 paddd %xmm4,%xmm4 1094 1095 psrld $2,%xmm13 1096 paddd %xmm8,%xmm11 1097 por %xmm5,%xmm4 1098 por %xmm7,%xmm13 1099 pxor %xmm2,%xmm0 1100 movdqa 80-128(%rax),%xmm2 1101 1102 movdqa %xmm11,%xmm8 1103 movdqa %xmm14,%xmm6 1104 pxor 176-128(%rax),%xmm0 1105 paddd %xmm15,%xmm10 1106 pslld $5,%xmm8 1107 pxor %xmm12,%xmm6 1108 1109 movdqa %xmm11,%xmm9 1110 movdqa %xmm4,32-128(%rax) 1111 paddd %xmm4,%xmm10 1112 pxor %xmm2,%xmm0 1113 psrld $27,%xmm9 1114 pxor %xmm13,%xmm6 1115 movdqa %xmm12,%xmm7 1116 1117 pslld $30,%xmm7 1118 movdqa %xmm0,%xmm5 1119 por %xmm9,%xmm8 1120 psrld $31,%xmm5 1121 paddd %xmm6,%xmm10 1122 paddd %xmm0,%xmm0 1123 1124 psrld $2,%xmm12 1125 paddd %xmm8,%xmm10 1126 por %xmm5,%xmm0 1127 por %xmm7,%xmm12 1128 pxor %xmm3,%xmm1 1129 movdqa 96-128(%rax),%xmm3 1130 1131 movdqa %xmm10,%xmm8 1132 movdqa %xmm13,%xmm6 1133 pxor 192-128(%rax),%xmm1 1134 paddd %xmm15,%xmm14 1135 pslld $5,%xmm8 1136 pxor %xmm11,%xmm6 1137 1138 movdqa %xmm10,%xmm9 1139 movdqa %xmm0,48-128(%rax) 1140 paddd %xmm0,%xmm14 1141 pxor %xmm3,%xmm1 1142 psrld $27,%xmm9 1143 pxor %xmm12,%xmm6 1144 movdqa %xmm11,%xmm7 1145 1146 pslld $30,%xmm7 1147 movdqa %xmm1,%xmm5 1148 por %xmm9,%xmm8 1149 psrld $31,%xmm5 1150 paddd %xmm6,%xmm14 1151 paddd %xmm1,%xmm1 1152 1153 psrld $2,%xmm11 1154 paddd %xmm8,%xmm14 1155 por %xmm5,%xmm1 1156 por %xmm7,%xmm11 1157 pxor %xmm4,%xmm2 1158 movdqa 112-128(%rax),%xmm4 1159 1160 movdqa %xmm14,%xmm8 1161 movdqa %xmm12,%xmm6 1162 pxor 208-128(%rax),%xmm2 1163 paddd %xmm15,%xmm13 1164 pslld $5,%xmm8 1165 pxor %xmm10,%xmm6 1166 1167 movdqa %xmm14,%xmm9 1168 movdqa %xmm1,64-128(%rax) 1169 paddd %xmm1,%xmm13 1170 pxor %xmm4,%xmm2 1171 psrld $27,%xmm9 1172 pxor %xmm11,%xmm6 1173 movdqa %xmm10,%xmm7 1174 1175 pslld $30,%xmm7 1176 movdqa %xmm2,%xmm5 1177 por %xmm9,%xmm8 1178 psrld $31,%xmm5 1179 paddd %xmm6,%xmm13 1180 paddd %xmm2,%xmm2 1181 1182 psrld $2,%xmm10 1183 paddd %xmm8,%xmm13 1184 por %xmm5,%xmm2 1185 por %xmm7,%xmm10 1186 pxor %xmm0,%xmm3 1187 movdqa 128-128(%rax),%xmm0 1188 1189 movdqa %xmm13,%xmm8 1190 movdqa %xmm11,%xmm6 1191 pxor 224-128(%rax),%xmm3 1192 paddd %xmm15,%xmm12 1193 pslld $5,%xmm8 1194 pxor %xmm14,%xmm6 1195 1196 movdqa %xmm13,%xmm9 1197 movdqa %xmm2,80-128(%rax) 1198 paddd %xmm2,%xmm12 1199 pxor %xmm0,%xmm3 1200 psrld $27,%xmm9 1201 pxor %xmm10,%xmm6 1202 movdqa %xmm14,%xmm7 1203 1204 pslld $30,%xmm7 1205 movdqa %xmm3,%xmm5 1206 por %xmm9,%xmm8 1207 psrld $31,%xmm5 1208 paddd %xmm6,%xmm12 1209 paddd %xmm3,%xmm3 1210 1211 psrld $2,%xmm14 1212 paddd %xmm8,%xmm12 1213 por %xmm5,%xmm3 1214 por %xmm7,%xmm14 1215 pxor %xmm1,%xmm4 1216 movdqa 144-128(%rax),%xmm1 1217 1218 movdqa %xmm12,%xmm8 1219 movdqa %xmm10,%xmm6 1220 pxor 240-128(%rax),%xmm4 1221 paddd %xmm15,%xmm11 1222 pslld $5,%xmm8 1223 pxor %xmm13,%xmm6 1224 1225 movdqa %xmm12,%xmm9 1226 movdqa %xmm3,96-128(%rax) 1227 paddd %xmm3,%xmm11 1228 pxor %xmm1,%xmm4 1229 psrld $27,%xmm9 1230 pxor %xmm14,%xmm6 1231 movdqa %xmm13,%xmm7 1232 1233 pslld $30,%xmm7 1234 movdqa %xmm4,%xmm5 1235 por %xmm9,%xmm8 1236 psrld $31,%xmm5 1237 paddd %xmm6,%xmm11 1238 paddd %xmm4,%xmm4 1239 1240 psrld $2,%xmm13 1241 paddd %xmm8,%xmm11 1242 por %xmm5,%xmm4 1243 por %xmm7,%xmm13 1244 pxor %xmm2,%xmm0 1245 movdqa 160-128(%rax),%xmm2 1246 1247 movdqa %xmm11,%xmm8 1248 movdqa %xmm14,%xmm6 1249 pxor 0-128(%rax),%xmm0 1250 paddd %xmm15,%xmm10 1251 pslld $5,%xmm8 1252 pxor %xmm12,%xmm6 1253 1254 movdqa %xmm11,%xmm9 1255 movdqa %xmm4,112-128(%rax) 1256 paddd %xmm4,%xmm10 1257 pxor %xmm2,%xmm0 1258 psrld $27,%xmm9 1259 pxor %xmm13,%xmm6 1260 movdqa %xmm12,%xmm7 1261 1262 pslld $30,%xmm7 1263 movdqa %xmm0,%xmm5 1264 por %xmm9,%xmm8 1265 psrld $31,%xmm5 1266 paddd %xmm6,%xmm10 1267 paddd %xmm0,%xmm0 1268 1269 psrld $2,%xmm12 1270 paddd %xmm8,%xmm10 1271 por %xmm5,%xmm0 1272 por %xmm7,%xmm12 1273 movdqa 32(%rbp),%xmm15 1274 pxor %xmm3,%xmm1 1275 movdqa 176-128(%rax),%xmm3 1276 1277 movdqa %xmm10,%xmm8 1278 movdqa %xmm13,%xmm7 1279 pxor 16-128(%rax),%xmm1 1280 pxor %xmm3,%xmm1 1281 paddd %xmm15,%xmm14 1282 pslld $5,%xmm8 1283 movdqa %xmm10,%xmm9 1284 pand %xmm12,%xmm7 1285 1286 movdqa %xmm13,%xmm6 1287 movdqa %xmm1,%xmm5 1288 psrld $27,%xmm9 1289 paddd %xmm7,%xmm14 1290 pxor %xmm12,%xmm6 1291 1292 movdqa %xmm0,128-128(%rax) 1293 paddd %xmm0,%xmm14 1294 por %xmm9,%xmm8 1295 psrld $31,%xmm5 1296 pand %xmm11,%xmm6 1297 movdqa %xmm11,%xmm7 1298 1299 pslld $30,%xmm7 1300 paddd %xmm1,%xmm1 1301 paddd %xmm6,%xmm14 1302 1303 psrld $2,%xmm11 1304 paddd %xmm8,%xmm14 1305 por %xmm5,%xmm1 1306 por %xmm7,%xmm11 1307 pxor %xmm4,%xmm2 1308 movdqa 192-128(%rax),%xmm4 1309 1310 movdqa %xmm14,%xmm8 1311 movdqa %xmm12,%xmm7 1312 pxor 32-128(%rax),%xmm2 1313 pxor %xmm4,%xmm2 1314 paddd %xmm15,%xmm13 1315 pslld $5,%xmm8 1316 movdqa %xmm14,%xmm9 1317 pand %xmm11,%xmm7 1318 1319 movdqa %xmm12,%xmm6 1320 movdqa %xmm2,%xmm5 1321 psrld $27,%xmm9 1322 paddd %xmm7,%xmm13 1323 pxor %xmm11,%xmm6 1324 1325 movdqa %xmm1,144-128(%rax) 1326 paddd %xmm1,%xmm13 1327 por %xmm9,%xmm8 1328 psrld $31,%xmm5 1329 pand %xmm10,%xmm6 1330 movdqa %xmm10,%xmm7 1331 1332 pslld $30,%xmm7 1333 paddd %xmm2,%xmm2 1334 paddd %xmm6,%xmm13 1335 1336 psrld $2,%xmm10 1337 paddd %xmm8,%xmm13 1338 por %xmm5,%xmm2 1339 por %xmm7,%xmm10 1340 pxor %xmm0,%xmm3 1341 movdqa 208-128(%rax),%xmm0 1342 1343 movdqa %xmm13,%xmm8 1344 movdqa %xmm11,%xmm7 1345 pxor 48-128(%rax),%xmm3 1346 pxor %xmm0,%xmm3 1347 paddd %xmm15,%xmm12 1348 pslld $5,%xmm8 1349 movdqa %xmm13,%xmm9 1350 pand %xmm10,%xmm7 1351 1352 movdqa %xmm11,%xmm6 1353 movdqa %xmm3,%xmm5 1354 psrld $27,%xmm9 1355 paddd %xmm7,%xmm12 1356 pxor %xmm10,%xmm6 1357 1358 movdqa %xmm2,160-128(%rax) 1359 paddd %xmm2,%xmm12 1360 por %xmm9,%xmm8 1361 psrld $31,%xmm5 1362 pand %xmm14,%xmm6 1363 movdqa %xmm14,%xmm7 1364 1365 pslld $30,%xmm7 1366 paddd %xmm3,%xmm3 1367 paddd %xmm6,%xmm12 1368 1369 psrld $2,%xmm14 1370 paddd %xmm8,%xmm12 1371 por %xmm5,%xmm3 1372 por %xmm7,%xmm14 1373 pxor %xmm1,%xmm4 1374 movdqa 224-128(%rax),%xmm1 1375 1376 movdqa %xmm12,%xmm8 1377 movdqa %xmm10,%xmm7 1378 pxor 64-128(%rax),%xmm4 1379 pxor %xmm1,%xmm4 1380 paddd %xmm15,%xmm11 1381 pslld $5,%xmm8 1382 movdqa %xmm12,%xmm9 1383 pand %xmm14,%xmm7 1384 1385 movdqa %xmm10,%xmm6 1386 movdqa %xmm4,%xmm5 1387 psrld $27,%xmm9 1388 paddd %xmm7,%xmm11 1389 pxor %xmm14,%xmm6 1390 1391 movdqa %xmm3,176-128(%rax) 1392 paddd %xmm3,%xmm11 1393 por %xmm9,%xmm8 1394 psrld $31,%xmm5 1395 pand %xmm13,%xmm6 1396 movdqa %xmm13,%xmm7 1397 1398 pslld $30,%xmm7 1399 paddd %xmm4,%xmm4 1400 paddd %xmm6,%xmm11 1401 1402 psrld $2,%xmm13 1403 paddd %xmm8,%xmm11 1404 por %xmm5,%xmm4 1405 por %xmm7,%xmm13 1406 pxor %xmm2,%xmm0 1407 movdqa 240-128(%rax),%xmm2 1408 1409 movdqa %xmm11,%xmm8 1410 movdqa %xmm14,%xmm7 1411 pxor 80-128(%rax),%xmm0 1412 pxor %xmm2,%xmm0 1413 paddd %xmm15,%xmm10 1414 pslld $5,%xmm8 1415 movdqa %xmm11,%xmm9 1416 pand %xmm13,%xmm7 1417 1418 movdqa %xmm14,%xmm6 1419 movdqa %xmm0,%xmm5 1420 psrld $27,%xmm9 1421 paddd %xmm7,%xmm10 1422 pxor %xmm13,%xmm6 1423 1424 movdqa %xmm4,192-128(%rax) 1425 paddd %xmm4,%xmm10 1426 por %xmm9,%xmm8 1427 psrld $31,%xmm5 1428 pand %xmm12,%xmm6 1429 movdqa %xmm12,%xmm7 1430 1431 pslld $30,%xmm7 1432 paddd %xmm0,%xmm0 1433 paddd %xmm6,%xmm10 1434 1435 psrld $2,%xmm12 1436 paddd %xmm8,%xmm10 1437 por %xmm5,%xmm0 1438 por %xmm7,%xmm12 1439 pxor %xmm3,%xmm1 1440 movdqa 0-128(%rax),%xmm3 1441 1442 movdqa %xmm10,%xmm8 1443 movdqa %xmm13,%xmm7 1444 pxor 96-128(%rax),%xmm1 1445 pxor %xmm3,%xmm1 1446 paddd %xmm15,%xmm14 1447 pslld $5,%xmm8 1448 movdqa %xmm10,%xmm9 1449 pand %xmm12,%xmm7 1450 1451 movdqa %xmm13,%xmm6 1452 movdqa %xmm1,%xmm5 1453 psrld $27,%xmm9 1454 paddd %xmm7,%xmm14 1455 pxor %xmm12,%xmm6 1456 1457 movdqa %xmm0,208-128(%rax) 1458 paddd %xmm0,%xmm14 1459 por %xmm9,%xmm8 1460 psrld $31,%xmm5 1461 pand %xmm11,%xmm6 1462 movdqa %xmm11,%xmm7 1463 1464 pslld $30,%xmm7 1465 paddd %xmm1,%xmm1 1466 paddd %xmm6,%xmm14 1467 1468 psrld $2,%xmm11 1469 paddd %xmm8,%xmm14 1470 por %xmm5,%xmm1 1471 por %xmm7,%xmm11 1472 pxor %xmm4,%xmm2 1473 movdqa 16-128(%rax),%xmm4 1474 1475 movdqa %xmm14,%xmm8 1476 movdqa %xmm12,%xmm7 1477 pxor 112-128(%rax),%xmm2 1478 pxor %xmm4,%xmm2 1479 paddd %xmm15,%xmm13 1480 pslld $5,%xmm8 1481 movdqa %xmm14,%xmm9 1482 pand %xmm11,%xmm7 1483 1484 movdqa %xmm12,%xmm6 1485 movdqa %xmm2,%xmm5 1486 psrld $27,%xmm9 1487 paddd %xmm7,%xmm13 1488 pxor %xmm11,%xmm6 1489 1490 movdqa %xmm1,224-128(%rax) 1491 paddd %xmm1,%xmm13 1492 por %xmm9,%xmm8 1493 psrld $31,%xmm5 1494 pand %xmm10,%xmm6 1495 movdqa %xmm10,%xmm7 1496 1497 pslld $30,%xmm7 1498 paddd %xmm2,%xmm2 1499 paddd %xmm6,%xmm13 1500 1501 psrld $2,%xmm10 1502 paddd %xmm8,%xmm13 1503 por %xmm5,%xmm2 1504 por %xmm7,%xmm10 1505 pxor %xmm0,%xmm3 1506 movdqa 32-128(%rax),%xmm0 1507 1508 movdqa %xmm13,%xmm8 1509 movdqa %xmm11,%xmm7 1510 pxor 128-128(%rax),%xmm3 1511 pxor %xmm0,%xmm3 1512 paddd %xmm15,%xmm12 1513 pslld $5,%xmm8 1514 movdqa %xmm13,%xmm9 1515 pand %xmm10,%xmm7 1516 1517 movdqa %xmm11,%xmm6 1518 movdqa %xmm3,%xmm5 1519 psrld $27,%xmm9 1520 paddd %xmm7,%xmm12 1521 pxor %xmm10,%xmm6 1522 1523 movdqa %xmm2,240-128(%rax) 1524 paddd %xmm2,%xmm12 1525 por %xmm9,%xmm8 1526 psrld $31,%xmm5 1527 pand %xmm14,%xmm6 1528 movdqa %xmm14,%xmm7 1529 1530 pslld $30,%xmm7 1531 paddd %xmm3,%xmm3 1532 paddd %xmm6,%xmm12 1533 1534 psrld $2,%xmm14 1535 paddd %xmm8,%xmm12 1536 por %xmm5,%xmm3 1537 por %xmm7,%xmm14 1538 pxor %xmm1,%xmm4 1539 movdqa 48-128(%rax),%xmm1 1540 1541 movdqa %xmm12,%xmm8 1542 movdqa %xmm10,%xmm7 1543 pxor 144-128(%rax),%xmm4 1544 pxor %xmm1,%xmm4 1545 paddd %xmm15,%xmm11 1546 pslld $5,%xmm8 1547 movdqa %xmm12,%xmm9 1548 pand %xmm14,%xmm7 1549 1550 movdqa %xmm10,%xmm6 1551 movdqa %xmm4,%xmm5 1552 psrld $27,%xmm9 1553 paddd %xmm7,%xmm11 1554 pxor %xmm14,%xmm6 1555 1556 movdqa %xmm3,0-128(%rax) 1557 paddd %xmm3,%xmm11 1558 por %xmm9,%xmm8 1559 psrld $31,%xmm5 1560 pand %xmm13,%xmm6 1561 movdqa %xmm13,%xmm7 1562 1563 pslld $30,%xmm7 1564 paddd %xmm4,%xmm4 1565 paddd %xmm6,%xmm11 1566 1567 psrld $2,%xmm13 1568 paddd %xmm8,%xmm11 1569 por %xmm5,%xmm4 1570 por %xmm7,%xmm13 1571 pxor %xmm2,%xmm0 1572 movdqa 64-128(%rax),%xmm2 1573 1574 movdqa %xmm11,%xmm8 1575 movdqa %xmm14,%xmm7 1576 pxor 160-128(%rax),%xmm0 1577 pxor %xmm2,%xmm0 1578 paddd %xmm15,%xmm10 1579 pslld $5,%xmm8 1580 movdqa %xmm11,%xmm9 1581 pand %xmm13,%xmm7 1582 1583 movdqa %xmm14,%xmm6 1584 movdqa %xmm0,%xmm5 1585 psrld $27,%xmm9 1586 paddd %xmm7,%xmm10 1587 pxor %xmm13,%xmm6 1588 1589 movdqa %xmm4,16-128(%rax) 1590 paddd %xmm4,%xmm10 1591 por %xmm9,%xmm8 1592 psrld $31,%xmm5 1593 pand %xmm12,%xmm6 1594 movdqa %xmm12,%xmm7 1595 1596 pslld $30,%xmm7 1597 paddd %xmm0,%xmm0 1598 paddd %xmm6,%xmm10 1599 1600 psrld $2,%xmm12 1601 paddd %xmm8,%xmm10 1602 por %xmm5,%xmm0 1603 por %xmm7,%xmm12 1604 pxor %xmm3,%xmm1 1605 movdqa 80-128(%rax),%xmm3 1606 1607 movdqa %xmm10,%xmm8 1608 movdqa %xmm13,%xmm7 1609 pxor 176-128(%rax),%xmm1 1610 pxor %xmm3,%xmm1 1611 paddd %xmm15,%xmm14 1612 pslld $5,%xmm8 1613 movdqa %xmm10,%xmm9 1614 pand %xmm12,%xmm7 1615 1616 movdqa %xmm13,%xmm6 1617 movdqa %xmm1,%xmm5 1618 psrld $27,%xmm9 1619 paddd %xmm7,%xmm14 1620 pxor %xmm12,%xmm6 1621 1622 movdqa %xmm0,32-128(%rax) 1623 paddd %xmm0,%xmm14 1624 por %xmm9,%xmm8 1625 psrld $31,%xmm5 1626 pand %xmm11,%xmm6 1627 movdqa %xmm11,%xmm7 1628 1629 pslld $30,%xmm7 1630 paddd %xmm1,%xmm1 1631 paddd %xmm6,%xmm14 1632 1633 psrld $2,%xmm11 1634 paddd %xmm8,%xmm14 1635 por %xmm5,%xmm1 1636 por %xmm7,%xmm11 1637 pxor %xmm4,%xmm2 1638 movdqa 96-128(%rax),%xmm4 1639 1640 movdqa %xmm14,%xmm8 1641 movdqa %xmm12,%xmm7 1642 pxor 192-128(%rax),%xmm2 1643 pxor %xmm4,%xmm2 1644 paddd %xmm15,%xmm13 1645 pslld $5,%xmm8 1646 movdqa %xmm14,%xmm9 1647 pand %xmm11,%xmm7 1648 1649 movdqa %xmm12,%xmm6 1650 movdqa %xmm2,%xmm5 1651 psrld $27,%xmm9 1652 paddd %xmm7,%xmm13 1653 pxor %xmm11,%xmm6 1654 1655 movdqa %xmm1,48-128(%rax) 1656 paddd %xmm1,%xmm13 1657 por %xmm9,%xmm8 1658 psrld $31,%xmm5 1659 pand %xmm10,%xmm6 1660 movdqa %xmm10,%xmm7 1661 1662 pslld $30,%xmm7 1663 paddd %xmm2,%xmm2 1664 paddd %xmm6,%xmm13 1665 1666 psrld $2,%xmm10 1667 paddd %xmm8,%xmm13 1668 por %xmm5,%xmm2 1669 por %xmm7,%xmm10 1670 pxor %xmm0,%xmm3 1671 movdqa 112-128(%rax),%xmm0 1672 1673 movdqa %xmm13,%xmm8 1674 movdqa %xmm11,%xmm7 1675 pxor 208-128(%rax),%xmm3 1676 pxor %xmm0,%xmm3 1677 paddd %xmm15,%xmm12 1678 pslld $5,%xmm8 1679 movdqa %xmm13,%xmm9 1680 pand %xmm10,%xmm7 1681 1682 movdqa %xmm11,%xmm6 1683 movdqa %xmm3,%xmm5 1684 psrld $27,%xmm9 1685 paddd %xmm7,%xmm12 1686 pxor %xmm10,%xmm6 1687 1688 movdqa %xmm2,64-128(%rax) 1689 paddd %xmm2,%xmm12 1690 por %xmm9,%xmm8 1691 psrld $31,%xmm5 1692 pand %xmm14,%xmm6 1693 movdqa %xmm14,%xmm7 1694 1695 pslld $30,%xmm7 1696 paddd %xmm3,%xmm3 1697 paddd %xmm6,%xmm12 1698 1699 psrld $2,%xmm14 1700 paddd %xmm8,%xmm12 1701 por %xmm5,%xmm3 1702 por %xmm7,%xmm14 1703 pxor %xmm1,%xmm4 1704 movdqa 128-128(%rax),%xmm1 1705 1706 movdqa %xmm12,%xmm8 1707 movdqa %xmm10,%xmm7 1708 pxor 224-128(%rax),%xmm4 1709 pxor %xmm1,%xmm4 1710 paddd %xmm15,%xmm11 1711 pslld $5,%xmm8 1712 movdqa %xmm12,%xmm9 1713 pand %xmm14,%xmm7 1714 1715 movdqa %xmm10,%xmm6 1716 movdqa %xmm4,%xmm5 1717 psrld $27,%xmm9 1718 paddd %xmm7,%xmm11 1719 pxor %xmm14,%xmm6 1720 1721 movdqa %xmm3,80-128(%rax) 1722 paddd %xmm3,%xmm11 1723 por %xmm9,%xmm8 1724 psrld $31,%xmm5 1725 pand %xmm13,%xmm6 1726 movdqa %xmm13,%xmm7 1727 1728 pslld $30,%xmm7 1729 paddd %xmm4,%xmm4 1730 paddd %xmm6,%xmm11 1731 1732 psrld $2,%xmm13 1733 paddd %xmm8,%xmm11 1734 por %xmm5,%xmm4 1735 por %xmm7,%xmm13 1736 pxor %xmm2,%xmm0 1737 movdqa 144-128(%rax),%xmm2 1738 1739 movdqa %xmm11,%xmm8 1740 movdqa %xmm14,%xmm7 1741 pxor 240-128(%rax),%xmm0 1742 pxor %xmm2,%xmm0 1743 paddd %xmm15,%xmm10 1744 pslld $5,%xmm8 1745 movdqa %xmm11,%xmm9 1746 pand %xmm13,%xmm7 1747 1748 movdqa %xmm14,%xmm6 1749 movdqa %xmm0,%xmm5 1750 psrld $27,%xmm9 1751 paddd %xmm7,%xmm10 1752 pxor %xmm13,%xmm6 1753 1754 movdqa %xmm4,96-128(%rax) 1755 paddd %xmm4,%xmm10 1756 por %xmm9,%xmm8 1757 psrld $31,%xmm5 1758 pand %xmm12,%xmm6 1759 movdqa %xmm12,%xmm7 1760 1761 pslld $30,%xmm7 1762 paddd %xmm0,%xmm0 1763 paddd %xmm6,%xmm10 1764 1765 psrld $2,%xmm12 1766 paddd %xmm8,%xmm10 1767 por %xmm5,%xmm0 1768 por %xmm7,%xmm12 1769 pxor %xmm3,%xmm1 1770 movdqa 160-128(%rax),%xmm3 1771 1772 movdqa %xmm10,%xmm8 1773 movdqa %xmm13,%xmm7 1774 pxor 0-128(%rax),%xmm1 1775 pxor %xmm3,%xmm1 1776 paddd %xmm15,%xmm14 1777 pslld $5,%xmm8 1778 movdqa %xmm10,%xmm9 1779 pand %xmm12,%xmm7 1780 1781 movdqa %xmm13,%xmm6 1782 movdqa %xmm1,%xmm5 1783 psrld $27,%xmm9 1784 paddd %xmm7,%xmm14 1785 pxor %xmm12,%xmm6 1786 1787 movdqa %xmm0,112-128(%rax) 1788 paddd %xmm0,%xmm14 1789 por %xmm9,%xmm8 1790 psrld $31,%xmm5 1791 pand %xmm11,%xmm6 1792 movdqa %xmm11,%xmm7 1793 1794 pslld $30,%xmm7 1795 paddd %xmm1,%xmm1 1796 paddd %xmm6,%xmm14 1797 1798 psrld $2,%xmm11 1799 paddd %xmm8,%xmm14 1800 por %xmm5,%xmm1 1801 por %xmm7,%xmm11 1802 pxor %xmm4,%xmm2 1803 movdqa 176-128(%rax),%xmm4 1804 1805 movdqa %xmm14,%xmm8 1806 movdqa %xmm12,%xmm7 1807 pxor 16-128(%rax),%xmm2 1808 pxor %xmm4,%xmm2 1809 paddd %xmm15,%xmm13 1810 pslld $5,%xmm8 1811 movdqa %xmm14,%xmm9 1812 pand %xmm11,%xmm7 1813 1814 movdqa %xmm12,%xmm6 1815 movdqa %xmm2,%xmm5 1816 psrld $27,%xmm9 1817 paddd %xmm7,%xmm13 1818 pxor %xmm11,%xmm6 1819 1820 movdqa %xmm1,128-128(%rax) 1821 paddd %xmm1,%xmm13 1822 por %xmm9,%xmm8 1823 psrld $31,%xmm5 1824 pand %xmm10,%xmm6 1825 movdqa %xmm10,%xmm7 1826 1827 pslld $30,%xmm7 1828 paddd %xmm2,%xmm2 1829 paddd %xmm6,%xmm13 1830 1831 psrld $2,%xmm10 1832 paddd %xmm8,%xmm13 1833 por %xmm5,%xmm2 1834 por %xmm7,%xmm10 1835 pxor %xmm0,%xmm3 1836 movdqa 192-128(%rax),%xmm0 1837 1838 movdqa %xmm13,%xmm8 1839 movdqa %xmm11,%xmm7 1840 pxor 32-128(%rax),%xmm3 1841 pxor %xmm0,%xmm3 1842 paddd %xmm15,%xmm12 1843 pslld $5,%xmm8 1844 movdqa %xmm13,%xmm9 1845 pand %xmm10,%xmm7 1846 1847 movdqa %xmm11,%xmm6 1848 movdqa %xmm3,%xmm5 1849 psrld $27,%xmm9 1850 paddd %xmm7,%xmm12 1851 pxor %xmm10,%xmm6 1852 1853 movdqa %xmm2,144-128(%rax) 1854 paddd %xmm2,%xmm12 1855 por %xmm9,%xmm8 1856 psrld $31,%xmm5 1857 pand %xmm14,%xmm6 1858 movdqa %xmm14,%xmm7 1859 1860 pslld $30,%xmm7 1861 paddd %xmm3,%xmm3 1862 paddd %xmm6,%xmm12 1863 1864 psrld $2,%xmm14 1865 paddd %xmm8,%xmm12 1866 por %xmm5,%xmm3 1867 por %xmm7,%xmm14 1868 pxor %xmm1,%xmm4 1869 movdqa 208-128(%rax),%xmm1 1870 1871 movdqa %xmm12,%xmm8 1872 movdqa %xmm10,%xmm7 1873 pxor 48-128(%rax),%xmm4 1874 pxor %xmm1,%xmm4 1875 paddd %xmm15,%xmm11 1876 pslld $5,%xmm8 1877 movdqa %xmm12,%xmm9 1878 pand %xmm14,%xmm7 1879 1880 movdqa %xmm10,%xmm6 1881 movdqa %xmm4,%xmm5 1882 psrld $27,%xmm9 1883 paddd %xmm7,%xmm11 1884 pxor %xmm14,%xmm6 1885 1886 movdqa %xmm3,160-128(%rax) 1887 paddd %xmm3,%xmm11 1888 por %xmm9,%xmm8 1889 psrld $31,%xmm5 1890 pand %xmm13,%xmm6 1891 movdqa %xmm13,%xmm7 1892 1893 pslld $30,%xmm7 1894 paddd %xmm4,%xmm4 1895 paddd %xmm6,%xmm11 1896 1897 psrld $2,%xmm13 1898 paddd %xmm8,%xmm11 1899 por %xmm5,%xmm4 1900 por %xmm7,%xmm13 1901 pxor %xmm2,%xmm0 1902 movdqa 224-128(%rax),%xmm2 1903 1904 movdqa %xmm11,%xmm8 1905 movdqa %xmm14,%xmm7 1906 pxor 64-128(%rax),%xmm0 1907 pxor %xmm2,%xmm0 1908 paddd %xmm15,%xmm10 1909 pslld $5,%xmm8 1910 movdqa %xmm11,%xmm9 1911 pand %xmm13,%xmm7 1912 1913 movdqa %xmm14,%xmm6 1914 movdqa %xmm0,%xmm5 1915 psrld $27,%xmm9 1916 paddd %xmm7,%xmm10 1917 pxor %xmm13,%xmm6 1918 1919 movdqa %xmm4,176-128(%rax) 1920 paddd %xmm4,%xmm10 1921 por %xmm9,%xmm8 1922 psrld $31,%xmm5 1923 pand %xmm12,%xmm6 1924 movdqa %xmm12,%xmm7 1925 1926 pslld $30,%xmm7 1927 paddd %xmm0,%xmm0 1928 paddd %xmm6,%xmm10 1929 1930 psrld $2,%xmm12 1931 paddd %xmm8,%xmm10 1932 por %xmm5,%xmm0 1933 por %xmm7,%xmm12 1934 movdqa 64(%rbp),%xmm15 1935 pxor %xmm3,%xmm1 1936 movdqa 240-128(%rax),%xmm3 1937 1938 movdqa %xmm10,%xmm8 1939 movdqa %xmm13,%xmm6 1940 pxor 80-128(%rax),%xmm1 1941 paddd %xmm15,%xmm14 1942 pslld $5,%xmm8 1943 pxor %xmm11,%xmm6 1944 1945 movdqa %xmm10,%xmm9 1946 movdqa %xmm0,192-128(%rax) 1947 paddd %xmm0,%xmm14 1948 pxor %xmm3,%xmm1 1949 psrld $27,%xmm9 1950 pxor %xmm12,%xmm6 1951 movdqa %xmm11,%xmm7 1952 1953 pslld $30,%xmm7 1954 movdqa %xmm1,%xmm5 1955 por %xmm9,%xmm8 1956 psrld $31,%xmm5 1957 paddd %xmm6,%xmm14 1958 paddd %xmm1,%xmm1 1959 1960 psrld $2,%xmm11 1961 paddd %xmm8,%xmm14 1962 por %xmm5,%xmm1 1963 por %xmm7,%xmm11 1964 pxor %xmm4,%xmm2 1965 movdqa 0-128(%rax),%xmm4 1966 1967 movdqa %xmm14,%xmm8 1968 movdqa %xmm12,%xmm6 1969 pxor 96-128(%rax),%xmm2 1970 paddd %xmm15,%xmm13 1971 pslld $5,%xmm8 1972 pxor %xmm10,%xmm6 1973 1974 movdqa %xmm14,%xmm9 1975 movdqa %xmm1,208-128(%rax) 1976 paddd %xmm1,%xmm13 1977 pxor %xmm4,%xmm2 1978 psrld $27,%xmm9 1979 pxor %xmm11,%xmm6 1980 movdqa %xmm10,%xmm7 1981 1982 pslld $30,%xmm7 1983 movdqa %xmm2,%xmm5 1984 por %xmm9,%xmm8 1985 psrld $31,%xmm5 1986 paddd %xmm6,%xmm13 1987 paddd %xmm2,%xmm2 1988 1989 psrld $2,%xmm10 1990 paddd %xmm8,%xmm13 1991 por %xmm5,%xmm2 1992 por %xmm7,%xmm10 1993 pxor %xmm0,%xmm3 1994 movdqa 16-128(%rax),%xmm0 1995 1996 movdqa %xmm13,%xmm8 1997 movdqa %xmm11,%xmm6 1998 pxor 112-128(%rax),%xmm3 1999 paddd %xmm15,%xmm12 2000 pslld $5,%xmm8 2001 pxor %xmm14,%xmm6 2002 2003 movdqa %xmm13,%xmm9 2004 movdqa %xmm2,224-128(%rax) 2005 paddd %xmm2,%xmm12 2006 pxor %xmm0,%xmm3 2007 psrld $27,%xmm9 2008 pxor %xmm10,%xmm6 2009 movdqa %xmm14,%xmm7 2010 2011 pslld $30,%xmm7 2012 movdqa %xmm3,%xmm5 2013 por %xmm9,%xmm8 2014 psrld $31,%xmm5 2015 paddd %xmm6,%xmm12 2016 paddd %xmm3,%xmm3 2017 2018 psrld $2,%xmm14 2019 paddd %xmm8,%xmm12 2020 por %xmm5,%xmm3 2021 por %xmm7,%xmm14 2022 pxor %xmm1,%xmm4 2023 movdqa 32-128(%rax),%xmm1 2024 2025 movdqa %xmm12,%xmm8 2026 movdqa %xmm10,%xmm6 2027 pxor 128-128(%rax),%xmm4 2028 paddd %xmm15,%xmm11 2029 pslld $5,%xmm8 2030 pxor %xmm13,%xmm6 2031 2032 movdqa %xmm12,%xmm9 2033 movdqa %xmm3,240-128(%rax) 2034 paddd %xmm3,%xmm11 2035 pxor %xmm1,%xmm4 2036 psrld $27,%xmm9 2037 pxor %xmm14,%xmm6 2038 movdqa %xmm13,%xmm7 2039 2040 pslld $30,%xmm7 2041 movdqa %xmm4,%xmm5 2042 por %xmm9,%xmm8 2043 psrld $31,%xmm5 2044 paddd %xmm6,%xmm11 2045 paddd %xmm4,%xmm4 2046 2047 psrld $2,%xmm13 2048 paddd %xmm8,%xmm11 2049 por %xmm5,%xmm4 2050 por %xmm7,%xmm13 2051 pxor %xmm2,%xmm0 2052 movdqa 48-128(%rax),%xmm2 2053 2054 movdqa %xmm11,%xmm8 2055 movdqa %xmm14,%xmm6 2056 pxor 144-128(%rax),%xmm0 2057 paddd %xmm15,%xmm10 2058 pslld $5,%xmm8 2059 pxor %xmm12,%xmm6 2060 2061 movdqa %xmm11,%xmm9 2062 movdqa %xmm4,0-128(%rax) 2063 paddd %xmm4,%xmm10 2064 pxor %xmm2,%xmm0 2065 psrld $27,%xmm9 2066 pxor %xmm13,%xmm6 2067 movdqa %xmm12,%xmm7 2068 2069 pslld $30,%xmm7 2070 movdqa %xmm0,%xmm5 2071 por %xmm9,%xmm8 2072 psrld $31,%xmm5 2073 paddd %xmm6,%xmm10 2074 paddd %xmm0,%xmm0 2075 2076 psrld $2,%xmm12 2077 paddd %xmm8,%xmm10 2078 por %xmm5,%xmm0 2079 por %xmm7,%xmm12 2080 pxor %xmm3,%xmm1 2081 movdqa 64-128(%rax),%xmm3 2082 2083 movdqa %xmm10,%xmm8 2084 movdqa %xmm13,%xmm6 2085 pxor 160-128(%rax),%xmm1 2086 paddd %xmm15,%xmm14 2087 pslld $5,%xmm8 2088 pxor %xmm11,%xmm6 2089 2090 movdqa %xmm10,%xmm9 2091 movdqa %xmm0,16-128(%rax) 2092 paddd %xmm0,%xmm14 2093 pxor %xmm3,%xmm1 2094 psrld $27,%xmm9 2095 pxor %xmm12,%xmm6 2096 movdqa %xmm11,%xmm7 2097 2098 pslld $30,%xmm7 2099 movdqa %xmm1,%xmm5 2100 por %xmm9,%xmm8 2101 psrld $31,%xmm5 2102 paddd %xmm6,%xmm14 2103 paddd %xmm1,%xmm1 2104 2105 psrld $2,%xmm11 2106 paddd %xmm8,%xmm14 2107 por %xmm5,%xmm1 2108 por %xmm7,%xmm11 2109 pxor %xmm4,%xmm2 2110 movdqa 80-128(%rax),%xmm4 2111 2112 movdqa %xmm14,%xmm8 2113 movdqa %xmm12,%xmm6 2114 pxor 176-128(%rax),%xmm2 2115 paddd %xmm15,%xmm13 2116 pslld $5,%xmm8 2117 pxor %xmm10,%xmm6 2118 2119 movdqa %xmm14,%xmm9 2120 movdqa %xmm1,32-128(%rax) 2121 paddd %xmm1,%xmm13 2122 pxor %xmm4,%xmm2 2123 psrld $27,%xmm9 2124 pxor %xmm11,%xmm6 2125 movdqa %xmm10,%xmm7 2126 2127 pslld $30,%xmm7 2128 movdqa %xmm2,%xmm5 2129 por %xmm9,%xmm8 2130 psrld $31,%xmm5 2131 paddd %xmm6,%xmm13 2132 paddd %xmm2,%xmm2 2133 2134 psrld $2,%xmm10 2135 paddd %xmm8,%xmm13 2136 por %xmm5,%xmm2 2137 por %xmm7,%xmm10 2138 pxor %xmm0,%xmm3 2139 movdqa 96-128(%rax),%xmm0 2140 2141 movdqa %xmm13,%xmm8 2142 movdqa %xmm11,%xmm6 2143 pxor 192-128(%rax),%xmm3 2144 paddd %xmm15,%xmm12 2145 pslld $5,%xmm8 2146 pxor %xmm14,%xmm6 2147 2148 movdqa %xmm13,%xmm9 2149 movdqa %xmm2,48-128(%rax) 2150 paddd %xmm2,%xmm12 2151 pxor %xmm0,%xmm3 2152 psrld $27,%xmm9 2153 pxor %xmm10,%xmm6 2154 movdqa %xmm14,%xmm7 2155 2156 pslld $30,%xmm7 2157 movdqa %xmm3,%xmm5 2158 por %xmm9,%xmm8 2159 psrld $31,%xmm5 2160 paddd %xmm6,%xmm12 2161 paddd %xmm3,%xmm3 2162 2163 psrld $2,%xmm14 2164 paddd %xmm8,%xmm12 2165 por %xmm5,%xmm3 2166 por %xmm7,%xmm14 2167 pxor %xmm1,%xmm4 2168 movdqa 112-128(%rax),%xmm1 2169 2170 movdqa %xmm12,%xmm8 2171 movdqa %xmm10,%xmm6 2172 pxor 208-128(%rax),%xmm4 2173 paddd %xmm15,%xmm11 2174 pslld $5,%xmm8 2175 pxor %xmm13,%xmm6 2176 2177 movdqa %xmm12,%xmm9 2178 movdqa %xmm3,64-128(%rax) 2179 paddd %xmm3,%xmm11 2180 pxor %xmm1,%xmm4 2181 psrld $27,%xmm9 2182 pxor %xmm14,%xmm6 2183 movdqa %xmm13,%xmm7 2184 2185 pslld $30,%xmm7 2186 movdqa %xmm4,%xmm5 2187 por %xmm9,%xmm8 2188 psrld $31,%xmm5 2189 paddd %xmm6,%xmm11 2190 paddd %xmm4,%xmm4 2191 2192 psrld $2,%xmm13 2193 paddd %xmm8,%xmm11 2194 por %xmm5,%xmm4 2195 por %xmm7,%xmm13 2196 pxor %xmm2,%xmm0 2197 movdqa 128-128(%rax),%xmm2 2198 2199 movdqa %xmm11,%xmm8 2200 movdqa %xmm14,%xmm6 2201 pxor 224-128(%rax),%xmm0 2202 paddd %xmm15,%xmm10 2203 pslld $5,%xmm8 2204 pxor %xmm12,%xmm6 2205 2206 movdqa %xmm11,%xmm9 2207 movdqa %xmm4,80-128(%rax) 2208 paddd %xmm4,%xmm10 2209 pxor %xmm2,%xmm0 2210 psrld $27,%xmm9 2211 pxor %xmm13,%xmm6 2212 movdqa %xmm12,%xmm7 2213 2214 pslld $30,%xmm7 2215 movdqa %xmm0,%xmm5 2216 por %xmm9,%xmm8 2217 psrld $31,%xmm5 2218 paddd %xmm6,%xmm10 2219 paddd %xmm0,%xmm0 2220 2221 psrld $2,%xmm12 2222 paddd %xmm8,%xmm10 2223 por %xmm5,%xmm0 2224 por %xmm7,%xmm12 2225 pxor %xmm3,%xmm1 2226 movdqa 144-128(%rax),%xmm3 2227 2228 movdqa %xmm10,%xmm8 2229 movdqa %xmm13,%xmm6 2230 pxor 240-128(%rax),%xmm1 2231 paddd %xmm15,%xmm14 2232 pslld $5,%xmm8 2233 pxor %xmm11,%xmm6 2234 2235 movdqa %xmm10,%xmm9 2236 movdqa %xmm0,96-128(%rax) 2237 paddd %xmm0,%xmm14 2238 pxor %xmm3,%xmm1 2239 psrld $27,%xmm9 2240 pxor %xmm12,%xmm6 2241 movdqa %xmm11,%xmm7 2242 2243 pslld $30,%xmm7 2244 movdqa %xmm1,%xmm5 2245 por %xmm9,%xmm8 2246 psrld $31,%xmm5 2247 paddd %xmm6,%xmm14 2248 paddd %xmm1,%xmm1 2249 2250 psrld $2,%xmm11 2251 paddd %xmm8,%xmm14 2252 por %xmm5,%xmm1 2253 por %xmm7,%xmm11 2254 pxor %xmm4,%xmm2 2255 movdqa 160-128(%rax),%xmm4 2256 2257 movdqa %xmm14,%xmm8 2258 movdqa %xmm12,%xmm6 2259 pxor 0-128(%rax),%xmm2 2260 paddd %xmm15,%xmm13 2261 pslld $5,%xmm8 2262 pxor %xmm10,%xmm6 2263 2264 movdqa %xmm14,%xmm9 2265 movdqa %xmm1,112-128(%rax) 2266 paddd %xmm1,%xmm13 2267 pxor %xmm4,%xmm2 2268 psrld $27,%xmm9 2269 pxor %xmm11,%xmm6 2270 movdqa %xmm10,%xmm7 2271 2272 pslld $30,%xmm7 2273 movdqa %xmm2,%xmm5 2274 por %xmm9,%xmm8 2275 psrld $31,%xmm5 2276 paddd %xmm6,%xmm13 2277 paddd %xmm2,%xmm2 2278 2279 psrld $2,%xmm10 2280 paddd %xmm8,%xmm13 2281 por %xmm5,%xmm2 2282 por %xmm7,%xmm10 2283 pxor %xmm0,%xmm3 2284 movdqa 176-128(%rax),%xmm0 2285 2286 movdqa %xmm13,%xmm8 2287 movdqa %xmm11,%xmm6 2288 pxor 16-128(%rax),%xmm3 2289 paddd %xmm15,%xmm12 2290 pslld $5,%xmm8 2291 pxor %xmm14,%xmm6 2292 2293 movdqa %xmm13,%xmm9 2294 paddd %xmm2,%xmm12 2295 pxor %xmm0,%xmm3 2296 psrld $27,%xmm9 2297 pxor %xmm10,%xmm6 2298 movdqa %xmm14,%xmm7 2299 2300 pslld $30,%xmm7 2301 movdqa %xmm3,%xmm5 2302 por %xmm9,%xmm8 2303 psrld $31,%xmm5 2304 paddd %xmm6,%xmm12 2305 paddd %xmm3,%xmm3 2306 2307 psrld $2,%xmm14 2308 paddd %xmm8,%xmm12 2309 por %xmm5,%xmm3 2310 por %xmm7,%xmm14 2311 pxor %xmm1,%xmm4 2312 movdqa 192-128(%rax),%xmm1 2313 2314 movdqa %xmm12,%xmm8 2315 movdqa %xmm10,%xmm6 2316 pxor 32-128(%rax),%xmm4 2317 paddd %xmm15,%xmm11 2318 pslld $5,%xmm8 2319 pxor %xmm13,%xmm6 2320 2321 movdqa %xmm12,%xmm9 2322 paddd %xmm3,%xmm11 2323 pxor %xmm1,%xmm4 2324 psrld $27,%xmm9 2325 pxor %xmm14,%xmm6 2326 movdqa %xmm13,%xmm7 2327 2328 pslld $30,%xmm7 2329 movdqa %xmm4,%xmm5 2330 por %xmm9,%xmm8 2331 psrld $31,%xmm5 2332 paddd %xmm6,%xmm11 2333 paddd %xmm4,%xmm4 2334 2335 psrld $2,%xmm13 2336 paddd %xmm8,%xmm11 2337 por %xmm5,%xmm4 2338 por %xmm7,%xmm13 2339 pxor %xmm2,%xmm0 2340 movdqa 208-128(%rax),%xmm2 2341 2342 movdqa %xmm11,%xmm8 2343 movdqa %xmm14,%xmm6 2344 pxor 48-128(%rax),%xmm0 2345 paddd %xmm15,%xmm10 2346 pslld $5,%xmm8 2347 pxor %xmm12,%xmm6 2348 2349 movdqa %xmm11,%xmm9 2350 paddd %xmm4,%xmm10 2351 pxor %xmm2,%xmm0 2352 psrld $27,%xmm9 2353 pxor %xmm13,%xmm6 2354 movdqa %xmm12,%xmm7 2355 2356 pslld $30,%xmm7 2357 movdqa %xmm0,%xmm5 2358 por %xmm9,%xmm8 2359 psrld $31,%xmm5 2360 paddd %xmm6,%xmm10 2361 paddd %xmm0,%xmm0 2362 2363 psrld $2,%xmm12 2364 paddd %xmm8,%xmm10 2365 por %xmm5,%xmm0 2366 por %xmm7,%xmm12 2367 pxor %xmm3,%xmm1 2368 movdqa 224-128(%rax),%xmm3 2369 2370 movdqa %xmm10,%xmm8 2371 movdqa %xmm13,%xmm6 2372 pxor 64-128(%rax),%xmm1 2373 paddd %xmm15,%xmm14 2374 pslld $5,%xmm8 2375 pxor %xmm11,%xmm6 2376 2377 movdqa %xmm10,%xmm9 2378 paddd %xmm0,%xmm14 2379 pxor %xmm3,%xmm1 2380 psrld $27,%xmm9 2381 pxor %xmm12,%xmm6 2382 movdqa %xmm11,%xmm7 2383 2384 pslld $30,%xmm7 2385 movdqa %xmm1,%xmm5 2386 por %xmm9,%xmm8 2387 psrld $31,%xmm5 2388 paddd %xmm6,%xmm14 2389 paddd %xmm1,%xmm1 2390 2391 psrld $2,%xmm11 2392 paddd %xmm8,%xmm14 2393 por %xmm5,%xmm1 2394 por %xmm7,%xmm11 2395 pxor %xmm4,%xmm2 2396 movdqa 240-128(%rax),%xmm4 2397 2398 movdqa %xmm14,%xmm8 2399 movdqa %xmm12,%xmm6 2400 pxor 80-128(%rax),%xmm2 2401 paddd %xmm15,%xmm13 2402 pslld $5,%xmm8 2403 pxor %xmm10,%xmm6 2404 2405 movdqa %xmm14,%xmm9 2406 paddd %xmm1,%xmm13 2407 pxor %xmm4,%xmm2 2408 psrld $27,%xmm9 2409 pxor %xmm11,%xmm6 2410 movdqa %xmm10,%xmm7 2411 2412 pslld $30,%xmm7 2413 movdqa %xmm2,%xmm5 2414 por %xmm9,%xmm8 2415 psrld $31,%xmm5 2416 paddd %xmm6,%xmm13 2417 paddd %xmm2,%xmm2 2418 2419 psrld $2,%xmm10 2420 paddd %xmm8,%xmm13 2421 por %xmm5,%xmm2 2422 por %xmm7,%xmm10 2423 pxor %xmm0,%xmm3 2424 movdqa 0-128(%rax),%xmm0 2425 2426 movdqa %xmm13,%xmm8 2427 movdqa %xmm11,%xmm6 2428 pxor 96-128(%rax),%xmm3 2429 paddd %xmm15,%xmm12 2430 pslld $5,%xmm8 2431 pxor %xmm14,%xmm6 2432 2433 movdqa %xmm13,%xmm9 2434 paddd %xmm2,%xmm12 2435 pxor %xmm0,%xmm3 2436 psrld $27,%xmm9 2437 pxor %xmm10,%xmm6 2438 movdqa %xmm14,%xmm7 2439 2440 pslld $30,%xmm7 2441 movdqa %xmm3,%xmm5 2442 por %xmm9,%xmm8 2443 psrld $31,%xmm5 2444 paddd %xmm6,%xmm12 2445 paddd %xmm3,%xmm3 2446 2447 psrld $2,%xmm14 2448 paddd %xmm8,%xmm12 2449 por %xmm5,%xmm3 2450 por %xmm7,%xmm14 2451 pxor %xmm1,%xmm4 2452 movdqa 16-128(%rax),%xmm1 2453 2454 movdqa %xmm12,%xmm8 2455 movdqa %xmm10,%xmm6 2456 pxor 112-128(%rax),%xmm4 2457 paddd %xmm15,%xmm11 2458 pslld $5,%xmm8 2459 pxor %xmm13,%xmm6 2460 2461 movdqa %xmm12,%xmm9 2462 paddd %xmm3,%xmm11 2463 pxor %xmm1,%xmm4 2464 psrld $27,%xmm9 2465 pxor %xmm14,%xmm6 2466 movdqa %xmm13,%xmm7 2467 2468 pslld $30,%xmm7 2469 movdqa %xmm4,%xmm5 2470 por %xmm9,%xmm8 2471 psrld $31,%xmm5 2472 paddd %xmm6,%xmm11 2473 paddd %xmm4,%xmm4 2474 2475 psrld $2,%xmm13 2476 paddd %xmm8,%xmm11 2477 por %xmm5,%xmm4 2478 por %xmm7,%xmm13 2479 movdqa %xmm11,%xmm8 2480 paddd %xmm15,%xmm10 2481 movdqa %xmm14,%xmm6 2482 pslld $5,%xmm8 2483 pxor %xmm12,%xmm6 2484 2485 movdqa %xmm11,%xmm9 2486 paddd %xmm4,%xmm10 2487 psrld $27,%xmm9 2488 movdqa %xmm12,%xmm7 2489 pxor %xmm13,%xmm6 2490 2491 pslld $30,%xmm7 2492 por %xmm9,%xmm8 2493 paddd %xmm6,%xmm10 2494 2495 psrld $2,%xmm12 2496 paddd %xmm8,%xmm10 2497 por %xmm7,%xmm12 2498 movdqa (%rbx),%xmm0 2499 movl $1,%ecx 2500 cmpl 0(%rbx),%ecx 2501 pxor %xmm8,%xmm8 2502 cmovgeq %rbp,%r8 2503 cmpl 4(%rbx),%ecx 2504 movdqa %xmm0,%xmm1 2505 cmovgeq %rbp,%r9 2506 cmpl 8(%rbx),%ecx 2507 pcmpgtd %xmm8,%xmm1 2508 cmovgeq %rbp,%r10 2509 cmpl 12(%rbx),%ecx 2510 paddd %xmm1,%xmm0 2511 cmovgeq %rbp,%r11 2512 2513 movdqu 0(%rdi),%xmm6 2514 pand %xmm1,%xmm10 2515 movdqu 32(%rdi),%xmm7 2516 pand %xmm1,%xmm11 2517 paddd %xmm6,%xmm10 2518 movdqu 64(%rdi),%xmm8 2519 pand %xmm1,%xmm12 2520 paddd %xmm7,%xmm11 2521 movdqu 96(%rdi),%xmm9 2522 pand %xmm1,%xmm13 2523 paddd %xmm8,%xmm12 2524 movdqu 128(%rdi),%xmm5 2525 pand %xmm1,%xmm14 2526 movdqu %xmm10,0(%rdi) 2527 paddd %xmm9,%xmm13 2528 movdqu %xmm11,32(%rdi) 2529 paddd %xmm5,%xmm14 2530 movdqu %xmm12,64(%rdi) 2531 movdqu %xmm13,96(%rdi) 2532 movdqu %xmm14,128(%rdi) 2533 2534 movdqa %xmm0,(%rbx) 2535 movdqa 96(%rbp),%xmm5 2536 movdqa -32(%rbp),%xmm15 2537 decl %edx 2538 jnz .Loop 2539 2540 movl 280(%rsp),%edx 2541 leaq 16(%rdi),%rdi 2542 leaq 64(%rsi),%rsi 2543 decl %edx 2544 jnz .Loop_grande 2545 2546.Ldone: 2547 movq 272(%rsp),%rax 2548 movq -16(%rax),%rbp 2549 movq -8(%rax),%rbx 2550 leaq (%rax),%rsp 2551.Lepilogue: 2552 .byte 0xf3,0xc3 2553.size sha1_multi_block,.-sha1_multi_block 2554.type sha1_multi_block_shaext,@function 2555.align 32 2556sha1_multi_block_shaext: 2557_shaext_shortcut: 2558 movq %rsp,%rax 2559 pushq %rbx 2560 pushq %rbp 2561 subq $288,%rsp 2562 shll $1,%edx 2563 andq $-256,%rsp 2564 leaq 64(%rdi),%rdi 2565 movq %rax,272(%rsp) 2566.Lbody_shaext: 2567 leaq 256(%rsp),%rbx 2568 movdqa K_XX_XX+128(%rip),%xmm3 2569 2570.Loop_grande_shaext: 2571 movl %edx,280(%rsp) 2572 xorl %edx,%edx 2573 movq 0(%rsi),%r8 2574 movl 8(%rsi),%ecx 2575 cmpl %edx,%ecx 2576 cmovgl %ecx,%edx 2577 testl %ecx,%ecx 2578 movl %ecx,0(%rbx) 2579 cmovleq %rsp,%r8 2580 movq 16(%rsi),%r9 2581 movl 24(%rsi),%ecx 2582 cmpl %edx,%ecx 2583 cmovgl %ecx,%edx 2584 testl %ecx,%ecx 2585 movl %ecx,4(%rbx) 2586 cmovleq %rsp,%r9 2587 testl %edx,%edx 2588 jz .Ldone_shaext 2589 2590 movq 0-64(%rdi),%xmm0 2591 movq 32-64(%rdi),%xmm4 2592 movq 64-64(%rdi),%xmm5 2593 movq 96-64(%rdi),%xmm6 2594 movq 128-64(%rdi),%xmm7 2595 2596 punpckldq %xmm4,%xmm0 2597 punpckldq %xmm6,%xmm5 2598 2599 movdqa %xmm0,%xmm8 2600 punpcklqdq %xmm5,%xmm0 2601 punpckhqdq %xmm5,%xmm8 2602 2603 pshufd $63,%xmm7,%xmm1 2604 pshufd $127,%xmm7,%xmm9 2605 pshufd $27,%xmm0,%xmm0 2606 pshufd $27,%xmm8,%xmm8 2607 jmp .Loop_shaext 2608 2609.align 32 2610.Loop_shaext: 2611 movdqu 0(%r8),%xmm4 2612 movdqu 0(%r9),%xmm11 2613 movdqu 16(%r8),%xmm5 2614 movdqu 16(%r9),%xmm12 2615 movdqu 32(%r8),%xmm6 2616.byte 102,15,56,0,227 2617 movdqu 32(%r9),%xmm13 2618.byte 102,68,15,56,0,219 2619 movdqu 48(%r8),%xmm7 2620 leaq 64(%r8),%r8 2621.byte 102,15,56,0,235 2622 movdqu 48(%r9),%xmm14 2623 leaq 64(%r9),%r9 2624.byte 102,68,15,56,0,227 2625 2626 movdqa %xmm1,80(%rsp) 2627 paddd %xmm4,%xmm1 2628 movdqa %xmm9,112(%rsp) 2629 paddd %xmm11,%xmm9 2630 movdqa %xmm0,64(%rsp) 2631 movdqa %xmm0,%xmm2 2632 movdqa %xmm8,96(%rsp) 2633 movdqa %xmm8,%xmm10 2634.byte 15,58,204,193,0 2635.byte 15,56,200,213 2636.byte 69,15,58,204,193,0 2637.byte 69,15,56,200,212 2638.byte 102,15,56,0,243 2639 prefetcht0 127(%r8) 2640.byte 15,56,201,229 2641.byte 102,68,15,56,0,235 2642 prefetcht0 127(%r9) 2643.byte 69,15,56,201,220 2644 2645.byte 102,15,56,0,251 2646 movdqa %xmm0,%xmm1 2647.byte 102,68,15,56,0,243 2648 movdqa %xmm8,%xmm9 2649.byte 15,58,204,194,0 2650.byte 15,56,200,206 2651.byte 69,15,58,204,194,0 2652.byte 69,15,56,200,205 2653 pxor %xmm6,%xmm4 2654.byte 15,56,201,238 2655 pxor %xmm13,%xmm11 2656.byte 69,15,56,201,229 2657 movdqa %xmm0,%xmm2 2658 movdqa %xmm8,%xmm10 2659.byte 15,58,204,193,0 2660.byte 15,56,200,215 2661.byte 69,15,58,204,193,0 2662.byte 69,15,56,200,214 2663.byte 15,56,202,231 2664.byte 69,15,56,202,222 2665 pxor %xmm7,%xmm5 2666.byte 15,56,201,247 2667 pxor %xmm14,%xmm12 2668.byte 69,15,56,201,238 2669 movdqa %xmm0,%xmm1 2670 movdqa %xmm8,%xmm9 2671.byte 15,58,204,194,0 2672.byte 15,56,200,204 2673.byte 69,15,58,204,194,0 2674.byte 69,15,56,200,203 2675.byte 15,56,202,236 2676.byte 69,15,56,202,227 2677 pxor %xmm4,%xmm6 2678.byte 15,56,201,252 2679 pxor %xmm11,%xmm13 2680.byte 69,15,56,201,243 2681 movdqa %xmm0,%xmm2 2682 movdqa %xmm8,%xmm10 2683.byte 15,58,204,193,0 2684.byte 15,56,200,213 2685.byte 69,15,58,204,193,0 2686.byte 69,15,56,200,212 2687.byte 15,56,202,245 2688.byte 69,15,56,202,236 2689 pxor %xmm5,%xmm7 2690.byte 15,56,201,229 2691 pxor %xmm12,%xmm14 2692.byte 69,15,56,201,220 2693 movdqa %xmm0,%xmm1 2694 movdqa %xmm8,%xmm9 2695.byte 15,58,204,194,1 2696.byte 15,56,200,206 2697.byte 69,15,58,204,194,1 2698.byte 69,15,56,200,205 2699.byte 15,56,202,254 2700.byte 69,15,56,202,245 2701 pxor %xmm6,%xmm4 2702.byte 15,56,201,238 2703 pxor %xmm13,%xmm11 2704.byte 69,15,56,201,229 2705 movdqa %xmm0,%xmm2 2706 movdqa %xmm8,%xmm10 2707.byte 15,58,204,193,1 2708.byte 15,56,200,215 2709.byte 69,15,58,204,193,1 2710.byte 69,15,56,200,214 2711.byte 15,56,202,231 2712.byte 69,15,56,202,222 2713 pxor %xmm7,%xmm5 2714.byte 15,56,201,247 2715 pxor %xmm14,%xmm12 2716.byte 69,15,56,201,238 2717 movdqa %xmm0,%xmm1 2718 movdqa %xmm8,%xmm9 2719.byte 15,58,204,194,1 2720.byte 15,56,200,204 2721.byte 69,15,58,204,194,1 2722.byte 69,15,56,200,203 2723.byte 15,56,202,236 2724.byte 69,15,56,202,227 2725 pxor %xmm4,%xmm6 2726.byte 15,56,201,252 2727 pxor %xmm11,%xmm13 2728.byte 69,15,56,201,243 2729 movdqa %xmm0,%xmm2 2730 movdqa %xmm8,%xmm10 2731.byte 15,58,204,193,1 2732.byte 15,56,200,213 2733.byte 69,15,58,204,193,1 2734.byte 69,15,56,200,212 2735.byte 15,56,202,245 2736.byte 69,15,56,202,236 2737 pxor %xmm5,%xmm7 2738.byte 15,56,201,229 2739 pxor %xmm12,%xmm14 2740.byte 69,15,56,201,220 2741 movdqa %xmm0,%xmm1 2742 movdqa %xmm8,%xmm9 2743.byte 15,58,204,194,1 2744.byte 15,56,200,206 2745.byte 69,15,58,204,194,1 2746.byte 69,15,56,200,205 2747.byte 15,56,202,254 2748.byte 69,15,56,202,245 2749 pxor %xmm6,%xmm4 2750.byte 15,56,201,238 2751 pxor %xmm13,%xmm11 2752.byte 69,15,56,201,229 2753 movdqa %xmm0,%xmm2 2754 movdqa %xmm8,%xmm10 2755.byte 15,58,204,193,2 2756.byte 15,56,200,215 2757.byte 69,15,58,204,193,2 2758.byte 69,15,56,200,214 2759.byte 15,56,202,231 2760.byte 69,15,56,202,222 2761 pxor %xmm7,%xmm5 2762.byte 15,56,201,247 2763 pxor %xmm14,%xmm12 2764.byte 69,15,56,201,238 2765 movdqa %xmm0,%xmm1 2766 movdqa %xmm8,%xmm9 2767.byte 15,58,204,194,2 2768.byte 15,56,200,204 2769.byte 69,15,58,204,194,2 2770.byte 69,15,56,200,203 2771.byte 15,56,202,236 2772.byte 69,15,56,202,227 2773 pxor %xmm4,%xmm6 2774.byte 15,56,201,252 2775 pxor %xmm11,%xmm13 2776.byte 69,15,56,201,243 2777 movdqa %xmm0,%xmm2 2778 movdqa %xmm8,%xmm10 2779.byte 15,58,204,193,2 2780.byte 15,56,200,213 2781.byte 69,15,58,204,193,2 2782.byte 69,15,56,200,212 2783.byte 15,56,202,245 2784.byte 69,15,56,202,236 2785 pxor %xmm5,%xmm7 2786.byte 15,56,201,229 2787 pxor %xmm12,%xmm14 2788.byte 69,15,56,201,220 2789 movdqa %xmm0,%xmm1 2790 movdqa %xmm8,%xmm9 2791.byte 15,58,204,194,2 2792.byte 15,56,200,206 2793.byte 69,15,58,204,194,2 2794.byte 69,15,56,200,205 2795.byte 15,56,202,254 2796.byte 69,15,56,202,245 2797 pxor %xmm6,%xmm4 2798.byte 15,56,201,238 2799 pxor %xmm13,%xmm11 2800.byte 69,15,56,201,229 2801 movdqa %xmm0,%xmm2 2802 movdqa %xmm8,%xmm10 2803.byte 15,58,204,193,2 2804.byte 15,56,200,215 2805.byte 69,15,58,204,193,2 2806.byte 69,15,56,200,214 2807.byte 15,56,202,231 2808.byte 69,15,56,202,222 2809 pxor %xmm7,%xmm5 2810.byte 15,56,201,247 2811 pxor %xmm14,%xmm12 2812.byte 69,15,56,201,238 2813 movdqa %xmm0,%xmm1 2814 movdqa %xmm8,%xmm9 2815.byte 15,58,204,194,3 2816.byte 15,56,200,204 2817.byte 69,15,58,204,194,3 2818.byte 69,15,56,200,203 2819.byte 15,56,202,236 2820.byte 69,15,56,202,227 2821 pxor %xmm4,%xmm6 2822.byte 15,56,201,252 2823 pxor %xmm11,%xmm13 2824.byte 69,15,56,201,243 2825 movdqa %xmm0,%xmm2 2826 movdqa %xmm8,%xmm10 2827.byte 15,58,204,193,3 2828.byte 15,56,200,213 2829.byte 69,15,58,204,193,3 2830.byte 69,15,56,200,212 2831.byte 15,56,202,245 2832.byte 69,15,56,202,236 2833 pxor %xmm5,%xmm7 2834 pxor %xmm12,%xmm14 2835 2836 movl $1,%ecx 2837 pxor %xmm4,%xmm4 2838 cmpl 0(%rbx),%ecx 2839 cmovgeq %rsp,%r8 2840 2841 movdqa %xmm0,%xmm1 2842 movdqa %xmm8,%xmm9 2843.byte 15,58,204,194,3 2844.byte 15,56,200,206 2845.byte 69,15,58,204,194,3 2846.byte 69,15,56,200,205 2847.byte 15,56,202,254 2848.byte 69,15,56,202,245 2849 2850 cmpl 4(%rbx),%ecx 2851 cmovgeq %rsp,%r9 2852 movq (%rbx),%xmm6 2853 2854 movdqa %xmm0,%xmm2 2855 movdqa %xmm8,%xmm10 2856.byte 15,58,204,193,3 2857.byte 15,56,200,215 2858.byte 69,15,58,204,193,3 2859.byte 69,15,56,200,214 2860 2861 pshufd $0x00,%xmm6,%xmm11 2862 pshufd $0x55,%xmm6,%xmm12 2863 movdqa %xmm6,%xmm7 2864 pcmpgtd %xmm4,%xmm11 2865 pcmpgtd %xmm4,%xmm12 2866 2867 movdqa %xmm0,%xmm1 2868 movdqa %xmm8,%xmm9 2869.byte 15,58,204,194,3 2870.byte 15,56,200,204 2871.byte 69,15,58,204,194,3 2872.byte 68,15,56,200,204 2873 2874 pcmpgtd %xmm4,%xmm7 2875 pand %xmm11,%xmm0 2876 pand %xmm11,%xmm1 2877 pand %xmm12,%xmm8 2878 pand %xmm12,%xmm9 2879 paddd %xmm7,%xmm6 2880 2881 paddd 64(%rsp),%xmm0 2882 paddd 80(%rsp),%xmm1 2883 paddd 96(%rsp),%xmm8 2884 paddd 112(%rsp),%xmm9 2885 2886 movq %xmm6,(%rbx) 2887 decl %edx 2888 jnz .Loop_shaext 2889 2890 movl 280(%rsp),%edx 2891 2892 pshufd $27,%xmm0,%xmm0 2893 pshufd $27,%xmm8,%xmm8 2894 2895 movdqa %xmm0,%xmm6 2896 punpckldq %xmm8,%xmm0 2897 punpckhdq %xmm8,%xmm6 2898 punpckhdq %xmm9,%xmm1 2899 movq %xmm0,0-64(%rdi) 2900 psrldq $8,%xmm0 2901 movq %xmm6,64-64(%rdi) 2902 psrldq $8,%xmm6 2903 movq %xmm0,32-64(%rdi) 2904 psrldq $8,%xmm1 2905 movq %xmm6,96-64(%rdi) 2906 movq %xmm1,128-64(%rdi) 2907 2908 leaq 8(%rdi),%rdi 2909 leaq 32(%rsi),%rsi 2910 decl %edx 2911 jnz .Loop_grande_shaext 2912 2913.Ldone_shaext: 2914 2915 movq -16(%rax),%rbp 2916 movq -8(%rax),%rbx 2917 leaq (%rax),%rsp 2918.Lepilogue_shaext: 2919 .byte 0xf3,0xc3 2920.size sha1_multi_block_shaext,.-sha1_multi_block_shaext 2921 2922.align 256 2923.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 2924.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999 2925K_XX_XX: 2926.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 2927.long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1 2928.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc 2929.long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc 2930.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 2931.long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6 2932.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 2933.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 2934.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0 2935.byte 83,72,65,49,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 2936