1.text 2 3 4.globl aesni_cbc_sha256_enc 5.type aesni_cbc_sha256_enc,@function 6.align 16 7aesni_cbc_sha256_enc: 8.cfi_startproc 9 leaq OPENSSL_ia32cap_P(%rip),%r11 10 movl $1,%eax 11 cmpq $0,%rdi 12 je .Lprobe 13 movl 0(%r11),%eax 14 movq 4(%r11),%r10 15 btq $61,%r10 16 jc aesni_cbc_sha256_enc_shaext 17 movq %r10,%r11 18 shrq $32,%r11 19 20 testl $2048,%r10d 21 jnz aesni_cbc_sha256_enc_xop 22 andl $296,%r11d 23 cmpl $296,%r11d 24 je aesni_cbc_sha256_enc_avx2 25 andl $268435456,%r10d 26 jnz aesni_cbc_sha256_enc_avx 27 ud2 28 xorl %eax,%eax 29 cmpq $0,%rdi 30 je .Lprobe 31 ud2 32.Lprobe: 33 .byte 0xf3,0xc3 34.cfi_endproc 35.size aesni_cbc_sha256_enc,.-aesni_cbc_sha256_enc 36 37.align 64 38.type K256,@object 39K256: 40.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 41.long 0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5 42.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 43.long 0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5 44.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 45.long 0xd807aa98,0x12835b01,0x243185be,0x550c7dc3 46.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 47.long 0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174 48.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 49.long 0xe49b69c1,0xefbe4786,0x0fc19dc6,0x240ca1cc 50.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 51.long 0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da 52.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 53.long 0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7 54.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 55.long 0xc6e00bf3,0xd5a79147,0x06ca6351,0x14292967 56.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 57.long 0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13 58.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 59.long 0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85 60.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 61.long 0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3 62.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 63.long 0xd192e819,0xd6990624,0xf40e3585,0x106aa070 64.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 65.long 0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5 66.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 67.long 0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3 68.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 69.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208 70.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 71.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2 72 73.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 74.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f 75.long 0,0,0,0, 0,0,0,0, -1,-1,-1,-1 76.long 0,0,0,0, 0,0,0,0 77.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,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 78.align 64 79.type aesni_cbc_sha256_enc_xop,@function 80.align 64 81aesni_cbc_sha256_enc_xop: 82.cfi_startproc 83.Lxop_shortcut: 84 movq 8(%rsp),%r10 85 movq %rsp,%rax 86.cfi_def_cfa_register %rax 87 pushq %rbx 88.cfi_offset %rbx,-16 89 pushq %rbp 90.cfi_offset %rbp,-24 91 pushq %r12 92.cfi_offset %r12,-32 93 pushq %r13 94.cfi_offset %r13,-40 95 pushq %r14 96.cfi_offset %r14,-48 97 pushq %r15 98.cfi_offset %r15,-56 99 subq $128,%rsp 100 andq $-64,%rsp 101 102 shlq $6,%rdx 103 subq %rdi,%rsi 104 subq %rdi,%r10 105 addq %rdi,%rdx 106 107 108 movq %rsi,64+8(%rsp) 109 movq %rdx,64+16(%rsp) 110 111 movq %r8,64+32(%rsp) 112 movq %r9,64+40(%rsp) 113 movq %r10,64+48(%rsp) 114 movq %rax,120(%rsp) 115.cfi_escape 0x0f,0x06,0x77,0xf8,0x00,0x06,0x23,0x08 116.Lprologue_xop: 117 vzeroall 118 119 movq %rdi,%r12 120 leaq 128(%rcx),%rdi 121 leaq K256+544(%rip),%r13 122 movl 240-128(%rdi),%r14d 123 movq %r9,%r15 124 movq %r10,%rsi 125 vmovdqu (%r8),%xmm8 126 subq $9,%r14 127 128 movl 0(%r15),%eax 129 movl 4(%r15),%ebx 130 movl 8(%r15),%ecx 131 movl 12(%r15),%edx 132 movl 16(%r15),%r8d 133 movl 20(%r15),%r9d 134 movl 24(%r15),%r10d 135 movl 28(%r15),%r11d 136 137 vmovdqa 0(%r13,%r14,8),%xmm14 138 vmovdqa 16(%r13,%r14,8),%xmm13 139 vmovdqa 32(%r13,%r14,8),%xmm12 140 vmovdqu 0-128(%rdi),%xmm10 141 jmp .Lloop_xop 142.align 16 143.Lloop_xop: 144 vmovdqa K256+512(%rip),%xmm7 145 vmovdqu 0(%rsi,%r12,1),%xmm0 146 vmovdqu 16(%rsi,%r12,1),%xmm1 147 vmovdqu 32(%rsi,%r12,1),%xmm2 148 vmovdqu 48(%rsi,%r12,1),%xmm3 149 vpshufb %xmm7,%xmm0,%xmm0 150 leaq K256(%rip),%rbp 151 vpshufb %xmm7,%xmm1,%xmm1 152 vpshufb %xmm7,%xmm2,%xmm2 153 vpaddd 0(%rbp),%xmm0,%xmm4 154 vpshufb %xmm7,%xmm3,%xmm3 155 vpaddd 32(%rbp),%xmm1,%xmm5 156 vpaddd 64(%rbp),%xmm2,%xmm6 157 vpaddd 96(%rbp),%xmm3,%xmm7 158 vmovdqa %xmm4,0(%rsp) 159 movl %eax,%r14d 160 vmovdqa %xmm5,16(%rsp) 161 movl %ebx,%esi 162 vmovdqa %xmm6,32(%rsp) 163 xorl %ecx,%esi 164 vmovdqa %xmm7,48(%rsp) 165 movl %r8d,%r13d 166 jmp .Lxop_00_47 167 168.align 16 169.Lxop_00_47: 170 subq $-32*4,%rbp 171 vmovdqu (%r12),%xmm9 172 movq %r12,64+0(%rsp) 173 vpalignr $4,%xmm0,%xmm1,%xmm4 174 rorl $14,%r13d 175 movl %r14d,%eax 176 vpalignr $4,%xmm2,%xmm3,%xmm7 177 movl %r9d,%r12d 178 xorl %r8d,%r13d 179.byte 143,232,120,194,236,14 180 rorl $9,%r14d 181 xorl %r10d,%r12d 182 vpsrld $3,%xmm4,%xmm4 183 rorl $5,%r13d 184 xorl %eax,%r14d 185 vpaddd %xmm7,%xmm0,%xmm0 186 andl %r8d,%r12d 187 vpxor %xmm10,%xmm9,%xmm9 188 vmovdqu 16-128(%rdi),%xmm10 189 xorl %r8d,%r13d 190 addl 0(%rsp),%r11d 191 movl %eax,%r15d 192.byte 143,232,120,194,245,11 193 rorl $11,%r14d 194 xorl %r10d,%r12d 195 vpxor %xmm5,%xmm4,%xmm4 196 xorl %ebx,%r15d 197 rorl $6,%r13d 198 addl %r12d,%r11d 199 andl %r15d,%esi 200.byte 143,232,120,194,251,13 201 xorl %eax,%r14d 202 addl %r13d,%r11d 203 vpxor %xmm6,%xmm4,%xmm4 204 xorl %ebx,%esi 205 addl %r11d,%edx 206 vpsrld $10,%xmm3,%xmm6 207 rorl $2,%r14d 208 addl %esi,%r11d 209 vpaddd %xmm4,%xmm0,%xmm0 210 movl %edx,%r13d 211 addl %r11d,%r14d 212.byte 143,232,120,194,239,2 213 rorl $14,%r13d 214 movl %r14d,%r11d 215 vpxor %xmm6,%xmm7,%xmm7 216 movl %r8d,%r12d 217 xorl %edx,%r13d 218 rorl $9,%r14d 219 xorl %r9d,%r12d 220 vpxor %xmm5,%xmm7,%xmm7 221 rorl $5,%r13d 222 xorl %r11d,%r14d 223 andl %edx,%r12d 224 vpxor %xmm8,%xmm9,%xmm9 225 xorl %edx,%r13d 226 vpsrldq $8,%xmm7,%xmm7 227 addl 4(%rsp),%r10d 228 movl %r11d,%esi 229 rorl $11,%r14d 230 xorl %r9d,%r12d 231 vpaddd %xmm7,%xmm0,%xmm0 232 xorl %eax,%esi 233 rorl $6,%r13d 234 addl %r12d,%r10d 235 andl %esi,%r15d 236.byte 143,232,120,194,248,13 237 xorl %r11d,%r14d 238 addl %r13d,%r10d 239 vpsrld $10,%xmm0,%xmm6 240 xorl %eax,%r15d 241 addl %r10d,%ecx 242.byte 143,232,120,194,239,2 243 rorl $2,%r14d 244 addl %r15d,%r10d 245 vpxor %xmm6,%xmm7,%xmm7 246 movl %ecx,%r13d 247 addl %r10d,%r14d 248 rorl $14,%r13d 249 movl %r14d,%r10d 250 vpxor %xmm5,%xmm7,%xmm7 251 movl %edx,%r12d 252 xorl %ecx,%r13d 253 rorl $9,%r14d 254 xorl %r8d,%r12d 255 vpslldq $8,%xmm7,%xmm7 256 rorl $5,%r13d 257 xorl %r10d,%r14d 258 andl %ecx,%r12d 259 vaesenc %xmm10,%xmm9,%xmm9 260 vmovdqu 32-128(%rdi),%xmm10 261 xorl %ecx,%r13d 262 vpaddd %xmm7,%xmm0,%xmm0 263 addl 8(%rsp),%r9d 264 movl %r10d,%r15d 265 rorl $11,%r14d 266 xorl %r8d,%r12d 267 vpaddd 0(%rbp),%xmm0,%xmm6 268 xorl %r11d,%r15d 269 rorl $6,%r13d 270 addl %r12d,%r9d 271 andl %r15d,%esi 272 xorl %r10d,%r14d 273 addl %r13d,%r9d 274 xorl %r11d,%esi 275 addl %r9d,%ebx 276 rorl $2,%r14d 277 addl %esi,%r9d 278 movl %ebx,%r13d 279 addl %r9d,%r14d 280 rorl $14,%r13d 281 movl %r14d,%r9d 282 movl %ecx,%r12d 283 xorl %ebx,%r13d 284 rorl $9,%r14d 285 xorl %edx,%r12d 286 rorl $5,%r13d 287 xorl %r9d,%r14d 288 andl %ebx,%r12d 289 vaesenc %xmm10,%xmm9,%xmm9 290 vmovdqu 48-128(%rdi),%xmm10 291 xorl %ebx,%r13d 292 addl 12(%rsp),%r8d 293 movl %r9d,%esi 294 rorl $11,%r14d 295 xorl %edx,%r12d 296 xorl %r10d,%esi 297 rorl $6,%r13d 298 addl %r12d,%r8d 299 andl %esi,%r15d 300 xorl %r9d,%r14d 301 addl %r13d,%r8d 302 xorl %r10d,%r15d 303 addl %r8d,%eax 304 rorl $2,%r14d 305 addl %r15d,%r8d 306 movl %eax,%r13d 307 addl %r8d,%r14d 308 vmovdqa %xmm6,0(%rsp) 309 vpalignr $4,%xmm1,%xmm2,%xmm4 310 rorl $14,%r13d 311 movl %r14d,%r8d 312 vpalignr $4,%xmm3,%xmm0,%xmm7 313 movl %ebx,%r12d 314 xorl %eax,%r13d 315.byte 143,232,120,194,236,14 316 rorl $9,%r14d 317 xorl %ecx,%r12d 318 vpsrld $3,%xmm4,%xmm4 319 rorl $5,%r13d 320 xorl %r8d,%r14d 321 vpaddd %xmm7,%xmm1,%xmm1 322 andl %eax,%r12d 323 vaesenc %xmm10,%xmm9,%xmm9 324 vmovdqu 64-128(%rdi),%xmm10 325 xorl %eax,%r13d 326 addl 16(%rsp),%edx 327 movl %r8d,%r15d 328.byte 143,232,120,194,245,11 329 rorl $11,%r14d 330 xorl %ecx,%r12d 331 vpxor %xmm5,%xmm4,%xmm4 332 xorl %r9d,%r15d 333 rorl $6,%r13d 334 addl %r12d,%edx 335 andl %r15d,%esi 336.byte 143,232,120,194,248,13 337 xorl %r8d,%r14d 338 addl %r13d,%edx 339 vpxor %xmm6,%xmm4,%xmm4 340 xorl %r9d,%esi 341 addl %edx,%r11d 342 vpsrld $10,%xmm0,%xmm6 343 rorl $2,%r14d 344 addl %esi,%edx 345 vpaddd %xmm4,%xmm1,%xmm1 346 movl %r11d,%r13d 347 addl %edx,%r14d 348.byte 143,232,120,194,239,2 349 rorl $14,%r13d 350 movl %r14d,%edx 351 vpxor %xmm6,%xmm7,%xmm7 352 movl %eax,%r12d 353 xorl %r11d,%r13d 354 rorl $9,%r14d 355 xorl %ebx,%r12d 356 vpxor %xmm5,%xmm7,%xmm7 357 rorl $5,%r13d 358 xorl %edx,%r14d 359 andl %r11d,%r12d 360 vaesenc %xmm10,%xmm9,%xmm9 361 vmovdqu 80-128(%rdi),%xmm10 362 xorl %r11d,%r13d 363 vpsrldq $8,%xmm7,%xmm7 364 addl 20(%rsp),%ecx 365 movl %edx,%esi 366 rorl $11,%r14d 367 xorl %ebx,%r12d 368 vpaddd %xmm7,%xmm1,%xmm1 369 xorl %r8d,%esi 370 rorl $6,%r13d 371 addl %r12d,%ecx 372 andl %esi,%r15d 373.byte 143,232,120,194,249,13 374 xorl %edx,%r14d 375 addl %r13d,%ecx 376 vpsrld $10,%xmm1,%xmm6 377 xorl %r8d,%r15d 378 addl %ecx,%r10d 379.byte 143,232,120,194,239,2 380 rorl $2,%r14d 381 addl %r15d,%ecx 382 vpxor %xmm6,%xmm7,%xmm7 383 movl %r10d,%r13d 384 addl %ecx,%r14d 385 rorl $14,%r13d 386 movl %r14d,%ecx 387 vpxor %xmm5,%xmm7,%xmm7 388 movl %r11d,%r12d 389 xorl %r10d,%r13d 390 rorl $9,%r14d 391 xorl %eax,%r12d 392 vpslldq $8,%xmm7,%xmm7 393 rorl $5,%r13d 394 xorl %ecx,%r14d 395 andl %r10d,%r12d 396 vaesenc %xmm10,%xmm9,%xmm9 397 vmovdqu 96-128(%rdi),%xmm10 398 xorl %r10d,%r13d 399 vpaddd %xmm7,%xmm1,%xmm1 400 addl 24(%rsp),%ebx 401 movl %ecx,%r15d 402 rorl $11,%r14d 403 xorl %eax,%r12d 404 vpaddd 32(%rbp),%xmm1,%xmm6 405 xorl %edx,%r15d 406 rorl $6,%r13d 407 addl %r12d,%ebx 408 andl %r15d,%esi 409 xorl %ecx,%r14d 410 addl %r13d,%ebx 411 xorl %edx,%esi 412 addl %ebx,%r9d 413 rorl $2,%r14d 414 addl %esi,%ebx 415 movl %r9d,%r13d 416 addl %ebx,%r14d 417 rorl $14,%r13d 418 movl %r14d,%ebx 419 movl %r10d,%r12d 420 xorl %r9d,%r13d 421 rorl $9,%r14d 422 xorl %r11d,%r12d 423 rorl $5,%r13d 424 xorl %ebx,%r14d 425 andl %r9d,%r12d 426 vaesenc %xmm10,%xmm9,%xmm9 427 vmovdqu 112-128(%rdi),%xmm10 428 xorl %r9d,%r13d 429 addl 28(%rsp),%eax 430 movl %ebx,%esi 431 rorl $11,%r14d 432 xorl %r11d,%r12d 433 xorl %ecx,%esi 434 rorl $6,%r13d 435 addl %r12d,%eax 436 andl %esi,%r15d 437 xorl %ebx,%r14d 438 addl %r13d,%eax 439 xorl %ecx,%r15d 440 addl %eax,%r8d 441 rorl $2,%r14d 442 addl %r15d,%eax 443 movl %r8d,%r13d 444 addl %eax,%r14d 445 vmovdqa %xmm6,16(%rsp) 446 vpalignr $4,%xmm2,%xmm3,%xmm4 447 rorl $14,%r13d 448 movl %r14d,%eax 449 vpalignr $4,%xmm0,%xmm1,%xmm7 450 movl %r9d,%r12d 451 xorl %r8d,%r13d 452.byte 143,232,120,194,236,14 453 rorl $9,%r14d 454 xorl %r10d,%r12d 455 vpsrld $3,%xmm4,%xmm4 456 rorl $5,%r13d 457 xorl %eax,%r14d 458 vpaddd %xmm7,%xmm2,%xmm2 459 andl %r8d,%r12d 460 vaesenc %xmm10,%xmm9,%xmm9 461 vmovdqu 128-128(%rdi),%xmm10 462 xorl %r8d,%r13d 463 addl 32(%rsp),%r11d 464 movl %eax,%r15d 465.byte 143,232,120,194,245,11 466 rorl $11,%r14d 467 xorl %r10d,%r12d 468 vpxor %xmm5,%xmm4,%xmm4 469 xorl %ebx,%r15d 470 rorl $6,%r13d 471 addl %r12d,%r11d 472 andl %r15d,%esi 473.byte 143,232,120,194,249,13 474 xorl %eax,%r14d 475 addl %r13d,%r11d 476 vpxor %xmm6,%xmm4,%xmm4 477 xorl %ebx,%esi 478 addl %r11d,%edx 479 vpsrld $10,%xmm1,%xmm6 480 rorl $2,%r14d 481 addl %esi,%r11d 482 vpaddd %xmm4,%xmm2,%xmm2 483 movl %edx,%r13d 484 addl %r11d,%r14d 485.byte 143,232,120,194,239,2 486 rorl $14,%r13d 487 movl %r14d,%r11d 488 vpxor %xmm6,%xmm7,%xmm7 489 movl %r8d,%r12d 490 xorl %edx,%r13d 491 rorl $9,%r14d 492 xorl %r9d,%r12d 493 vpxor %xmm5,%xmm7,%xmm7 494 rorl $5,%r13d 495 xorl %r11d,%r14d 496 andl %edx,%r12d 497 vaesenc %xmm10,%xmm9,%xmm9 498 vmovdqu 144-128(%rdi),%xmm10 499 xorl %edx,%r13d 500 vpsrldq $8,%xmm7,%xmm7 501 addl 36(%rsp),%r10d 502 movl %r11d,%esi 503 rorl $11,%r14d 504 xorl %r9d,%r12d 505 vpaddd %xmm7,%xmm2,%xmm2 506 xorl %eax,%esi 507 rorl $6,%r13d 508 addl %r12d,%r10d 509 andl %esi,%r15d 510.byte 143,232,120,194,250,13 511 xorl %r11d,%r14d 512 addl %r13d,%r10d 513 vpsrld $10,%xmm2,%xmm6 514 xorl %eax,%r15d 515 addl %r10d,%ecx 516.byte 143,232,120,194,239,2 517 rorl $2,%r14d 518 addl %r15d,%r10d 519 vpxor %xmm6,%xmm7,%xmm7 520 movl %ecx,%r13d 521 addl %r10d,%r14d 522 rorl $14,%r13d 523 movl %r14d,%r10d 524 vpxor %xmm5,%xmm7,%xmm7 525 movl %edx,%r12d 526 xorl %ecx,%r13d 527 rorl $9,%r14d 528 xorl %r8d,%r12d 529 vpslldq $8,%xmm7,%xmm7 530 rorl $5,%r13d 531 xorl %r10d,%r14d 532 andl %ecx,%r12d 533 vaesenc %xmm10,%xmm9,%xmm9 534 vmovdqu 160-128(%rdi),%xmm10 535 xorl %ecx,%r13d 536 vpaddd %xmm7,%xmm2,%xmm2 537 addl 40(%rsp),%r9d 538 movl %r10d,%r15d 539 rorl $11,%r14d 540 xorl %r8d,%r12d 541 vpaddd 64(%rbp),%xmm2,%xmm6 542 xorl %r11d,%r15d 543 rorl $6,%r13d 544 addl %r12d,%r9d 545 andl %r15d,%esi 546 xorl %r10d,%r14d 547 addl %r13d,%r9d 548 xorl %r11d,%esi 549 addl %r9d,%ebx 550 rorl $2,%r14d 551 addl %esi,%r9d 552 movl %ebx,%r13d 553 addl %r9d,%r14d 554 rorl $14,%r13d 555 movl %r14d,%r9d 556 movl %ecx,%r12d 557 xorl %ebx,%r13d 558 rorl $9,%r14d 559 xorl %edx,%r12d 560 rorl $5,%r13d 561 xorl %r9d,%r14d 562 andl %ebx,%r12d 563 vaesenclast %xmm10,%xmm9,%xmm11 564 vaesenc %xmm10,%xmm9,%xmm9 565 vmovdqu 176-128(%rdi),%xmm10 566 xorl %ebx,%r13d 567 addl 44(%rsp),%r8d 568 movl %r9d,%esi 569 rorl $11,%r14d 570 xorl %edx,%r12d 571 xorl %r10d,%esi 572 rorl $6,%r13d 573 addl %r12d,%r8d 574 andl %esi,%r15d 575 xorl %r9d,%r14d 576 addl %r13d,%r8d 577 xorl %r10d,%r15d 578 addl %r8d,%eax 579 rorl $2,%r14d 580 addl %r15d,%r8d 581 movl %eax,%r13d 582 addl %r8d,%r14d 583 vmovdqa %xmm6,32(%rsp) 584 vpalignr $4,%xmm3,%xmm0,%xmm4 585 rorl $14,%r13d 586 movl %r14d,%r8d 587 vpalignr $4,%xmm1,%xmm2,%xmm7 588 movl %ebx,%r12d 589 xorl %eax,%r13d 590.byte 143,232,120,194,236,14 591 rorl $9,%r14d 592 xorl %ecx,%r12d 593 vpsrld $3,%xmm4,%xmm4 594 rorl $5,%r13d 595 xorl %r8d,%r14d 596 vpaddd %xmm7,%xmm3,%xmm3 597 andl %eax,%r12d 598 vpand %xmm12,%xmm11,%xmm8 599 vaesenc %xmm10,%xmm9,%xmm9 600 vmovdqu 192-128(%rdi),%xmm10 601 xorl %eax,%r13d 602 addl 48(%rsp),%edx 603 movl %r8d,%r15d 604.byte 143,232,120,194,245,11 605 rorl $11,%r14d 606 xorl %ecx,%r12d 607 vpxor %xmm5,%xmm4,%xmm4 608 xorl %r9d,%r15d 609 rorl $6,%r13d 610 addl %r12d,%edx 611 andl %r15d,%esi 612.byte 143,232,120,194,250,13 613 xorl %r8d,%r14d 614 addl %r13d,%edx 615 vpxor %xmm6,%xmm4,%xmm4 616 xorl %r9d,%esi 617 addl %edx,%r11d 618 vpsrld $10,%xmm2,%xmm6 619 rorl $2,%r14d 620 addl %esi,%edx 621 vpaddd %xmm4,%xmm3,%xmm3 622 movl %r11d,%r13d 623 addl %edx,%r14d 624.byte 143,232,120,194,239,2 625 rorl $14,%r13d 626 movl %r14d,%edx 627 vpxor %xmm6,%xmm7,%xmm7 628 movl %eax,%r12d 629 xorl %r11d,%r13d 630 rorl $9,%r14d 631 xorl %ebx,%r12d 632 vpxor %xmm5,%xmm7,%xmm7 633 rorl $5,%r13d 634 xorl %edx,%r14d 635 andl %r11d,%r12d 636 vaesenclast %xmm10,%xmm9,%xmm11 637 vaesenc %xmm10,%xmm9,%xmm9 638 vmovdqu 208-128(%rdi),%xmm10 639 xorl %r11d,%r13d 640 vpsrldq $8,%xmm7,%xmm7 641 addl 52(%rsp),%ecx 642 movl %edx,%esi 643 rorl $11,%r14d 644 xorl %ebx,%r12d 645 vpaddd %xmm7,%xmm3,%xmm3 646 xorl %r8d,%esi 647 rorl $6,%r13d 648 addl %r12d,%ecx 649 andl %esi,%r15d 650.byte 143,232,120,194,251,13 651 xorl %edx,%r14d 652 addl %r13d,%ecx 653 vpsrld $10,%xmm3,%xmm6 654 xorl %r8d,%r15d 655 addl %ecx,%r10d 656.byte 143,232,120,194,239,2 657 rorl $2,%r14d 658 addl %r15d,%ecx 659 vpxor %xmm6,%xmm7,%xmm7 660 movl %r10d,%r13d 661 addl %ecx,%r14d 662 rorl $14,%r13d 663 movl %r14d,%ecx 664 vpxor %xmm5,%xmm7,%xmm7 665 movl %r11d,%r12d 666 xorl %r10d,%r13d 667 rorl $9,%r14d 668 xorl %eax,%r12d 669 vpslldq $8,%xmm7,%xmm7 670 rorl $5,%r13d 671 xorl %ecx,%r14d 672 andl %r10d,%r12d 673 vpand %xmm13,%xmm11,%xmm11 674 vaesenc %xmm10,%xmm9,%xmm9 675 vmovdqu 224-128(%rdi),%xmm10 676 xorl %r10d,%r13d 677 vpaddd %xmm7,%xmm3,%xmm3 678 addl 56(%rsp),%ebx 679 movl %ecx,%r15d 680 rorl $11,%r14d 681 xorl %eax,%r12d 682 vpaddd 96(%rbp),%xmm3,%xmm6 683 xorl %edx,%r15d 684 rorl $6,%r13d 685 addl %r12d,%ebx 686 andl %r15d,%esi 687 xorl %ecx,%r14d 688 addl %r13d,%ebx 689 xorl %edx,%esi 690 addl %ebx,%r9d 691 rorl $2,%r14d 692 addl %esi,%ebx 693 movl %r9d,%r13d 694 addl %ebx,%r14d 695 rorl $14,%r13d 696 movl %r14d,%ebx 697 movl %r10d,%r12d 698 xorl %r9d,%r13d 699 rorl $9,%r14d 700 xorl %r11d,%r12d 701 rorl $5,%r13d 702 xorl %ebx,%r14d 703 andl %r9d,%r12d 704 vpor %xmm11,%xmm8,%xmm8 705 vaesenclast %xmm10,%xmm9,%xmm11 706 vmovdqu 0-128(%rdi),%xmm10 707 xorl %r9d,%r13d 708 addl 60(%rsp),%eax 709 movl %ebx,%esi 710 rorl $11,%r14d 711 xorl %r11d,%r12d 712 xorl %ecx,%esi 713 rorl $6,%r13d 714 addl %r12d,%eax 715 andl %esi,%r15d 716 xorl %ebx,%r14d 717 addl %r13d,%eax 718 xorl %ecx,%r15d 719 addl %eax,%r8d 720 rorl $2,%r14d 721 addl %r15d,%eax 722 movl %r8d,%r13d 723 addl %eax,%r14d 724 vmovdqa %xmm6,48(%rsp) 725 movq 64+0(%rsp),%r12 726 vpand %xmm14,%xmm11,%xmm11 727 movq 64+8(%rsp),%r15 728 vpor %xmm11,%xmm8,%xmm8 729 vmovdqu %xmm8,(%r15,%r12,1) 730 leaq 16(%r12),%r12 731 cmpb $0,131(%rbp) 732 jne .Lxop_00_47 733 vmovdqu (%r12),%xmm9 734 movq %r12,64+0(%rsp) 735 rorl $14,%r13d 736 movl %r14d,%eax 737 movl %r9d,%r12d 738 xorl %r8d,%r13d 739 rorl $9,%r14d 740 xorl %r10d,%r12d 741 rorl $5,%r13d 742 xorl %eax,%r14d 743 andl %r8d,%r12d 744 vpxor %xmm10,%xmm9,%xmm9 745 vmovdqu 16-128(%rdi),%xmm10 746 xorl %r8d,%r13d 747 addl 0(%rsp),%r11d 748 movl %eax,%r15d 749 rorl $11,%r14d 750 xorl %r10d,%r12d 751 xorl %ebx,%r15d 752 rorl $6,%r13d 753 addl %r12d,%r11d 754 andl %r15d,%esi 755 xorl %eax,%r14d 756 addl %r13d,%r11d 757 xorl %ebx,%esi 758 addl %r11d,%edx 759 rorl $2,%r14d 760 addl %esi,%r11d 761 movl %edx,%r13d 762 addl %r11d,%r14d 763 rorl $14,%r13d 764 movl %r14d,%r11d 765 movl %r8d,%r12d 766 xorl %edx,%r13d 767 rorl $9,%r14d 768 xorl %r9d,%r12d 769 rorl $5,%r13d 770 xorl %r11d,%r14d 771 andl %edx,%r12d 772 vpxor %xmm8,%xmm9,%xmm9 773 xorl %edx,%r13d 774 addl 4(%rsp),%r10d 775 movl %r11d,%esi 776 rorl $11,%r14d 777 xorl %r9d,%r12d 778 xorl %eax,%esi 779 rorl $6,%r13d 780 addl %r12d,%r10d 781 andl %esi,%r15d 782 xorl %r11d,%r14d 783 addl %r13d,%r10d 784 xorl %eax,%r15d 785 addl %r10d,%ecx 786 rorl $2,%r14d 787 addl %r15d,%r10d 788 movl %ecx,%r13d 789 addl %r10d,%r14d 790 rorl $14,%r13d 791 movl %r14d,%r10d 792 movl %edx,%r12d 793 xorl %ecx,%r13d 794 rorl $9,%r14d 795 xorl %r8d,%r12d 796 rorl $5,%r13d 797 xorl %r10d,%r14d 798 andl %ecx,%r12d 799 vaesenc %xmm10,%xmm9,%xmm9 800 vmovdqu 32-128(%rdi),%xmm10 801 xorl %ecx,%r13d 802 addl 8(%rsp),%r9d 803 movl %r10d,%r15d 804 rorl $11,%r14d 805 xorl %r8d,%r12d 806 xorl %r11d,%r15d 807 rorl $6,%r13d 808 addl %r12d,%r9d 809 andl %r15d,%esi 810 xorl %r10d,%r14d 811 addl %r13d,%r9d 812 xorl %r11d,%esi 813 addl %r9d,%ebx 814 rorl $2,%r14d 815 addl %esi,%r9d 816 movl %ebx,%r13d 817 addl %r9d,%r14d 818 rorl $14,%r13d 819 movl %r14d,%r9d 820 movl %ecx,%r12d 821 xorl %ebx,%r13d 822 rorl $9,%r14d 823 xorl %edx,%r12d 824 rorl $5,%r13d 825 xorl %r9d,%r14d 826 andl %ebx,%r12d 827 vaesenc %xmm10,%xmm9,%xmm9 828 vmovdqu 48-128(%rdi),%xmm10 829 xorl %ebx,%r13d 830 addl 12(%rsp),%r8d 831 movl %r9d,%esi 832 rorl $11,%r14d 833 xorl %edx,%r12d 834 xorl %r10d,%esi 835 rorl $6,%r13d 836 addl %r12d,%r8d 837 andl %esi,%r15d 838 xorl %r9d,%r14d 839 addl %r13d,%r8d 840 xorl %r10d,%r15d 841 addl %r8d,%eax 842 rorl $2,%r14d 843 addl %r15d,%r8d 844 movl %eax,%r13d 845 addl %r8d,%r14d 846 rorl $14,%r13d 847 movl %r14d,%r8d 848 movl %ebx,%r12d 849 xorl %eax,%r13d 850 rorl $9,%r14d 851 xorl %ecx,%r12d 852 rorl $5,%r13d 853 xorl %r8d,%r14d 854 andl %eax,%r12d 855 vaesenc %xmm10,%xmm9,%xmm9 856 vmovdqu 64-128(%rdi),%xmm10 857 xorl %eax,%r13d 858 addl 16(%rsp),%edx 859 movl %r8d,%r15d 860 rorl $11,%r14d 861 xorl %ecx,%r12d 862 xorl %r9d,%r15d 863 rorl $6,%r13d 864 addl %r12d,%edx 865 andl %r15d,%esi 866 xorl %r8d,%r14d 867 addl %r13d,%edx 868 xorl %r9d,%esi 869 addl %edx,%r11d 870 rorl $2,%r14d 871 addl %esi,%edx 872 movl %r11d,%r13d 873 addl %edx,%r14d 874 rorl $14,%r13d 875 movl %r14d,%edx 876 movl %eax,%r12d 877 xorl %r11d,%r13d 878 rorl $9,%r14d 879 xorl %ebx,%r12d 880 rorl $5,%r13d 881 xorl %edx,%r14d 882 andl %r11d,%r12d 883 vaesenc %xmm10,%xmm9,%xmm9 884 vmovdqu 80-128(%rdi),%xmm10 885 xorl %r11d,%r13d 886 addl 20(%rsp),%ecx 887 movl %edx,%esi 888 rorl $11,%r14d 889 xorl %ebx,%r12d 890 xorl %r8d,%esi 891 rorl $6,%r13d 892 addl %r12d,%ecx 893 andl %esi,%r15d 894 xorl %edx,%r14d 895 addl %r13d,%ecx 896 xorl %r8d,%r15d 897 addl %ecx,%r10d 898 rorl $2,%r14d 899 addl %r15d,%ecx 900 movl %r10d,%r13d 901 addl %ecx,%r14d 902 rorl $14,%r13d 903 movl %r14d,%ecx 904 movl %r11d,%r12d 905 xorl %r10d,%r13d 906 rorl $9,%r14d 907 xorl %eax,%r12d 908 rorl $5,%r13d 909 xorl %ecx,%r14d 910 andl %r10d,%r12d 911 vaesenc %xmm10,%xmm9,%xmm9 912 vmovdqu 96-128(%rdi),%xmm10 913 xorl %r10d,%r13d 914 addl 24(%rsp),%ebx 915 movl %ecx,%r15d 916 rorl $11,%r14d 917 xorl %eax,%r12d 918 xorl %edx,%r15d 919 rorl $6,%r13d 920 addl %r12d,%ebx 921 andl %r15d,%esi 922 xorl %ecx,%r14d 923 addl %r13d,%ebx 924 xorl %edx,%esi 925 addl %ebx,%r9d 926 rorl $2,%r14d 927 addl %esi,%ebx 928 movl %r9d,%r13d 929 addl %ebx,%r14d 930 rorl $14,%r13d 931 movl %r14d,%ebx 932 movl %r10d,%r12d 933 xorl %r9d,%r13d 934 rorl $9,%r14d 935 xorl %r11d,%r12d 936 rorl $5,%r13d 937 xorl %ebx,%r14d 938 andl %r9d,%r12d 939 vaesenc %xmm10,%xmm9,%xmm9 940 vmovdqu 112-128(%rdi),%xmm10 941 xorl %r9d,%r13d 942 addl 28(%rsp),%eax 943 movl %ebx,%esi 944 rorl $11,%r14d 945 xorl %r11d,%r12d 946 xorl %ecx,%esi 947 rorl $6,%r13d 948 addl %r12d,%eax 949 andl %esi,%r15d 950 xorl %ebx,%r14d 951 addl %r13d,%eax 952 xorl %ecx,%r15d 953 addl %eax,%r8d 954 rorl $2,%r14d 955 addl %r15d,%eax 956 movl %r8d,%r13d 957 addl %eax,%r14d 958 rorl $14,%r13d 959 movl %r14d,%eax 960 movl %r9d,%r12d 961 xorl %r8d,%r13d 962 rorl $9,%r14d 963 xorl %r10d,%r12d 964 rorl $5,%r13d 965 xorl %eax,%r14d 966 andl %r8d,%r12d 967 vaesenc %xmm10,%xmm9,%xmm9 968 vmovdqu 128-128(%rdi),%xmm10 969 xorl %r8d,%r13d 970 addl 32(%rsp),%r11d 971 movl %eax,%r15d 972 rorl $11,%r14d 973 xorl %r10d,%r12d 974 xorl %ebx,%r15d 975 rorl $6,%r13d 976 addl %r12d,%r11d 977 andl %r15d,%esi 978 xorl %eax,%r14d 979 addl %r13d,%r11d 980 xorl %ebx,%esi 981 addl %r11d,%edx 982 rorl $2,%r14d 983 addl %esi,%r11d 984 movl %edx,%r13d 985 addl %r11d,%r14d 986 rorl $14,%r13d 987 movl %r14d,%r11d 988 movl %r8d,%r12d 989 xorl %edx,%r13d 990 rorl $9,%r14d 991 xorl %r9d,%r12d 992 rorl $5,%r13d 993 xorl %r11d,%r14d 994 andl %edx,%r12d 995 vaesenc %xmm10,%xmm9,%xmm9 996 vmovdqu 144-128(%rdi),%xmm10 997 xorl %edx,%r13d 998 addl 36(%rsp),%r10d 999 movl %r11d,%esi 1000 rorl $11,%r14d 1001 xorl %r9d,%r12d 1002 xorl %eax,%esi 1003 rorl $6,%r13d 1004 addl %r12d,%r10d 1005 andl %esi,%r15d 1006 xorl %r11d,%r14d 1007 addl %r13d,%r10d 1008 xorl %eax,%r15d 1009 addl %r10d,%ecx 1010 rorl $2,%r14d 1011 addl %r15d,%r10d 1012 movl %ecx,%r13d 1013 addl %r10d,%r14d 1014 rorl $14,%r13d 1015 movl %r14d,%r10d 1016 movl %edx,%r12d 1017 xorl %ecx,%r13d 1018 rorl $9,%r14d 1019 xorl %r8d,%r12d 1020 rorl $5,%r13d 1021 xorl %r10d,%r14d 1022 andl %ecx,%r12d 1023 vaesenc %xmm10,%xmm9,%xmm9 1024 vmovdqu 160-128(%rdi),%xmm10 1025 xorl %ecx,%r13d 1026 addl 40(%rsp),%r9d 1027 movl %r10d,%r15d 1028 rorl $11,%r14d 1029 xorl %r8d,%r12d 1030 xorl %r11d,%r15d 1031 rorl $6,%r13d 1032 addl %r12d,%r9d 1033 andl %r15d,%esi 1034 xorl %r10d,%r14d 1035 addl %r13d,%r9d 1036 xorl %r11d,%esi 1037 addl %r9d,%ebx 1038 rorl $2,%r14d 1039 addl %esi,%r9d 1040 movl %ebx,%r13d 1041 addl %r9d,%r14d 1042 rorl $14,%r13d 1043 movl %r14d,%r9d 1044 movl %ecx,%r12d 1045 xorl %ebx,%r13d 1046 rorl $9,%r14d 1047 xorl %edx,%r12d 1048 rorl $5,%r13d 1049 xorl %r9d,%r14d 1050 andl %ebx,%r12d 1051 vaesenclast %xmm10,%xmm9,%xmm11 1052 vaesenc %xmm10,%xmm9,%xmm9 1053 vmovdqu 176-128(%rdi),%xmm10 1054 xorl %ebx,%r13d 1055 addl 44(%rsp),%r8d 1056 movl %r9d,%esi 1057 rorl $11,%r14d 1058 xorl %edx,%r12d 1059 xorl %r10d,%esi 1060 rorl $6,%r13d 1061 addl %r12d,%r8d 1062 andl %esi,%r15d 1063 xorl %r9d,%r14d 1064 addl %r13d,%r8d 1065 xorl %r10d,%r15d 1066 addl %r8d,%eax 1067 rorl $2,%r14d 1068 addl %r15d,%r8d 1069 movl %eax,%r13d 1070 addl %r8d,%r14d 1071 rorl $14,%r13d 1072 movl %r14d,%r8d 1073 movl %ebx,%r12d 1074 xorl %eax,%r13d 1075 rorl $9,%r14d 1076 xorl %ecx,%r12d 1077 rorl $5,%r13d 1078 xorl %r8d,%r14d 1079 andl %eax,%r12d 1080 vpand %xmm12,%xmm11,%xmm8 1081 vaesenc %xmm10,%xmm9,%xmm9 1082 vmovdqu 192-128(%rdi),%xmm10 1083 xorl %eax,%r13d 1084 addl 48(%rsp),%edx 1085 movl %r8d,%r15d 1086 rorl $11,%r14d 1087 xorl %ecx,%r12d 1088 xorl %r9d,%r15d 1089 rorl $6,%r13d 1090 addl %r12d,%edx 1091 andl %r15d,%esi 1092 xorl %r8d,%r14d 1093 addl %r13d,%edx 1094 xorl %r9d,%esi 1095 addl %edx,%r11d 1096 rorl $2,%r14d 1097 addl %esi,%edx 1098 movl %r11d,%r13d 1099 addl %edx,%r14d 1100 rorl $14,%r13d 1101 movl %r14d,%edx 1102 movl %eax,%r12d 1103 xorl %r11d,%r13d 1104 rorl $9,%r14d 1105 xorl %ebx,%r12d 1106 rorl $5,%r13d 1107 xorl %edx,%r14d 1108 andl %r11d,%r12d 1109 vaesenclast %xmm10,%xmm9,%xmm11 1110 vaesenc %xmm10,%xmm9,%xmm9 1111 vmovdqu 208-128(%rdi),%xmm10 1112 xorl %r11d,%r13d 1113 addl 52(%rsp),%ecx 1114 movl %edx,%esi 1115 rorl $11,%r14d 1116 xorl %ebx,%r12d 1117 xorl %r8d,%esi 1118 rorl $6,%r13d 1119 addl %r12d,%ecx 1120 andl %esi,%r15d 1121 xorl %edx,%r14d 1122 addl %r13d,%ecx 1123 xorl %r8d,%r15d 1124 addl %ecx,%r10d 1125 rorl $2,%r14d 1126 addl %r15d,%ecx 1127 movl %r10d,%r13d 1128 addl %ecx,%r14d 1129 rorl $14,%r13d 1130 movl %r14d,%ecx 1131 movl %r11d,%r12d 1132 xorl %r10d,%r13d 1133 rorl $9,%r14d 1134 xorl %eax,%r12d 1135 rorl $5,%r13d 1136 xorl %ecx,%r14d 1137 andl %r10d,%r12d 1138 vpand %xmm13,%xmm11,%xmm11 1139 vaesenc %xmm10,%xmm9,%xmm9 1140 vmovdqu 224-128(%rdi),%xmm10 1141 xorl %r10d,%r13d 1142 addl 56(%rsp),%ebx 1143 movl %ecx,%r15d 1144 rorl $11,%r14d 1145 xorl %eax,%r12d 1146 xorl %edx,%r15d 1147 rorl $6,%r13d 1148 addl %r12d,%ebx 1149 andl %r15d,%esi 1150 xorl %ecx,%r14d 1151 addl %r13d,%ebx 1152 xorl %edx,%esi 1153 addl %ebx,%r9d 1154 rorl $2,%r14d 1155 addl %esi,%ebx 1156 movl %r9d,%r13d 1157 addl %ebx,%r14d 1158 rorl $14,%r13d 1159 movl %r14d,%ebx 1160 movl %r10d,%r12d 1161 xorl %r9d,%r13d 1162 rorl $9,%r14d 1163 xorl %r11d,%r12d 1164 rorl $5,%r13d 1165 xorl %ebx,%r14d 1166 andl %r9d,%r12d 1167 vpor %xmm11,%xmm8,%xmm8 1168 vaesenclast %xmm10,%xmm9,%xmm11 1169 vmovdqu 0-128(%rdi),%xmm10 1170 xorl %r9d,%r13d 1171 addl 60(%rsp),%eax 1172 movl %ebx,%esi 1173 rorl $11,%r14d 1174 xorl %r11d,%r12d 1175 xorl %ecx,%esi 1176 rorl $6,%r13d 1177 addl %r12d,%eax 1178 andl %esi,%r15d 1179 xorl %ebx,%r14d 1180 addl %r13d,%eax 1181 xorl %ecx,%r15d 1182 addl %eax,%r8d 1183 rorl $2,%r14d 1184 addl %r15d,%eax 1185 movl %r8d,%r13d 1186 addl %eax,%r14d 1187 movq 64+0(%rsp),%r12 1188 movq 64+8(%rsp),%r13 1189 movq 64+40(%rsp),%r15 1190 movq 64+48(%rsp),%rsi 1191 1192 vpand %xmm14,%xmm11,%xmm11 1193 movl %r14d,%eax 1194 vpor %xmm11,%xmm8,%xmm8 1195 vmovdqu %xmm8,(%r12,%r13,1) 1196 leaq 16(%r12),%r12 1197 1198 addl 0(%r15),%eax 1199 addl 4(%r15),%ebx 1200 addl 8(%r15),%ecx 1201 addl 12(%r15),%edx 1202 addl 16(%r15),%r8d 1203 addl 20(%r15),%r9d 1204 addl 24(%r15),%r10d 1205 addl 28(%r15),%r11d 1206 1207 cmpq 64+16(%rsp),%r12 1208 1209 movl %eax,0(%r15) 1210 movl %ebx,4(%r15) 1211 movl %ecx,8(%r15) 1212 movl %edx,12(%r15) 1213 movl %r8d,16(%r15) 1214 movl %r9d,20(%r15) 1215 movl %r10d,24(%r15) 1216 movl %r11d,28(%r15) 1217 1218 jb .Lloop_xop 1219 1220 movq 64+32(%rsp),%r8 1221 movq 120(%rsp),%rsi 1222.cfi_def_cfa %rsi,8 1223 vmovdqu %xmm8,(%r8) 1224 vzeroall 1225 movq -48(%rsi),%r15 1226.cfi_restore %r15 1227 movq -40(%rsi),%r14 1228.cfi_restore %r14 1229 movq -32(%rsi),%r13 1230.cfi_restore %r13 1231 movq -24(%rsi),%r12 1232.cfi_restore %r12 1233 movq -16(%rsi),%rbp 1234.cfi_restore %rbp 1235 movq -8(%rsi),%rbx 1236.cfi_restore %rbx 1237 leaq (%rsi),%rsp 1238.cfi_def_cfa_register %rsp 1239.Lepilogue_xop: 1240 .byte 0xf3,0xc3 1241.cfi_endproc 1242.size aesni_cbc_sha256_enc_xop,.-aesni_cbc_sha256_enc_xop 1243.type aesni_cbc_sha256_enc_avx,@function 1244.align 64 1245aesni_cbc_sha256_enc_avx: 1246.cfi_startproc 1247.Lavx_shortcut: 1248 movq 8(%rsp),%r10 1249 movq %rsp,%rax 1250.cfi_def_cfa_register %rax 1251 pushq %rbx 1252.cfi_offset %rbx,-16 1253 pushq %rbp 1254.cfi_offset %rbp,-24 1255 pushq %r12 1256.cfi_offset %r12,-32 1257 pushq %r13 1258.cfi_offset %r13,-40 1259 pushq %r14 1260.cfi_offset %r14,-48 1261 pushq %r15 1262.cfi_offset %r15,-56 1263 subq $128,%rsp 1264 andq $-64,%rsp 1265 1266 shlq $6,%rdx 1267 subq %rdi,%rsi 1268 subq %rdi,%r10 1269 addq %rdi,%rdx 1270 1271 1272 movq %rsi,64+8(%rsp) 1273 movq %rdx,64+16(%rsp) 1274 1275 movq %r8,64+32(%rsp) 1276 movq %r9,64+40(%rsp) 1277 movq %r10,64+48(%rsp) 1278 movq %rax,120(%rsp) 1279.cfi_escape 0x0f,0x06,0x77,0xf8,0x00,0x06,0x23,0x08 1280.Lprologue_avx: 1281 vzeroall 1282 1283 movq %rdi,%r12 1284 leaq 128(%rcx),%rdi 1285 leaq K256+544(%rip),%r13 1286 movl 240-128(%rdi),%r14d 1287 movq %r9,%r15 1288 movq %r10,%rsi 1289 vmovdqu (%r8),%xmm8 1290 subq $9,%r14 1291 1292 movl 0(%r15),%eax 1293 movl 4(%r15),%ebx 1294 movl 8(%r15),%ecx 1295 movl 12(%r15),%edx 1296 movl 16(%r15),%r8d 1297 movl 20(%r15),%r9d 1298 movl 24(%r15),%r10d 1299 movl 28(%r15),%r11d 1300 1301 vmovdqa 0(%r13,%r14,8),%xmm14 1302 vmovdqa 16(%r13,%r14,8),%xmm13 1303 vmovdqa 32(%r13,%r14,8),%xmm12 1304 vmovdqu 0-128(%rdi),%xmm10 1305 jmp .Lloop_avx 1306.align 16 1307.Lloop_avx: 1308 vmovdqa K256+512(%rip),%xmm7 1309 vmovdqu 0(%rsi,%r12,1),%xmm0 1310 vmovdqu 16(%rsi,%r12,1),%xmm1 1311 vmovdqu 32(%rsi,%r12,1),%xmm2 1312 vmovdqu 48(%rsi,%r12,1),%xmm3 1313 vpshufb %xmm7,%xmm0,%xmm0 1314 leaq K256(%rip),%rbp 1315 vpshufb %xmm7,%xmm1,%xmm1 1316 vpshufb %xmm7,%xmm2,%xmm2 1317 vpaddd 0(%rbp),%xmm0,%xmm4 1318 vpshufb %xmm7,%xmm3,%xmm3 1319 vpaddd 32(%rbp),%xmm1,%xmm5 1320 vpaddd 64(%rbp),%xmm2,%xmm6 1321 vpaddd 96(%rbp),%xmm3,%xmm7 1322 vmovdqa %xmm4,0(%rsp) 1323 movl %eax,%r14d 1324 vmovdqa %xmm5,16(%rsp) 1325 movl %ebx,%esi 1326 vmovdqa %xmm6,32(%rsp) 1327 xorl %ecx,%esi 1328 vmovdqa %xmm7,48(%rsp) 1329 movl %r8d,%r13d 1330 jmp .Lavx_00_47 1331 1332.align 16 1333.Lavx_00_47: 1334 subq $-32*4,%rbp 1335 vmovdqu (%r12),%xmm9 1336 movq %r12,64+0(%rsp) 1337 vpalignr $4,%xmm0,%xmm1,%xmm4 1338 shrdl $14,%r13d,%r13d 1339 movl %r14d,%eax 1340 movl %r9d,%r12d 1341 vpalignr $4,%xmm2,%xmm3,%xmm7 1342 xorl %r8d,%r13d 1343 shrdl $9,%r14d,%r14d 1344 xorl %r10d,%r12d 1345 vpsrld $7,%xmm4,%xmm6 1346 shrdl $5,%r13d,%r13d 1347 xorl %eax,%r14d 1348 andl %r8d,%r12d 1349 vpaddd %xmm7,%xmm0,%xmm0 1350 vpxor %xmm10,%xmm9,%xmm9 1351 vmovdqu 16-128(%rdi),%xmm10 1352 xorl %r8d,%r13d 1353 addl 0(%rsp),%r11d 1354 movl %eax,%r15d 1355 vpsrld $3,%xmm4,%xmm7 1356 shrdl $11,%r14d,%r14d 1357 xorl %r10d,%r12d 1358 xorl %ebx,%r15d 1359 vpslld $14,%xmm4,%xmm5 1360 shrdl $6,%r13d,%r13d 1361 addl %r12d,%r11d 1362 andl %r15d,%esi 1363 vpxor %xmm6,%xmm7,%xmm4 1364 xorl %eax,%r14d 1365 addl %r13d,%r11d 1366 xorl %ebx,%esi 1367 vpshufd $250,%xmm3,%xmm7 1368 addl %r11d,%edx 1369 shrdl $2,%r14d,%r14d 1370 addl %esi,%r11d 1371 vpsrld $11,%xmm6,%xmm6 1372 movl %edx,%r13d 1373 addl %r11d,%r14d 1374 shrdl $14,%r13d,%r13d 1375 vpxor %xmm5,%xmm4,%xmm4 1376 movl %r14d,%r11d 1377 movl %r8d,%r12d 1378 xorl %edx,%r13d 1379 vpslld $11,%xmm5,%xmm5 1380 shrdl $9,%r14d,%r14d 1381 xorl %r9d,%r12d 1382 shrdl $5,%r13d,%r13d 1383 vpxor %xmm6,%xmm4,%xmm4 1384 xorl %r11d,%r14d 1385 andl %edx,%r12d 1386 vpxor %xmm8,%xmm9,%xmm9 1387 xorl %edx,%r13d 1388 vpsrld $10,%xmm7,%xmm6 1389 addl 4(%rsp),%r10d 1390 movl %r11d,%esi 1391 shrdl $11,%r14d,%r14d 1392 vpxor %xmm5,%xmm4,%xmm4 1393 xorl %r9d,%r12d 1394 xorl %eax,%esi 1395 shrdl $6,%r13d,%r13d 1396 vpsrlq $17,%xmm7,%xmm7 1397 addl %r12d,%r10d 1398 andl %esi,%r15d 1399 xorl %r11d,%r14d 1400 vpaddd %xmm4,%xmm0,%xmm0 1401 addl %r13d,%r10d 1402 xorl %eax,%r15d 1403 addl %r10d,%ecx 1404 vpxor %xmm7,%xmm6,%xmm6 1405 shrdl $2,%r14d,%r14d 1406 addl %r15d,%r10d 1407 movl %ecx,%r13d 1408 vpsrlq $2,%xmm7,%xmm7 1409 addl %r10d,%r14d 1410 shrdl $14,%r13d,%r13d 1411 movl %r14d,%r10d 1412 vpxor %xmm7,%xmm6,%xmm6 1413 movl %edx,%r12d 1414 xorl %ecx,%r13d 1415 shrdl $9,%r14d,%r14d 1416 vpshufd $132,%xmm6,%xmm6 1417 xorl %r8d,%r12d 1418 shrdl $5,%r13d,%r13d 1419 xorl %r10d,%r14d 1420 vpsrldq $8,%xmm6,%xmm6 1421 andl %ecx,%r12d 1422 vaesenc %xmm10,%xmm9,%xmm9 1423 vmovdqu 32-128(%rdi),%xmm10 1424 xorl %ecx,%r13d 1425 addl 8(%rsp),%r9d 1426 vpaddd %xmm6,%xmm0,%xmm0 1427 movl %r10d,%r15d 1428 shrdl $11,%r14d,%r14d 1429 xorl %r8d,%r12d 1430 vpshufd $80,%xmm0,%xmm7 1431 xorl %r11d,%r15d 1432 shrdl $6,%r13d,%r13d 1433 addl %r12d,%r9d 1434 vpsrld $10,%xmm7,%xmm6 1435 andl %r15d,%esi 1436 xorl %r10d,%r14d 1437 addl %r13d,%r9d 1438 vpsrlq $17,%xmm7,%xmm7 1439 xorl %r11d,%esi 1440 addl %r9d,%ebx 1441 shrdl $2,%r14d,%r14d 1442 vpxor %xmm7,%xmm6,%xmm6 1443 addl %esi,%r9d 1444 movl %ebx,%r13d 1445 addl %r9d,%r14d 1446 vpsrlq $2,%xmm7,%xmm7 1447 shrdl $14,%r13d,%r13d 1448 movl %r14d,%r9d 1449 movl %ecx,%r12d 1450 vpxor %xmm7,%xmm6,%xmm6 1451 xorl %ebx,%r13d 1452 shrdl $9,%r14d,%r14d 1453 xorl %edx,%r12d 1454 vpshufd $232,%xmm6,%xmm6 1455 shrdl $5,%r13d,%r13d 1456 xorl %r9d,%r14d 1457 andl %ebx,%r12d 1458 vpslldq $8,%xmm6,%xmm6 1459 vaesenc %xmm10,%xmm9,%xmm9 1460 vmovdqu 48-128(%rdi),%xmm10 1461 xorl %ebx,%r13d 1462 addl 12(%rsp),%r8d 1463 movl %r9d,%esi 1464 vpaddd %xmm6,%xmm0,%xmm0 1465 shrdl $11,%r14d,%r14d 1466 xorl %edx,%r12d 1467 xorl %r10d,%esi 1468 vpaddd 0(%rbp),%xmm0,%xmm6 1469 shrdl $6,%r13d,%r13d 1470 addl %r12d,%r8d 1471 andl %esi,%r15d 1472 xorl %r9d,%r14d 1473 addl %r13d,%r8d 1474 xorl %r10d,%r15d 1475 addl %r8d,%eax 1476 shrdl $2,%r14d,%r14d 1477 addl %r15d,%r8d 1478 movl %eax,%r13d 1479 addl %r8d,%r14d 1480 vmovdqa %xmm6,0(%rsp) 1481 vpalignr $4,%xmm1,%xmm2,%xmm4 1482 shrdl $14,%r13d,%r13d 1483 movl %r14d,%r8d 1484 movl %ebx,%r12d 1485 vpalignr $4,%xmm3,%xmm0,%xmm7 1486 xorl %eax,%r13d 1487 shrdl $9,%r14d,%r14d 1488 xorl %ecx,%r12d 1489 vpsrld $7,%xmm4,%xmm6 1490 shrdl $5,%r13d,%r13d 1491 xorl %r8d,%r14d 1492 andl %eax,%r12d 1493 vpaddd %xmm7,%xmm1,%xmm1 1494 vaesenc %xmm10,%xmm9,%xmm9 1495 vmovdqu 64-128(%rdi),%xmm10 1496 xorl %eax,%r13d 1497 addl 16(%rsp),%edx 1498 movl %r8d,%r15d 1499 vpsrld $3,%xmm4,%xmm7 1500 shrdl $11,%r14d,%r14d 1501 xorl %ecx,%r12d 1502 xorl %r9d,%r15d 1503 vpslld $14,%xmm4,%xmm5 1504 shrdl $6,%r13d,%r13d 1505 addl %r12d,%edx 1506 andl %r15d,%esi 1507 vpxor %xmm6,%xmm7,%xmm4 1508 xorl %r8d,%r14d 1509 addl %r13d,%edx 1510 xorl %r9d,%esi 1511 vpshufd $250,%xmm0,%xmm7 1512 addl %edx,%r11d 1513 shrdl $2,%r14d,%r14d 1514 addl %esi,%edx 1515 vpsrld $11,%xmm6,%xmm6 1516 movl %r11d,%r13d 1517 addl %edx,%r14d 1518 shrdl $14,%r13d,%r13d 1519 vpxor %xmm5,%xmm4,%xmm4 1520 movl %r14d,%edx 1521 movl %eax,%r12d 1522 xorl %r11d,%r13d 1523 vpslld $11,%xmm5,%xmm5 1524 shrdl $9,%r14d,%r14d 1525 xorl %ebx,%r12d 1526 shrdl $5,%r13d,%r13d 1527 vpxor %xmm6,%xmm4,%xmm4 1528 xorl %edx,%r14d 1529 andl %r11d,%r12d 1530 vaesenc %xmm10,%xmm9,%xmm9 1531 vmovdqu 80-128(%rdi),%xmm10 1532 xorl %r11d,%r13d 1533 vpsrld $10,%xmm7,%xmm6 1534 addl 20(%rsp),%ecx 1535 movl %edx,%esi 1536 shrdl $11,%r14d,%r14d 1537 vpxor %xmm5,%xmm4,%xmm4 1538 xorl %ebx,%r12d 1539 xorl %r8d,%esi 1540 shrdl $6,%r13d,%r13d 1541 vpsrlq $17,%xmm7,%xmm7 1542 addl %r12d,%ecx 1543 andl %esi,%r15d 1544 xorl %edx,%r14d 1545 vpaddd %xmm4,%xmm1,%xmm1 1546 addl %r13d,%ecx 1547 xorl %r8d,%r15d 1548 addl %ecx,%r10d 1549 vpxor %xmm7,%xmm6,%xmm6 1550 shrdl $2,%r14d,%r14d 1551 addl %r15d,%ecx 1552 movl %r10d,%r13d 1553 vpsrlq $2,%xmm7,%xmm7 1554 addl %ecx,%r14d 1555 shrdl $14,%r13d,%r13d 1556 movl %r14d,%ecx 1557 vpxor %xmm7,%xmm6,%xmm6 1558 movl %r11d,%r12d 1559 xorl %r10d,%r13d 1560 shrdl $9,%r14d,%r14d 1561 vpshufd $132,%xmm6,%xmm6 1562 xorl %eax,%r12d 1563 shrdl $5,%r13d,%r13d 1564 xorl %ecx,%r14d 1565 vpsrldq $8,%xmm6,%xmm6 1566 andl %r10d,%r12d 1567 vaesenc %xmm10,%xmm9,%xmm9 1568 vmovdqu 96-128(%rdi),%xmm10 1569 xorl %r10d,%r13d 1570 addl 24(%rsp),%ebx 1571 vpaddd %xmm6,%xmm1,%xmm1 1572 movl %ecx,%r15d 1573 shrdl $11,%r14d,%r14d 1574 xorl %eax,%r12d 1575 vpshufd $80,%xmm1,%xmm7 1576 xorl %edx,%r15d 1577 shrdl $6,%r13d,%r13d 1578 addl %r12d,%ebx 1579 vpsrld $10,%xmm7,%xmm6 1580 andl %r15d,%esi 1581 xorl %ecx,%r14d 1582 addl %r13d,%ebx 1583 vpsrlq $17,%xmm7,%xmm7 1584 xorl %edx,%esi 1585 addl %ebx,%r9d 1586 shrdl $2,%r14d,%r14d 1587 vpxor %xmm7,%xmm6,%xmm6 1588 addl %esi,%ebx 1589 movl %r9d,%r13d 1590 addl %ebx,%r14d 1591 vpsrlq $2,%xmm7,%xmm7 1592 shrdl $14,%r13d,%r13d 1593 movl %r14d,%ebx 1594 movl %r10d,%r12d 1595 vpxor %xmm7,%xmm6,%xmm6 1596 xorl %r9d,%r13d 1597 shrdl $9,%r14d,%r14d 1598 xorl %r11d,%r12d 1599 vpshufd $232,%xmm6,%xmm6 1600 shrdl $5,%r13d,%r13d 1601 xorl %ebx,%r14d 1602 andl %r9d,%r12d 1603 vpslldq $8,%xmm6,%xmm6 1604 vaesenc %xmm10,%xmm9,%xmm9 1605 vmovdqu 112-128(%rdi),%xmm10 1606 xorl %r9d,%r13d 1607 addl 28(%rsp),%eax 1608 movl %ebx,%esi 1609 vpaddd %xmm6,%xmm1,%xmm1 1610 shrdl $11,%r14d,%r14d 1611 xorl %r11d,%r12d 1612 xorl %ecx,%esi 1613 vpaddd 32(%rbp),%xmm1,%xmm6 1614 shrdl $6,%r13d,%r13d 1615 addl %r12d,%eax 1616 andl %esi,%r15d 1617 xorl %ebx,%r14d 1618 addl %r13d,%eax 1619 xorl %ecx,%r15d 1620 addl %eax,%r8d 1621 shrdl $2,%r14d,%r14d 1622 addl %r15d,%eax 1623 movl %r8d,%r13d 1624 addl %eax,%r14d 1625 vmovdqa %xmm6,16(%rsp) 1626 vpalignr $4,%xmm2,%xmm3,%xmm4 1627 shrdl $14,%r13d,%r13d 1628 movl %r14d,%eax 1629 movl %r9d,%r12d 1630 vpalignr $4,%xmm0,%xmm1,%xmm7 1631 xorl %r8d,%r13d 1632 shrdl $9,%r14d,%r14d 1633 xorl %r10d,%r12d 1634 vpsrld $7,%xmm4,%xmm6 1635 shrdl $5,%r13d,%r13d 1636 xorl %eax,%r14d 1637 andl %r8d,%r12d 1638 vpaddd %xmm7,%xmm2,%xmm2 1639 vaesenc %xmm10,%xmm9,%xmm9 1640 vmovdqu 128-128(%rdi),%xmm10 1641 xorl %r8d,%r13d 1642 addl 32(%rsp),%r11d 1643 movl %eax,%r15d 1644 vpsrld $3,%xmm4,%xmm7 1645 shrdl $11,%r14d,%r14d 1646 xorl %r10d,%r12d 1647 xorl %ebx,%r15d 1648 vpslld $14,%xmm4,%xmm5 1649 shrdl $6,%r13d,%r13d 1650 addl %r12d,%r11d 1651 andl %r15d,%esi 1652 vpxor %xmm6,%xmm7,%xmm4 1653 xorl %eax,%r14d 1654 addl %r13d,%r11d 1655 xorl %ebx,%esi 1656 vpshufd $250,%xmm1,%xmm7 1657 addl %r11d,%edx 1658 shrdl $2,%r14d,%r14d 1659 addl %esi,%r11d 1660 vpsrld $11,%xmm6,%xmm6 1661 movl %edx,%r13d 1662 addl %r11d,%r14d 1663 shrdl $14,%r13d,%r13d 1664 vpxor %xmm5,%xmm4,%xmm4 1665 movl %r14d,%r11d 1666 movl %r8d,%r12d 1667 xorl %edx,%r13d 1668 vpslld $11,%xmm5,%xmm5 1669 shrdl $9,%r14d,%r14d 1670 xorl %r9d,%r12d 1671 shrdl $5,%r13d,%r13d 1672 vpxor %xmm6,%xmm4,%xmm4 1673 xorl %r11d,%r14d 1674 andl %edx,%r12d 1675 vaesenc %xmm10,%xmm9,%xmm9 1676 vmovdqu 144-128(%rdi),%xmm10 1677 xorl %edx,%r13d 1678 vpsrld $10,%xmm7,%xmm6 1679 addl 36(%rsp),%r10d 1680 movl %r11d,%esi 1681 shrdl $11,%r14d,%r14d 1682 vpxor %xmm5,%xmm4,%xmm4 1683 xorl %r9d,%r12d 1684 xorl %eax,%esi 1685 shrdl $6,%r13d,%r13d 1686 vpsrlq $17,%xmm7,%xmm7 1687 addl %r12d,%r10d 1688 andl %esi,%r15d 1689 xorl %r11d,%r14d 1690 vpaddd %xmm4,%xmm2,%xmm2 1691 addl %r13d,%r10d 1692 xorl %eax,%r15d 1693 addl %r10d,%ecx 1694 vpxor %xmm7,%xmm6,%xmm6 1695 shrdl $2,%r14d,%r14d 1696 addl %r15d,%r10d 1697 movl %ecx,%r13d 1698 vpsrlq $2,%xmm7,%xmm7 1699 addl %r10d,%r14d 1700 shrdl $14,%r13d,%r13d 1701 movl %r14d,%r10d 1702 vpxor %xmm7,%xmm6,%xmm6 1703 movl %edx,%r12d 1704 xorl %ecx,%r13d 1705 shrdl $9,%r14d,%r14d 1706 vpshufd $132,%xmm6,%xmm6 1707 xorl %r8d,%r12d 1708 shrdl $5,%r13d,%r13d 1709 xorl %r10d,%r14d 1710 vpsrldq $8,%xmm6,%xmm6 1711 andl %ecx,%r12d 1712 vaesenc %xmm10,%xmm9,%xmm9 1713 vmovdqu 160-128(%rdi),%xmm10 1714 xorl %ecx,%r13d 1715 addl 40(%rsp),%r9d 1716 vpaddd %xmm6,%xmm2,%xmm2 1717 movl %r10d,%r15d 1718 shrdl $11,%r14d,%r14d 1719 xorl %r8d,%r12d 1720 vpshufd $80,%xmm2,%xmm7 1721 xorl %r11d,%r15d 1722 shrdl $6,%r13d,%r13d 1723 addl %r12d,%r9d 1724 vpsrld $10,%xmm7,%xmm6 1725 andl %r15d,%esi 1726 xorl %r10d,%r14d 1727 addl %r13d,%r9d 1728 vpsrlq $17,%xmm7,%xmm7 1729 xorl %r11d,%esi 1730 addl %r9d,%ebx 1731 shrdl $2,%r14d,%r14d 1732 vpxor %xmm7,%xmm6,%xmm6 1733 addl %esi,%r9d 1734 movl %ebx,%r13d 1735 addl %r9d,%r14d 1736 vpsrlq $2,%xmm7,%xmm7 1737 shrdl $14,%r13d,%r13d 1738 movl %r14d,%r9d 1739 movl %ecx,%r12d 1740 vpxor %xmm7,%xmm6,%xmm6 1741 xorl %ebx,%r13d 1742 shrdl $9,%r14d,%r14d 1743 xorl %edx,%r12d 1744 vpshufd $232,%xmm6,%xmm6 1745 shrdl $5,%r13d,%r13d 1746 xorl %r9d,%r14d 1747 andl %ebx,%r12d 1748 vpslldq $8,%xmm6,%xmm6 1749 vaesenclast %xmm10,%xmm9,%xmm11 1750 vaesenc %xmm10,%xmm9,%xmm9 1751 vmovdqu 176-128(%rdi),%xmm10 1752 xorl %ebx,%r13d 1753 addl 44(%rsp),%r8d 1754 movl %r9d,%esi 1755 vpaddd %xmm6,%xmm2,%xmm2 1756 shrdl $11,%r14d,%r14d 1757 xorl %edx,%r12d 1758 xorl %r10d,%esi 1759 vpaddd 64(%rbp),%xmm2,%xmm6 1760 shrdl $6,%r13d,%r13d 1761 addl %r12d,%r8d 1762 andl %esi,%r15d 1763 xorl %r9d,%r14d 1764 addl %r13d,%r8d 1765 xorl %r10d,%r15d 1766 addl %r8d,%eax 1767 shrdl $2,%r14d,%r14d 1768 addl %r15d,%r8d 1769 movl %eax,%r13d 1770 addl %r8d,%r14d 1771 vmovdqa %xmm6,32(%rsp) 1772 vpalignr $4,%xmm3,%xmm0,%xmm4 1773 shrdl $14,%r13d,%r13d 1774 movl %r14d,%r8d 1775 movl %ebx,%r12d 1776 vpalignr $4,%xmm1,%xmm2,%xmm7 1777 xorl %eax,%r13d 1778 shrdl $9,%r14d,%r14d 1779 xorl %ecx,%r12d 1780 vpsrld $7,%xmm4,%xmm6 1781 shrdl $5,%r13d,%r13d 1782 xorl %r8d,%r14d 1783 andl %eax,%r12d 1784 vpaddd %xmm7,%xmm3,%xmm3 1785 vpand %xmm12,%xmm11,%xmm8 1786 vaesenc %xmm10,%xmm9,%xmm9 1787 vmovdqu 192-128(%rdi),%xmm10 1788 xorl %eax,%r13d 1789 addl 48(%rsp),%edx 1790 movl %r8d,%r15d 1791 vpsrld $3,%xmm4,%xmm7 1792 shrdl $11,%r14d,%r14d 1793 xorl %ecx,%r12d 1794 xorl %r9d,%r15d 1795 vpslld $14,%xmm4,%xmm5 1796 shrdl $6,%r13d,%r13d 1797 addl %r12d,%edx 1798 andl %r15d,%esi 1799 vpxor %xmm6,%xmm7,%xmm4 1800 xorl %r8d,%r14d 1801 addl %r13d,%edx 1802 xorl %r9d,%esi 1803 vpshufd $250,%xmm2,%xmm7 1804 addl %edx,%r11d 1805 shrdl $2,%r14d,%r14d 1806 addl %esi,%edx 1807 vpsrld $11,%xmm6,%xmm6 1808 movl %r11d,%r13d 1809 addl %edx,%r14d 1810 shrdl $14,%r13d,%r13d 1811 vpxor %xmm5,%xmm4,%xmm4 1812 movl %r14d,%edx 1813 movl %eax,%r12d 1814 xorl %r11d,%r13d 1815 vpslld $11,%xmm5,%xmm5 1816 shrdl $9,%r14d,%r14d 1817 xorl %ebx,%r12d 1818 shrdl $5,%r13d,%r13d 1819 vpxor %xmm6,%xmm4,%xmm4 1820 xorl %edx,%r14d 1821 andl %r11d,%r12d 1822 vaesenclast %xmm10,%xmm9,%xmm11 1823 vaesenc %xmm10,%xmm9,%xmm9 1824 vmovdqu 208-128(%rdi),%xmm10 1825 xorl %r11d,%r13d 1826 vpsrld $10,%xmm7,%xmm6 1827 addl 52(%rsp),%ecx 1828 movl %edx,%esi 1829 shrdl $11,%r14d,%r14d 1830 vpxor %xmm5,%xmm4,%xmm4 1831 xorl %ebx,%r12d 1832 xorl %r8d,%esi 1833 shrdl $6,%r13d,%r13d 1834 vpsrlq $17,%xmm7,%xmm7 1835 addl %r12d,%ecx 1836 andl %esi,%r15d 1837 xorl %edx,%r14d 1838 vpaddd %xmm4,%xmm3,%xmm3 1839 addl %r13d,%ecx 1840 xorl %r8d,%r15d 1841 addl %ecx,%r10d 1842 vpxor %xmm7,%xmm6,%xmm6 1843 shrdl $2,%r14d,%r14d 1844 addl %r15d,%ecx 1845 movl %r10d,%r13d 1846 vpsrlq $2,%xmm7,%xmm7 1847 addl %ecx,%r14d 1848 shrdl $14,%r13d,%r13d 1849 movl %r14d,%ecx 1850 vpxor %xmm7,%xmm6,%xmm6 1851 movl %r11d,%r12d 1852 xorl %r10d,%r13d 1853 shrdl $9,%r14d,%r14d 1854 vpshufd $132,%xmm6,%xmm6 1855 xorl %eax,%r12d 1856 shrdl $5,%r13d,%r13d 1857 xorl %ecx,%r14d 1858 vpsrldq $8,%xmm6,%xmm6 1859 andl %r10d,%r12d 1860 vpand %xmm13,%xmm11,%xmm11 1861 vaesenc %xmm10,%xmm9,%xmm9 1862 vmovdqu 224-128(%rdi),%xmm10 1863 xorl %r10d,%r13d 1864 addl 56(%rsp),%ebx 1865 vpaddd %xmm6,%xmm3,%xmm3 1866 movl %ecx,%r15d 1867 shrdl $11,%r14d,%r14d 1868 xorl %eax,%r12d 1869 vpshufd $80,%xmm3,%xmm7 1870 xorl %edx,%r15d 1871 shrdl $6,%r13d,%r13d 1872 addl %r12d,%ebx 1873 vpsrld $10,%xmm7,%xmm6 1874 andl %r15d,%esi 1875 xorl %ecx,%r14d 1876 addl %r13d,%ebx 1877 vpsrlq $17,%xmm7,%xmm7 1878 xorl %edx,%esi 1879 addl %ebx,%r9d 1880 shrdl $2,%r14d,%r14d 1881 vpxor %xmm7,%xmm6,%xmm6 1882 addl %esi,%ebx 1883 movl %r9d,%r13d 1884 addl %ebx,%r14d 1885 vpsrlq $2,%xmm7,%xmm7 1886 shrdl $14,%r13d,%r13d 1887 movl %r14d,%ebx 1888 movl %r10d,%r12d 1889 vpxor %xmm7,%xmm6,%xmm6 1890 xorl %r9d,%r13d 1891 shrdl $9,%r14d,%r14d 1892 xorl %r11d,%r12d 1893 vpshufd $232,%xmm6,%xmm6 1894 shrdl $5,%r13d,%r13d 1895 xorl %ebx,%r14d 1896 andl %r9d,%r12d 1897 vpslldq $8,%xmm6,%xmm6 1898 vpor %xmm11,%xmm8,%xmm8 1899 vaesenclast %xmm10,%xmm9,%xmm11 1900 vmovdqu 0-128(%rdi),%xmm10 1901 xorl %r9d,%r13d 1902 addl 60(%rsp),%eax 1903 movl %ebx,%esi 1904 vpaddd %xmm6,%xmm3,%xmm3 1905 shrdl $11,%r14d,%r14d 1906 xorl %r11d,%r12d 1907 xorl %ecx,%esi 1908 vpaddd 96(%rbp),%xmm3,%xmm6 1909 shrdl $6,%r13d,%r13d 1910 addl %r12d,%eax 1911 andl %esi,%r15d 1912 xorl %ebx,%r14d 1913 addl %r13d,%eax 1914 xorl %ecx,%r15d 1915 addl %eax,%r8d 1916 shrdl $2,%r14d,%r14d 1917 addl %r15d,%eax 1918 movl %r8d,%r13d 1919 addl %eax,%r14d 1920 vmovdqa %xmm6,48(%rsp) 1921 movq 64+0(%rsp),%r12 1922 vpand %xmm14,%xmm11,%xmm11 1923 movq 64+8(%rsp),%r15 1924 vpor %xmm11,%xmm8,%xmm8 1925 vmovdqu %xmm8,(%r15,%r12,1) 1926 leaq 16(%r12),%r12 1927 cmpb $0,131(%rbp) 1928 jne .Lavx_00_47 1929 vmovdqu (%r12),%xmm9 1930 movq %r12,64+0(%rsp) 1931 shrdl $14,%r13d,%r13d 1932 movl %r14d,%eax 1933 movl %r9d,%r12d 1934 xorl %r8d,%r13d 1935 shrdl $9,%r14d,%r14d 1936 xorl %r10d,%r12d 1937 shrdl $5,%r13d,%r13d 1938 xorl %eax,%r14d 1939 andl %r8d,%r12d 1940 vpxor %xmm10,%xmm9,%xmm9 1941 vmovdqu 16-128(%rdi),%xmm10 1942 xorl %r8d,%r13d 1943 addl 0(%rsp),%r11d 1944 movl %eax,%r15d 1945 shrdl $11,%r14d,%r14d 1946 xorl %r10d,%r12d 1947 xorl %ebx,%r15d 1948 shrdl $6,%r13d,%r13d 1949 addl %r12d,%r11d 1950 andl %r15d,%esi 1951 xorl %eax,%r14d 1952 addl %r13d,%r11d 1953 xorl %ebx,%esi 1954 addl %r11d,%edx 1955 shrdl $2,%r14d,%r14d 1956 addl %esi,%r11d 1957 movl %edx,%r13d 1958 addl %r11d,%r14d 1959 shrdl $14,%r13d,%r13d 1960 movl %r14d,%r11d 1961 movl %r8d,%r12d 1962 xorl %edx,%r13d 1963 shrdl $9,%r14d,%r14d 1964 xorl %r9d,%r12d 1965 shrdl $5,%r13d,%r13d 1966 xorl %r11d,%r14d 1967 andl %edx,%r12d 1968 vpxor %xmm8,%xmm9,%xmm9 1969 xorl %edx,%r13d 1970 addl 4(%rsp),%r10d 1971 movl %r11d,%esi 1972 shrdl $11,%r14d,%r14d 1973 xorl %r9d,%r12d 1974 xorl %eax,%esi 1975 shrdl $6,%r13d,%r13d 1976 addl %r12d,%r10d 1977 andl %esi,%r15d 1978 xorl %r11d,%r14d 1979 addl %r13d,%r10d 1980 xorl %eax,%r15d 1981 addl %r10d,%ecx 1982 shrdl $2,%r14d,%r14d 1983 addl %r15d,%r10d 1984 movl %ecx,%r13d 1985 addl %r10d,%r14d 1986 shrdl $14,%r13d,%r13d 1987 movl %r14d,%r10d 1988 movl %edx,%r12d 1989 xorl %ecx,%r13d 1990 shrdl $9,%r14d,%r14d 1991 xorl %r8d,%r12d 1992 shrdl $5,%r13d,%r13d 1993 xorl %r10d,%r14d 1994 andl %ecx,%r12d 1995 vaesenc %xmm10,%xmm9,%xmm9 1996 vmovdqu 32-128(%rdi),%xmm10 1997 xorl %ecx,%r13d 1998 addl 8(%rsp),%r9d 1999 movl %r10d,%r15d 2000 shrdl $11,%r14d,%r14d 2001 xorl %r8d,%r12d 2002 xorl %r11d,%r15d 2003 shrdl $6,%r13d,%r13d 2004 addl %r12d,%r9d 2005 andl %r15d,%esi 2006 xorl %r10d,%r14d 2007 addl %r13d,%r9d 2008 xorl %r11d,%esi 2009 addl %r9d,%ebx 2010 shrdl $2,%r14d,%r14d 2011 addl %esi,%r9d 2012 movl %ebx,%r13d 2013 addl %r9d,%r14d 2014 shrdl $14,%r13d,%r13d 2015 movl %r14d,%r9d 2016 movl %ecx,%r12d 2017 xorl %ebx,%r13d 2018 shrdl $9,%r14d,%r14d 2019 xorl %edx,%r12d 2020 shrdl $5,%r13d,%r13d 2021 xorl %r9d,%r14d 2022 andl %ebx,%r12d 2023 vaesenc %xmm10,%xmm9,%xmm9 2024 vmovdqu 48-128(%rdi),%xmm10 2025 xorl %ebx,%r13d 2026 addl 12(%rsp),%r8d 2027 movl %r9d,%esi 2028 shrdl $11,%r14d,%r14d 2029 xorl %edx,%r12d 2030 xorl %r10d,%esi 2031 shrdl $6,%r13d,%r13d 2032 addl %r12d,%r8d 2033 andl %esi,%r15d 2034 xorl %r9d,%r14d 2035 addl %r13d,%r8d 2036 xorl %r10d,%r15d 2037 addl %r8d,%eax 2038 shrdl $2,%r14d,%r14d 2039 addl %r15d,%r8d 2040 movl %eax,%r13d 2041 addl %r8d,%r14d 2042 shrdl $14,%r13d,%r13d 2043 movl %r14d,%r8d 2044 movl %ebx,%r12d 2045 xorl %eax,%r13d 2046 shrdl $9,%r14d,%r14d 2047 xorl %ecx,%r12d 2048 shrdl $5,%r13d,%r13d 2049 xorl %r8d,%r14d 2050 andl %eax,%r12d 2051 vaesenc %xmm10,%xmm9,%xmm9 2052 vmovdqu 64-128(%rdi),%xmm10 2053 xorl %eax,%r13d 2054 addl 16(%rsp),%edx 2055 movl %r8d,%r15d 2056 shrdl $11,%r14d,%r14d 2057 xorl %ecx,%r12d 2058 xorl %r9d,%r15d 2059 shrdl $6,%r13d,%r13d 2060 addl %r12d,%edx 2061 andl %r15d,%esi 2062 xorl %r8d,%r14d 2063 addl %r13d,%edx 2064 xorl %r9d,%esi 2065 addl %edx,%r11d 2066 shrdl $2,%r14d,%r14d 2067 addl %esi,%edx 2068 movl %r11d,%r13d 2069 addl %edx,%r14d 2070 shrdl $14,%r13d,%r13d 2071 movl %r14d,%edx 2072 movl %eax,%r12d 2073 xorl %r11d,%r13d 2074 shrdl $9,%r14d,%r14d 2075 xorl %ebx,%r12d 2076 shrdl $5,%r13d,%r13d 2077 xorl %edx,%r14d 2078 andl %r11d,%r12d 2079 vaesenc %xmm10,%xmm9,%xmm9 2080 vmovdqu 80-128(%rdi),%xmm10 2081 xorl %r11d,%r13d 2082 addl 20(%rsp),%ecx 2083 movl %edx,%esi 2084 shrdl $11,%r14d,%r14d 2085 xorl %ebx,%r12d 2086 xorl %r8d,%esi 2087 shrdl $6,%r13d,%r13d 2088 addl %r12d,%ecx 2089 andl %esi,%r15d 2090 xorl %edx,%r14d 2091 addl %r13d,%ecx 2092 xorl %r8d,%r15d 2093 addl %ecx,%r10d 2094 shrdl $2,%r14d,%r14d 2095 addl %r15d,%ecx 2096 movl %r10d,%r13d 2097 addl %ecx,%r14d 2098 shrdl $14,%r13d,%r13d 2099 movl %r14d,%ecx 2100 movl %r11d,%r12d 2101 xorl %r10d,%r13d 2102 shrdl $9,%r14d,%r14d 2103 xorl %eax,%r12d 2104 shrdl $5,%r13d,%r13d 2105 xorl %ecx,%r14d 2106 andl %r10d,%r12d 2107 vaesenc %xmm10,%xmm9,%xmm9 2108 vmovdqu 96-128(%rdi),%xmm10 2109 xorl %r10d,%r13d 2110 addl 24(%rsp),%ebx 2111 movl %ecx,%r15d 2112 shrdl $11,%r14d,%r14d 2113 xorl %eax,%r12d 2114 xorl %edx,%r15d 2115 shrdl $6,%r13d,%r13d 2116 addl %r12d,%ebx 2117 andl %r15d,%esi 2118 xorl %ecx,%r14d 2119 addl %r13d,%ebx 2120 xorl %edx,%esi 2121 addl %ebx,%r9d 2122 shrdl $2,%r14d,%r14d 2123 addl %esi,%ebx 2124 movl %r9d,%r13d 2125 addl %ebx,%r14d 2126 shrdl $14,%r13d,%r13d 2127 movl %r14d,%ebx 2128 movl %r10d,%r12d 2129 xorl %r9d,%r13d 2130 shrdl $9,%r14d,%r14d 2131 xorl %r11d,%r12d 2132 shrdl $5,%r13d,%r13d 2133 xorl %ebx,%r14d 2134 andl %r9d,%r12d 2135 vaesenc %xmm10,%xmm9,%xmm9 2136 vmovdqu 112-128(%rdi),%xmm10 2137 xorl %r9d,%r13d 2138 addl 28(%rsp),%eax 2139 movl %ebx,%esi 2140 shrdl $11,%r14d,%r14d 2141 xorl %r11d,%r12d 2142 xorl %ecx,%esi 2143 shrdl $6,%r13d,%r13d 2144 addl %r12d,%eax 2145 andl %esi,%r15d 2146 xorl %ebx,%r14d 2147 addl %r13d,%eax 2148 xorl %ecx,%r15d 2149 addl %eax,%r8d 2150 shrdl $2,%r14d,%r14d 2151 addl %r15d,%eax 2152 movl %r8d,%r13d 2153 addl %eax,%r14d 2154 shrdl $14,%r13d,%r13d 2155 movl %r14d,%eax 2156 movl %r9d,%r12d 2157 xorl %r8d,%r13d 2158 shrdl $9,%r14d,%r14d 2159 xorl %r10d,%r12d 2160 shrdl $5,%r13d,%r13d 2161 xorl %eax,%r14d 2162 andl %r8d,%r12d 2163 vaesenc %xmm10,%xmm9,%xmm9 2164 vmovdqu 128-128(%rdi),%xmm10 2165 xorl %r8d,%r13d 2166 addl 32(%rsp),%r11d 2167 movl %eax,%r15d 2168 shrdl $11,%r14d,%r14d 2169 xorl %r10d,%r12d 2170 xorl %ebx,%r15d 2171 shrdl $6,%r13d,%r13d 2172 addl %r12d,%r11d 2173 andl %r15d,%esi 2174 xorl %eax,%r14d 2175 addl %r13d,%r11d 2176 xorl %ebx,%esi 2177 addl %r11d,%edx 2178 shrdl $2,%r14d,%r14d 2179 addl %esi,%r11d 2180 movl %edx,%r13d 2181 addl %r11d,%r14d 2182 shrdl $14,%r13d,%r13d 2183 movl %r14d,%r11d 2184 movl %r8d,%r12d 2185 xorl %edx,%r13d 2186 shrdl $9,%r14d,%r14d 2187 xorl %r9d,%r12d 2188 shrdl $5,%r13d,%r13d 2189 xorl %r11d,%r14d 2190 andl %edx,%r12d 2191 vaesenc %xmm10,%xmm9,%xmm9 2192 vmovdqu 144-128(%rdi),%xmm10 2193 xorl %edx,%r13d 2194 addl 36(%rsp),%r10d 2195 movl %r11d,%esi 2196 shrdl $11,%r14d,%r14d 2197 xorl %r9d,%r12d 2198 xorl %eax,%esi 2199 shrdl $6,%r13d,%r13d 2200 addl %r12d,%r10d 2201 andl %esi,%r15d 2202 xorl %r11d,%r14d 2203 addl %r13d,%r10d 2204 xorl %eax,%r15d 2205 addl %r10d,%ecx 2206 shrdl $2,%r14d,%r14d 2207 addl %r15d,%r10d 2208 movl %ecx,%r13d 2209 addl %r10d,%r14d 2210 shrdl $14,%r13d,%r13d 2211 movl %r14d,%r10d 2212 movl %edx,%r12d 2213 xorl %ecx,%r13d 2214 shrdl $9,%r14d,%r14d 2215 xorl %r8d,%r12d 2216 shrdl $5,%r13d,%r13d 2217 xorl %r10d,%r14d 2218 andl %ecx,%r12d 2219 vaesenc %xmm10,%xmm9,%xmm9 2220 vmovdqu 160-128(%rdi),%xmm10 2221 xorl %ecx,%r13d 2222 addl 40(%rsp),%r9d 2223 movl %r10d,%r15d 2224 shrdl $11,%r14d,%r14d 2225 xorl %r8d,%r12d 2226 xorl %r11d,%r15d 2227 shrdl $6,%r13d,%r13d 2228 addl %r12d,%r9d 2229 andl %r15d,%esi 2230 xorl %r10d,%r14d 2231 addl %r13d,%r9d 2232 xorl %r11d,%esi 2233 addl %r9d,%ebx 2234 shrdl $2,%r14d,%r14d 2235 addl %esi,%r9d 2236 movl %ebx,%r13d 2237 addl %r9d,%r14d 2238 shrdl $14,%r13d,%r13d 2239 movl %r14d,%r9d 2240 movl %ecx,%r12d 2241 xorl %ebx,%r13d 2242 shrdl $9,%r14d,%r14d 2243 xorl %edx,%r12d 2244 shrdl $5,%r13d,%r13d 2245 xorl %r9d,%r14d 2246 andl %ebx,%r12d 2247 vaesenclast %xmm10,%xmm9,%xmm11 2248 vaesenc %xmm10,%xmm9,%xmm9 2249 vmovdqu 176-128(%rdi),%xmm10 2250 xorl %ebx,%r13d 2251 addl 44(%rsp),%r8d 2252 movl %r9d,%esi 2253 shrdl $11,%r14d,%r14d 2254 xorl %edx,%r12d 2255 xorl %r10d,%esi 2256 shrdl $6,%r13d,%r13d 2257 addl %r12d,%r8d 2258 andl %esi,%r15d 2259 xorl %r9d,%r14d 2260 addl %r13d,%r8d 2261 xorl %r10d,%r15d 2262 addl %r8d,%eax 2263 shrdl $2,%r14d,%r14d 2264 addl %r15d,%r8d 2265 movl %eax,%r13d 2266 addl %r8d,%r14d 2267 shrdl $14,%r13d,%r13d 2268 movl %r14d,%r8d 2269 movl %ebx,%r12d 2270 xorl %eax,%r13d 2271 shrdl $9,%r14d,%r14d 2272 xorl %ecx,%r12d 2273 shrdl $5,%r13d,%r13d 2274 xorl %r8d,%r14d 2275 andl %eax,%r12d 2276 vpand %xmm12,%xmm11,%xmm8 2277 vaesenc %xmm10,%xmm9,%xmm9 2278 vmovdqu 192-128(%rdi),%xmm10 2279 xorl %eax,%r13d 2280 addl 48(%rsp),%edx 2281 movl %r8d,%r15d 2282 shrdl $11,%r14d,%r14d 2283 xorl %ecx,%r12d 2284 xorl %r9d,%r15d 2285 shrdl $6,%r13d,%r13d 2286 addl %r12d,%edx 2287 andl %r15d,%esi 2288 xorl %r8d,%r14d 2289 addl %r13d,%edx 2290 xorl %r9d,%esi 2291 addl %edx,%r11d 2292 shrdl $2,%r14d,%r14d 2293 addl %esi,%edx 2294 movl %r11d,%r13d 2295 addl %edx,%r14d 2296 shrdl $14,%r13d,%r13d 2297 movl %r14d,%edx 2298 movl %eax,%r12d 2299 xorl %r11d,%r13d 2300 shrdl $9,%r14d,%r14d 2301 xorl %ebx,%r12d 2302 shrdl $5,%r13d,%r13d 2303 xorl %edx,%r14d 2304 andl %r11d,%r12d 2305 vaesenclast %xmm10,%xmm9,%xmm11 2306 vaesenc %xmm10,%xmm9,%xmm9 2307 vmovdqu 208-128(%rdi),%xmm10 2308 xorl %r11d,%r13d 2309 addl 52(%rsp),%ecx 2310 movl %edx,%esi 2311 shrdl $11,%r14d,%r14d 2312 xorl %ebx,%r12d 2313 xorl %r8d,%esi 2314 shrdl $6,%r13d,%r13d 2315 addl %r12d,%ecx 2316 andl %esi,%r15d 2317 xorl %edx,%r14d 2318 addl %r13d,%ecx 2319 xorl %r8d,%r15d 2320 addl %ecx,%r10d 2321 shrdl $2,%r14d,%r14d 2322 addl %r15d,%ecx 2323 movl %r10d,%r13d 2324 addl %ecx,%r14d 2325 shrdl $14,%r13d,%r13d 2326 movl %r14d,%ecx 2327 movl %r11d,%r12d 2328 xorl %r10d,%r13d 2329 shrdl $9,%r14d,%r14d 2330 xorl %eax,%r12d 2331 shrdl $5,%r13d,%r13d 2332 xorl %ecx,%r14d 2333 andl %r10d,%r12d 2334 vpand %xmm13,%xmm11,%xmm11 2335 vaesenc %xmm10,%xmm9,%xmm9 2336 vmovdqu 224-128(%rdi),%xmm10 2337 xorl %r10d,%r13d 2338 addl 56(%rsp),%ebx 2339 movl %ecx,%r15d 2340 shrdl $11,%r14d,%r14d 2341 xorl %eax,%r12d 2342 xorl %edx,%r15d 2343 shrdl $6,%r13d,%r13d 2344 addl %r12d,%ebx 2345 andl %r15d,%esi 2346 xorl %ecx,%r14d 2347 addl %r13d,%ebx 2348 xorl %edx,%esi 2349 addl %ebx,%r9d 2350 shrdl $2,%r14d,%r14d 2351 addl %esi,%ebx 2352 movl %r9d,%r13d 2353 addl %ebx,%r14d 2354 shrdl $14,%r13d,%r13d 2355 movl %r14d,%ebx 2356 movl %r10d,%r12d 2357 xorl %r9d,%r13d 2358 shrdl $9,%r14d,%r14d 2359 xorl %r11d,%r12d 2360 shrdl $5,%r13d,%r13d 2361 xorl %ebx,%r14d 2362 andl %r9d,%r12d 2363 vpor %xmm11,%xmm8,%xmm8 2364 vaesenclast %xmm10,%xmm9,%xmm11 2365 vmovdqu 0-128(%rdi),%xmm10 2366 xorl %r9d,%r13d 2367 addl 60(%rsp),%eax 2368 movl %ebx,%esi 2369 shrdl $11,%r14d,%r14d 2370 xorl %r11d,%r12d 2371 xorl %ecx,%esi 2372 shrdl $6,%r13d,%r13d 2373 addl %r12d,%eax 2374 andl %esi,%r15d 2375 xorl %ebx,%r14d 2376 addl %r13d,%eax 2377 xorl %ecx,%r15d 2378 addl %eax,%r8d 2379 shrdl $2,%r14d,%r14d 2380 addl %r15d,%eax 2381 movl %r8d,%r13d 2382 addl %eax,%r14d 2383 movq 64+0(%rsp),%r12 2384 movq 64+8(%rsp),%r13 2385 movq 64+40(%rsp),%r15 2386 movq 64+48(%rsp),%rsi 2387 2388 vpand %xmm14,%xmm11,%xmm11 2389 movl %r14d,%eax 2390 vpor %xmm11,%xmm8,%xmm8 2391 vmovdqu %xmm8,(%r12,%r13,1) 2392 leaq 16(%r12),%r12 2393 2394 addl 0(%r15),%eax 2395 addl 4(%r15),%ebx 2396 addl 8(%r15),%ecx 2397 addl 12(%r15),%edx 2398 addl 16(%r15),%r8d 2399 addl 20(%r15),%r9d 2400 addl 24(%r15),%r10d 2401 addl 28(%r15),%r11d 2402 2403 cmpq 64+16(%rsp),%r12 2404 2405 movl %eax,0(%r15) 2406 movl %ebx,4(%r15) 2407 movl %ecx,8(%r15) 2408 movl %edx,12(%r15) 2409 movl %r8d,16(%r15) 2410 movl %r9d,20(%r15) 2411 movl %r10d,24(%r15) 2412 movl %r11d,28(%r15) 2413 jb .Lloop_avx 2414 2415 movq 64+32(%rsp),%r8 2416 movq 120(%rsp),%rsi 2417.cfi_def_cfa %rsi,8 2418 vmovdqu %xmm8,(%r8) 2419 vzeroall 2420 movq -48(%rsi),%r15 2421.cfi_restore %r15 2422 movq -40(%rsi),%r14 2423.cfi_restore %r14 2424 movq -32(%rsi),%r13 2425.cfi_restore %r13 2426 movq -24(%rsi),%r12 2427.cfi_restore %r12 2428 movq -16(%rsi),%rbp 2429.cfi_restore %rbp 2430 movq -8(%rsi),%rbx 2431.cfi_restore %rbx 2432 leaq (%rsi),%rsp 2433.cfi_def_cfa_register %rsp 2434.Lepilogue_avx: 2435 .byte 0xf3,0xc3 2436.cfi_endproc 2437.size aesni_cbc_sha256_enc_avx,.-aesni_cbc_sha256_enc_avx 2438.type aesni_cbc_sha256_enc_avx2,@function 2439.align 64 2440aesni_cbc_sha256_enc_avx2: 2441.cfi_startproc 2442.Lavx2_shortcut: 2443 movq 8(%rsp),%r10 2444 movq %rsp,%rax 2445.cfi_def_cfa_register %rax 2446 pushq %rbx 2447.cfi_offset %rbx,-16 2448 pushq %rbp 2449.cfi_offset %rbp,-24 2450 pushq %r12 2451.cfi_offset %r12,-32 2452 pushq %r13 2453.cfi_offset %r13,-40 2454 pushq %r14 2455.cfi_offset %r14,-48 2456 pushq %r15 2457.cfi_offset %r15,-56 2458 subq $576,%rsp 2459 andq $-1024,%rsp 2460 addq $448,%rsp 2461 2462 shlq $6,%rdx 2463 subq %rdi,%rsi 2464 subq %rdi,%r10 2465 addq %rdi,%rdx 2466 2467 2468 2469 movq %rdx,64+16(%rsp) 2470 2471 movq %r8,64+32(%rsp) 2472 movq %r9,64+40(%rsp) 2473 movq %r10,64+48(%rsp) 2474 movq %rax,120(%rsp) 2475.cfi_escape 0x0f,0x06,0x77,0xf8,0x00,0x06,0x23,0x08 2476.Lprologue_avx2: 2477 vzeroall 2478 2479 movq %rdi,%r13 2480 vpinsrq $1,%rsi,%xmm15,%xmm15 2481 leaq 128(%rcx),%rdi 2482 leaq K256+544(%rip),%r12 2483 movl 240-128(%rdi),%r14d 2484 movq %r9,%r15 2485 movq %r10,%rsi 2486 vmovdqu (%r8),%xmm8 2487 leaq -9(%r14),%r14 2488 2489 vmovdqa 0(%r12,%r14,8),%xmm14 2490 vmovdqa 16(%r12,%r14,8),%xmm13 2491 vmovdqa 32(%r12,%r14,8),%xmm12 2492 2493 subq $-64,%r13 2494 movl 0(%r15),%eax 2495 leaq (%rsi,%r13,1),%r12 2496 movl 4(%r15),%ebx 2497 cmpq %rdx,%r13 2498 movl 8(%r15),%ecx 2499 cmoveq %rsp,%r12 2500 movl 12(%r15),%edx 2501 movl 16(%r15),%r8d 2502 movl 20(%r15),%r9d 2503 movl 24(%r15),%r10d 2504 movl 28(%r15),%r11d 2505 vmovdqu 0-128(%rdi),%xmm10 2506 jmp .Loop_avx2 2507.align 16 2508.Loop_avx2: 2509 vmovdqa K256+512(%rip),%ymm7 2510 vmovdqu -64+0(%rsi,%r13,1),%xmm0 2511 vmovdqu -64+16(%rsi,%r13,1),%xmm1 2512 vmovdqu -64+32(%rsi,%r13,1),%xmm2 2513 vmovdqu -64+48(%rsi,%r13,1),%xmm3 2514 2515 vinserti128 $1,(%r12),%ymm0,%ymm0 2516 vinserti128 $1,16(%r12),%ymm1,%ymm1 2517 vpshufb %ymm7,%ymm0,%ymm0 2518 vinserti128 $1,32(%r12),%ymm2,%ymm2 2519 vpshufb %ymm7,%ymm1,%ymm1 2520 vinserti128 $1,48(%r12),%ymm3,%ymm3 2521 2522 leaq K256(%rip),%rbp 2523 vpshufb %ymm7,%ymm2,%ymm2 2524 leaq -64(%r13),%r13 2525 vpaddd 0(%rbp),%ymm0,%ymm4 2526 vpshufb %ymm7,%ymm3,%ymm3 2527 vpaddd 32(%rbp),%ymm1,%ymm5 2528 vpaddd 64(%rbp),%ymm2,%ymm6 2529 vpaddd 96(%rbp),%ymm3,%ymm7 2530 vmovdqa %ymm4,0(%rsp) 2531 xorl %r14d,%r14d 2532 vmovdqa %ymm5,32(%rsp) 2533 2534 movq 120(%rsp),%rsi 2535.cfi_def_cfa %rsi,8 2536 leaq -64(%rsp),%rsp 2537 2538 2539 2540 movq %rsi,-8(%rsp) 2541.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 2542 movl %ebx,%esi 2543 vmovdqa %ymm6,0(%rsp) 2544 xorl %ecx,%esi 2545 vmovdqa %ymm7,32(%rsp) 2546 movl %r9d,%r12d 2547 subq $-32*4,%rbp 2548 jmp .Lavx2_00_47 2549 2550.align 16 2551.Lavx2_00_47: 2552 vmovdqu (%r13),%xmm9 2553 vpinsrq $0,%r13,%xmm15,%xmm15 2554 leaq -64(%rsp),%rsp 2555.cfi_escape 0x0f,0x05,0x77,0x38,0x06,0x23,0x08 2556 2557 pushq 64-8(%rsp) 2558.cfi_escape 0x0f,0x05,0x77,0x00,0x06,0x23,0x08 2559 leaq 8(%rsp),%rsp 2560.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 2561 vpalignr $4,%ymm0,%ymm1,%ymm4 2562 addl 0+128(%rsp),%r11d 2563 andl %r8d,%r12d 2564 rorxl $25,%r8d,%r13d 2565 vpalignr $4,%ymm2,%ymm3,%ymm7 2566 rorxl $11,%r8d,%r15d 2567 leal (%rax,%r14,1),%eax 2568 leal (%r11,%r12,1),%r11d 2569 vpsrld $7,%ymm4,%ymm6 2570 andnl %r10d,%r8d,%r12d 2571 xorl %r15d,%r13d 2572 rorxl $6,%r8d,%r14d 2573 vpaddd %ymm7,%ymm0,%ymm0 2574 leal (%r11,%r12,1),%r11d 2575 xorl %r14d,%r13d 2576 movl %eax,%r15d 2577 vpsrld $3,%ymm4,%ymm7 2578 rorxl $22,%eax,%r12d 2579 leal (%r11,%r13,1),%r11d 2580 xorl %ebx,%r15d 2581 vpslld $14,%ymm4,%ymm5 2582 rorxl $13,%eax,%r14d 2583 rorxl $2,%eax,%r13d 2584 leal (%rdx,%r11,1),%edx 2585 vpxor %ymm6,%ymm7,%ymm4 2586 andl %r15d,%esi 2587 vpxor %xmm10,%xmm9,%xmm9 2588 vmovdqu 16-128(%rdi),%xmm10 2589 xorl %r12d,%r14d 2590 xorl %ebx,%esi 2591 vpshufd $250,%ymm3,%ymm7 2592 xorl %r13d,%r14d 2593 leal (%r11,%rsi,1),%r11d 2594 movl %r8d,%r12d 2595 vpsrld $11,%ymm6,%ymm6 2596 addl 4+128(%rsp),%r10d 2597 andl %edx,%r12d 2598 rorxl $25,%edx,%r13d 2599 vpxor %ymm5,%ymm4,%ymm4 2600 rorxl $11,%edx,%esi 2601 leal (%r11,%r14,1),%r11d 2602 leal (%r10,%r12,1),%r10d 2603 vpslld $11,%ymm5,%ymm5 2604 andnl %r9d,%edx,%r12d 2605 xorl %esi,%r13d 2606 rorxl $6,%edx,%r14d 2607 vpxor %ymm6,%ymm4,%ymm4 2608 leal (%r10,%r12,1),%r10d 2609 xorl %r14d,%r13d 2610 movl %r11d,%esi 2611 vpsrld $10,%ymm7,%ymm6 2612 rorxl $22,%r11d,%r12d 2613 leal (%r10,%r13,1),%r10d 2614 xorl %eax,%esi 2615 vpxor %ymm5,%ymm4,%ymm4 2616 rorxl $13,%r11d,%r14d 2617 rorxl $2,%r11d,%r13d 2618 leal (%rcx,%r10,1),%ecx 2619 vpsrlq $17,%ymm7,%ymm7 2620 andl %esi,%r15d 2621 vpxor %xmm8,%xmm9,%xmm9 2622 xorl %r12d,%r14d 2623 xorl %eax,%r15d 2624 vpaddd %ymm4,%ymm0,%ymm0 2625 xorl %r13d,%r14d 2626 leal (%r10,%r15,1),%r10d 2627 movl %edx,%r12d 2628 vpxor %ymm7,%ymm6,%ymm6 2629 addl 8+128(%rsp),%r9d 2630 andl %ecx,%r12d 2631 rorxl $25,%ecx,%r13d 2632 vpsrlq $2,%ymm7,%ymm7 2633 rorxl $11,%ecx,%r15d 2634 leal (%r10,%r14,1),%r10d 2635 leal (%r9,%r12,1),%r9d 2636 vpxor %ymm7,%ymm6,%ymm6 2637 andnl %r8d,%ecx,%r12d 2638 xorl %r15d,%r13d 2639 rorxl $6,%ecx,%r14d 2640 vpshufd $132,%ymm6,%ymm6 2641 leal (%r9,%r12,1),%r9d 2642 xorl %r14d,%r13d 2643 movl %r10d,%r15d 2644 vpsrldq $8,%ymm6,%ymm6 2645 rorxl $22,%r10d,%r12d 2646 leal (%r9,%r13,1),%r9d 2647 xorl %r11d,%r15d 2648 vpaddd %ymm6,%ymm0,%ymm0 2649 rorxl $13,%r10d,%r14d 2650 rorxl $2,%r10d,%r13d 2651 leal (%rbx,%r9,1),%ebx 2652 vpshufd $80,%ymm0,%ymm7 2653 andl %r15d,%esi 2654 vaesenc %xmm10,%xmm9,%xmm9 2655 vmovdqu 32-128(%rdi),%xmm10 2656 xorl %r12d,%r14d 2657 xorl %r11d,%esi 2658 vpsrld $10,%ymm7,%ymm6 2659 xorl %r13d,%r14d 2660 leal (%r9,%rsi,1),%r9d 2661 movl %ecx,%r12d 2662 vpsrlq $17,%ymm7,%ymm7 2663 addl 12+128(%rsp),%r8d 2664 andl %ebx,%r12d 2665 rorxl $25,%ebx,%r13d 2666 vpxor %ymm7,%ymm6,%ymm6 2667 rorxl $11,%ebx,%esi 2668 leal (%r9,%r14,1),%r9d 2669 leal (%r8,%r12,1),%r8d 2670 vpsrlq $2,%ymm7,%ymm7 2671 andnl %edx,%ebx,%r12d 2672 xorl %esi,%r13d 2673 rorxl $6,%ebx,%r14d 2674 vpxor %ymm7,%ymm6,%ymm6 2675 leal (%r8,%r12,1),%r8d 2676 xorl %r14d,%r13d 2677 movl %r9d,%esi 2678 vpshufd $232,%ymm6,%ymm6 2679 rorxl $22,%r9d,%r12d 2680 leal (%r8,%r13,1),%r8d 2681 xorl %r10d,%esi 2682 vpslldq $8,%ymm6,%ymm6 2683 rorxl $13,%r9d,%r14d 2684 rorxl $2,%r9d,%r13d 2685 leal (%rax,%r8,1),%eax 2686 vpaddd %ymm6,%ymm0,%ymm0 2687 andl %esi,%r15d 2688 vaesenc %xmm10,%xmm9,%xmm9 2689 vmovdqu 48-128(%rdi),%xmm10 2690 xorl %r12d,%r14d 2691 xorl %r10d,%r15d 2692 vpaddd 0(%rbp),%ymm0,%ymm6 2693 xorl %r13d,%r14d 2694 leal (%r8,%r15,1),%r8d 2695 movl %ebx,%r12d 2696 vmovdqa %ymm6,0(%rsp) 2697 vpalignr $4,%ymm1,%ymm2,%ymm4 2698 addl 32+128(%rsp),%edx 2699 andl %eax,%r12d 2700 rorxl $25,%eax,%r13d 2701 vpalignr $4,%ymm3,%ymm0,%ymm7 2702 rorxl $11,%eax,%r15d 2703 leal (%r8,%r14,1),%r8d 2704 leal (%rdx,%r12,1),%edx 2705 vpsrld $7,%ymm4,%ymm6 2706 andnl %ecx,%eax,%r12d 2707 xorl %r15d,%r13d 2708 rorxl $6,%eax,%r14d 2709 vpaddd %ymm7,%ymm1,%ymm1 2710 leal (%rdx,%r12,1),%edx 2711 xorl %r14d,%r13d 2712 movl %r8d,%r15d 2713 vpsrld $3,%ymm4,%ymm7 2714 rorxl $22,%r8d,%r12d 2715 leal (%rdx,%r13,1),%edx 2716 xorl %r9d,%r15d 2717 vpslld $14,%ymm4,%ymm5 2718 rorxl $13,%r8d,%r14d 2719 rorxl $2,%r8d,%r13d 2720 leal (%r11,%rdx,1),%r11d 2721 vpxor %ymm6,%ymm7,%ymm4 2722 andl %r15d,%esi 2723 vaesenc %xmm10,%xmm9,%xmm9 2724 vmovdqu 64-128(%rdi),%xmm10 2725 xorl %r12d,%r14d 2726 xorl %r9d,%esi 2727 vpshufd $250,%ymm0,%ymm7 2728 xorl %r13d,%r14d 2729 leal (%rdx,%rsi,1),%edx 2730 movl %eax,%r12d 2731 vpsrld $11,%ymm6,%ymm6 2732 addl 36+128(%rsp),%ecx 2733 andl %r11d,%r12d 2734 rorxl $25,%r11d,%r13d 2735 vpxor %ymm5,%ymm4,%ymm4 2736 rorxl $11,%r11d,%esi 2737 leal (%rdx,%r14,1),%edx 2738 leal (%rcx,%r12,1),%ecx 2739 vpslld $11,%ymm5,%ymm5 2740 andnl %ebx,%r11d,%r12d 2741 xorl %esi,%r13d 2742 rorxl $6,%r11d,%r14d 2743 vpxor %ymm6,%ymm4,%ymm4 2744 leal (%rcx,%r12,1),%ecx 2745 xorl %r14d,%r13d 2746 movl %edx,%esi 2747 vpsrld $10,%ymm7,%ymm6 2748 rorxl $22,%edx,%r12d 2749 leal (%rcx,%r13,1),%ecx 2750 xorl %r8d,%esi 2751 vpxor %ymm5,%ymm4,%ymm4 2752 rorxl $13,%edx,%r14d 2753 rorxl $2,%edx,%r13d 2754 leal (%r10,%rcx,1),%r10d 2755 vpsrlq $17,%ymm7,%ymm7 2756 andl %esi,%r15d 2757 vaesenc %xmm10,%xmm9,%xmm9 2758 vmovdqu 80-128(%rdi),%xmm10 2759 xorl %r12d,%r14d 2760 xorl %r8d,%r15d 2761 vpaddd %ymm4,%ymm1,%ymm1 2762 xorl %r13d,%r14d 2763 leal (%rcx,%r15,1),%ecx 2764 movl %r11d,%r12d 2765 vpxor %ymm7,%ymm6,%ymm6 2766 addl 40+128(%rsp),%ebx 2767 andl %r10d,%r12d 2768 rorxl $25,%r10d,%r13d 2769 vpsrlq $2,%ymm7,%ymm7 2770 rorxl $11,%r10d,%r15d 2771 leal (%rcx,%r14,1),%ecx 2772 leal (%rbx,%r12,1),%ebx 2773 vpxor %ymm7,%ymm6,%ymm6 2774 andnl %eax,%r10d,%r12d 2775 xorl %r15d,%r13d 2776 rorxl $6,%r10d,%r14d 2777 vpshufd $132,%ymm6,%ymm6 2778 leal (%rbx,%r12,1),%ebx 2779 xorl %r14d,%r13d 2780 movl %ecx,%r15d 2781 vpsrldq $8,%ymm6,%ymm6 2782 rorxl $22,%ecx,%r12d 2783 leal (%rbx,%r13,1),%ebx 2784 xorl %edx,%r15d 2785 vpaddd %ymm6,%ymm1,%ymm1 2786 rorxl $13,%ecx,%r14d 2787 rorxl $2,%ecx,%r13d 2788 leal (%r9,%rbx,1),%r9d 2789 vpshufd $80,%ymm1,%ymm7 2790 andl %r15d,%esi 2791 vaesenc %xmm10,%xmm9,%xmm9 2792 vmovdqu 96-128(%rdi),%xmm10 2793 xorl %r12d,%r14d 2794 xorl %edx,%esi 2795 vpsrld $10,%ymm7,%ymm6 2796 xorl %r13d,%r14d 2797 leal (%rbx,%rsi,1),%ebx 2798 movl %r10d,%r12d 2799 vpsrlq $17,%ymm7,%ymm7 2800 addl 44+128(%rsp),%eax 2801 andl %r9d,%r12d 2802 rorxl $25,%r9d,%r13d 2803 vpxor %ymm7,%ymm6,%ymm6 2804 rorxl $11,%r9d,%esi 2805 leal (%rbx,%r14,1),%ebx 2806 leal (%rax,%r12,1),%eax 2807 vpsrlq $2,%ymm7,%ymm7 2808 andnl %r11d,%r9d,%r12d 2809 xorl %esi,%r13d 2810 rorxl $6,%r9d,%r14d 2811 vpxor %ymm7,%ymm6,%ymm6 2812 leal (%rax,%r12,1),%eax 2813 xorl %r14d,%r13d 2814 movl %ebx,%esi 2815 vpshufd $232,%ymm6,%ymm6 2816 rorxl $22,%ebx,%r12d 2817 leal (%rax,%r13,1),%eax 2818 xorl %ecx,%esi 2819 vpslldq $8,%ymm6,%ymm6 2820 rorxl $13,%ebx,%r14d 2821 rorxl $2,%ebx,%r13d 2822 leal (%r8,%rax,1),%r8d 2823 vpaddd %ymm6,%ymm1,%ymm1 2824 andl %esi,%r15d 2825 vaesenc %xmm10,%xmm9,%xmm9 2826 vmovdqu 112-128(%rdi),%xmm10 2827 xorl %r12d,%r14d 2828 xorl %ecx,%r15d 2829 vpaddd 32(%rbp),%ymm1,%ymm6 2830 xorl %r13d,%r14d 2831 leal (%rax,%r15,1),%eax 2832 movl %r9d,%r12d 2833 vmovdqa %ymm6,32(%rsp) 2834 leaq -64(%rsp),%rsp 2835.cfi_escape 0x0f,0x05,0x77,0x38,0x06,0x23,0x08 2836 2837 pushq 64-8(%rsp) 2838.cfi_escape 0x0f,0x05,0x77,0x00,0x06,0x23,0x08 2839 leaq 8(%rsp),%rsp 2840.cfi_escape 0x0f,0x05,0x77,0x78,0x06,0x23,0x08 2841 vpalignr $4,%ymm2,%ymm3,%ymm4 2842 addl 0+128(%rsp),%r11d 2843 andl %r8d,%r12d 2844 rorxl $25,%r8d,%r13d 2845 vpalignr $4,%ymm0,%ymm1,%ymm7 2846 rorxl $11,%r8d,%r15d 2847 leal (%rax,%r14,1),%eax 2848 leal (%r11,%r12,1),%r11d 2849 vpsrld $7,%ymm4,%ymm6 2850 andnl %r10d,%r8d,%r12d 2851 xorl %r15d,%r13d 2852 rorxl $6,%r8d,%r14d 2853 vpaddd %ymm7,%ymm2,%ymm2 2854 leal (%r11,%r12,1),%r11d 2855 xorl %r14d,%r13d 2856 movl %eax,%r15d 2857 vpsrld $3,%ymm4,%ymm7 2858 rorxl $22,%eax,%r12d 2859 leal (%r11,%r13,1),%r11d 2860 xorl %ebx,%r15d 2861 vpslld $14,%ymm4,%ymm5 2862 rorxl $13,%eax,%r14d 2863 rorxl $2,%eax,%r13d 2864 leal (%rdx,%r11,1),%edx 2865 vpxor %ymm6,%ymm7,%ymm4 2866 andl %r15d,%esi 2867 vaesenc %xmm10,%xmm9,%xmm9 2868 vmovdqu 128-128(%rdi),%xmm10 2869 xorl %r12d,%r14d 2870 xorl %ebx,%esi 2871 vpshufd $250,%ymm1,%ymm7 2872 xorl %r13d,%r14d 2873 leal (%r11,%rsi,1),%r11d 2874 movl %r8d,%r12d 2875 vpsrld $11,%ymm6,%ymm6 2876 addl 4+128(%rsp),%r10d 2877 andl %edx,%r12d 2878 rorxl $25,%edx,%r13d 2879 vpxor %ymm5,%ymm4,%ymm4 2880 rorxl $11,%edx,%esi 2881 leal (%r11,%r14,1),%r11d 2882 leal (%r10,%r12,1),%r10d 2883 vpslld $11,%ymm5,%ymm5 2884 andnl %r9d,%edx,%r12d 2885 xorl %esi,%r13d 2886 rorxl $6,%edx,%r14d 2887 vpxor %ymm6,%ymm4,%ymm4 2888 leal (%r10,%r12,1),%r10d 2889 xorl %r14d,%r13d 2890 movl %r11d,%esi 2891 vpsrld $10,%ymm7,%ymm6 2892 rorxl $22,%r11d,%r12d 2893 leal (%r10,%r13,1),%r10d 2894 xorl %eax,%esi 2895 vpxor %ymm5,%ymm4,%ymm4 2896 rorxl $13,%r11d,%r14d 2897 rorxl $2,%r11d,%r13d 2898 leal (%rcx,%r10,1),%ecx 2899 vpsrlq $17,%ymm7,%ymm7 2900 andl %esi,%r15d 2901 vaesenc %xmm10,%xmm9,%xmm9 2902 vmovdqu 144-128(%rdi),%xmm10 2903 xorl %r12d,%r14d 2904 xorl %eax,%r15d 2905 vpaddd %ymm4,%ymm2,%ymm2 2906 xorl %r13d,%r14d 2907 leal (%r10,%r15,1),%r10d 2908 movl %edx,%r12d 2909 vpxor %ymm7,%ymm6,%ymm6 2910 addl 8+128(%rsp),%r9d 2911 andl %ecx,%r12d 2912 rorxl $25,%ecx,%r13d 2913 vpsrlq $2,%ymm7,%ymm7 2914 rorxl $11,%ecx,%r15d 2915 leal (%r10,%r14,1),%r10d 2916 leal (%r9,%r12,1),%r9d 2917 vpxor %ymm7,%ymm6,%ymm6 2918 andnl %r8d,%ecx,%r12d 2919 xorl %r15d,%r13d 2920 rorxl $6,%ecx,%r14d 2921 vpshufd $132,%ymm6,%ymm6 2922 leal (%r9,%r12,1),%r9d 2923 xorl %r14d,%r13d 2924 movl %r10d,%r15d 2925 vpsrldq $8,%ymm6,%ymm6 2926 rorxl $22,%r10d,%r12d 2927 leal (%r9,%r13,1),%r9d 2928 xorl %r11d,%r15d 2929 vpaddd %ymm6,%ymm2,%ymm2 2930 rorxl $13,%r10d,%r14d 2931 rorxl $2,%r10d,%r13d 2932 leal (%rbx,%r9,1),%ebx 2933 vpshufd $80,%ymm2,%ymm7 2934 andl %r15d,%esi 2935 vaesenc %xmm10,%xmm9,%xmm9 2936 vmovdqu 160-128(%rdi),%xmm10 2937 xorl %r12d,%r14d 2938 xorl %r11d,%esi 2939 vpsrld $10,%ymm7,%ymm6 2940 xorl %r13d,%r14d 2941 leal (%r9,%rsi,1),%r9d 2942 movl %ecx,%r12d 2943 vpsrlq $17,%ymm7,%ymm7 2944 addl 12+128(%rsp),%r8d 2945 andl %ebx,%r12d 2946 rorxl $25,%ebx,%r13d 2947 vpxor %ymm7,%ymm6,%ymm6 2948 rorxl $11,%ebx,%esi 2949 leal (%r9,%r14,1),%r9d 2950 leal (%r8,%r12,1),%r8d 2951 vpsrlq $2,%ymm7,%ymm7 2952 andnl %edx,%ebx,%r12d 2953 xorl %esi,%r13d 2954 rorxl $6,%ebx,%r14d 2955 vpxor %ymm7,%ymm6,%ymm6 2956 leal (%r8,%r12,1),%r8d 2957 xorl %r14d,%r13d 2958 movl %r9d,%esi 2959 vpshufd $232,%ymm6,%ymm6 2960 rorxl $22,%r9d,%r12d 2961 leal (%r8,%r13,1),%r8d 2962 xorl %r10d,%esi 2963 vpslldq $8,%ymm6,%ymm6 2964 rorxl $13,%r9d,%r14d 2965 rorxl $2,%r9d,%r13d 2966 leal (%rax,%r8,1),%eax 2967 vpaddd %ymm6,%ymm2,%ymm2 2968 andl %esi,%r15d 2969 vaesenclast %xmm10,%xmm9,%xmm11 2970 vaesenc %xmm10,%xmm9,%xmm9 2971 vmovdqu 176-128(%rdi),%xmm10 2972 xorl %r12d,%r14d 2973 xorl %r10d,%r15d 2974 vpaddd 64(%rbp),%ymm2,%ymm6 2975 xorl %r13d,%r14d 2976 leal (%r8,%r15,1),%r8d 2977 movl %ebx,%r12d 2978 vmovdqa %ymm6,0(%rsp) 2979 vpalignr $4,%ymm3,%ymm0,%ymm4 2980 addl 32+128(%rsp),%edx 2981 andl %eax,%r12d 2982 rorxl $25,%eax,%r13d 2983 vpalignr $4,%ymm1,%ymm2,%ymm7 2984 rorxl $11,%eax,%r15d 2985 leal (%r8,%r14,1),%r8d 2986 leal (%rdx,%r12,1),%edx 2987 vpsrld $7,%ymm4,%ymm6 2988 andnl %ecx,%eax,%r12d 2989 xorl %r15d,%r13d 2990 rorxl $6,%eax,%r14d 2991 vpaddd %ymm7,%ymm3,%ymm3 2992 leal (%rdx,%r12,1),%edx 2993 xorl %r14d,%r13d 2994 movl %r8d,%r15d 2995 vpsrld $3,%ymm4,%ymm7 2996 rorxl $22,%r8d,%r12d 2997 leal (%rdx,%r13,1),%edx 2998 xorl %r9d,%r15d 2999 vpslld $14,%ymm4,%ymm5 3000 rorxl $13,%r8d,%r14d 3001 rorxl $2,%r8d,%r13d 3002 leal (%r11,%rdx,1),%r11d 3003 vpxor %ymm6,%ymm7,%ymm4 3004 andl %r15d,%esi 3005 vpand %xmm12,%xmm11,%xmm8 3006 vaesenc %xmm10,%xmm9,%xmm9 3007 vmovdqu 192-128(%rdi),%xmm10 3008 xorl %r12d,%r14d 3009 xorl %r9d,%esi 3010 vpshufd $250,%ymm2,%ymm7 3011 xorl %r13d,%r14d 3012 leal (%rdx,%rsi,1),%edx 3013 movl %eax,%r12d 3014 vpsrld $11,%ymm6,%ymm6 3015 addl 36+128(%rsp),%ecx 3016 andl %r11d,%r12d 3017 rorxl $25,%r11d,%r13d 3018 vpxor %ymm5,%ymm4,%ymm4 3019 rorxl $11,%r11d,%esi 3020 leal (%rdx,%r14,1),%edx 3021 leal (%rcx,%r12,1),%ecx 3022 vpslld $11,%ymm5,%ymm5 3023 andnl %ebx,%r11d,%r12d 3024 xorl %esi,%r13d 3025 rorxl $6,%r11d,%r14d 3026 vpxor %ymm6,%ymm4,%ymm4 3027 leal (%rcx,%r12,1),%ecx 3028 xorl %r14d,%r13d 3029 movl %edx,%esi 3030 vpsrld $10,%ymm7,%ymm6 3031 rorxl $22,%edx,%r12d 3032 leal (%rcx,%r13,1),%ecx 3033 xorl %r8d,%esi 3034 vpxor %ymm5,%ymm4,%ymm4 3035 rorxl $13,%edx,%r14d 3036 rorxl $2,%edx,%r13d 3037 leal (%r10,%rcx,1),%r10d 3038 vpsrlq $17,%ymm7,%ymm7 3039 andl %esi,%r15d 3040 vaesenclast %xmm10,%xmm9,%xmm11 3041 vaesenc %xmm10,%xmm9,%xmm9 3042 vmovdqu 208-128(%rdi),%xmm10 3043 xorl %r12d,%r14d 3044 xorl %r8d,%r15d 3045 vpaddd %ymm4,%ymm3,%ymm3 3046 xorl %r13d,%r14d 3047 leal (%rcx,%r15,1),%ecx 3048 movl %r11d,%r12d 3049 vpxor %ymm7,%ymm6,%ymm6 3050 addl 40+128(%rsp),%ebx 3051 andl %r10d,%r12d 3052 rorxl $25,%r10d,%r13d 3053 vpsrlq $2,%ymm7,%ymm7 3054 rorxl $11,%r10d,%r15d 3055 leal (%rcx,%r14,1),%ecx 3056 leal (%rbx,%r12,1),%ebx 3057 vpxor %ymm7,%ymm6,%ymm6 3058 andnl %eax,%r10d,%r12d 3059 xorl %r15d,%r13d 3060 rorxl $6,%r10d,%r14d 3061 vpshufd $132,%ymm6,%ymm6 3062 leal (%rbx,%r12,1),%ebx 3063 xorl %r14d,%r13d 3064 movl %ecx,%r15d 3065 vpsrldq $8,%ymm6,%ymm6 3066 rorxl $22,%ecx,%r12d 3067 leal (%rbx,%r13,1),%ebx 3068 xorl %edx,%r15d 3069 vpaddd %ymm6,%ymm3,%ymm3 3070 rorxl $13,%ecx,%r14d 3071 rorxl $2,%ecx,%r13d 3072 leal (%r9,%rbx,1),%r9d 3073 vpshufd $80,%ymm3,%ymm7 3074 andl %r15d,%esi 3075 vpand %xmm13,%xmm11,%xmm11 3076 vaesenc %xmm10,%xmm9,%xmm9 3077 vmovdqu 224-128(%rdi),%xmm10 3078 xorl %r12d,%r14d 3079 xorl %edx,%esi 3080 vpsrld $10,%ymm7,%ymm6 3081 xorl %r13d,%r14d 3082 leal (%rbx,%rsi,1),%ebx 3083 movl %r10d,%r12d 3084 vpsrlq $17,%ymm7,%ymm7 3085 addl 44+128(%rsp),%eax 3086 andl %r9d,%r12d 3087 rorxl $25,%r9d,%r13d 3088 vpxor %ymm7,%ymm6,%ymm6 3089 rorxl $11,%r9d,%esi 3090 leal (%rbx,%r14,1),%ebx 3091 leal (%rax,%r12,1),%eax 3092 vpsrlq $2,%ymm7,%ymm7 3093 andnl %r11d,%r9d,%r12d 3094 xorl %esi,%r13d 3095 rorxl $6,%r9d,%r14d 3096 vpxor %ymm7,%ymm6,%ymm6 3097 leal (%rax,%r12,1),%eax 3098 xorl %r14d,%r13d 3099 movl %ebx,%esi 3100 vpshufd $232,%ymm6,%ymm6 3101 rorxl $22,%ebx,%r12d 3102 leal (%rax,%r13,1),%eax 3103 xorl %ecx,%esi 3104 vpslldq $8,%ymm6,%ymm6 3105 rorxl $13,%ebx,%r14d 3106 rorxl $2,%ebx,%r13d 3107 leal (%r8,%rax,1),%r8d 3108 vpaddd %ymm6,%ymm3,%ymm3 3109 andl %esi,%r15d 3110 vpor %xmm11,%xmm8,%xmm8 3111 vaesenclast %xmm10,%xmm9,%xmm11 3112 vmovdqu 0-128(%rdi),%xmm10 3113 xorl %r12d,%r14d 3114 xorl %ecx,%r15d 3115 vpaddd 96(%rbp),%ymm3,%ymm6 3116 xorl %r13d,%r14d 3117 leal (%rax,%r15,1),%eax 3118 movl %r9d,%r12d 3119 vmovdqa %ymm6,32(%rsp) 3120 vmovq %xmm15,%r13 3121 vpextrq $1,%xmm15,%r15 3122 vpand %xmm14,%xmm11,%xmm11 3123 vpor %xmm11,%xmm8,%xmm8 3124 vmovdqu %xmm8,(%r15,%r13,1) 3125 leaq 16(%r13),%r13 3126 leaq 128(%rbp),%rbp 3127 cmpb $0,3(%rbp) 3128 jne .Lavx2_00_47 3129 vmovdqu (%r13),%xmm9 3130 vpinsrq $0,%r13,%xmm15,%xmm15 3131 addl 0+64(%rsp),%r11d 3132 andl %r8d,%r12d 3133 rorxl $25,%r8d,%r13d 3134 rorxl $11,%r8d,%r15d 3135 leal (%rax,%r14,1),%eax 3136 leal (%r11,%r12,1),%r11d 3137 andnl %r10d,%r8d,%r12d 3138 xorl %r15d,%r13d 3139 rorxl $6,%r8d,%r14d 3140 leal (%r11,%r12,1),%r11d 3141 xorl %r14d,%r13d 3142 movl %eax,%r15d 3143 rorxl $22,%eax,%r12d 3144 leal (%r11,%r13,1),%r11d 3145 xorl %ebx,%r15d 3146 rorxl $13,%eax,%r14d 3147 rorxl $2,%eax,%r13d 3148 leal (%rdx,%r11,1),%edx 3149 andl %r15d,%esi 3150 vpxor %xmm10,%xmm9,%xmm9 3151 vmovdqu 16-128(%rdi),%xmm10 3152 xorl %r12d,%r14d 3153 xorl %ebx,%esi 3154 xorl %r13d,%r14d 3155 leal (%r11,%rsi,1),%r11d 3156 movl %r8d,%r12d 3157 addl 4+64(%rsp),%r10d 3158 andl %edx,%r12d 3159 rorxl $25,%edx,%r13d 3160 rorxl $11,%edx,%esi 3161 leal (%r11,%r14,1),%r11d 3162 leal (%r10,%r12,1),%r10d 3163 andnl %r9d,%edx,%r12d 3164 xorl %esi,%r13d 3165 rorxl $6,%edx,%r14d 3166 leal (%r10,%r12,1),%r10d 3167 xorl %r14d,%r13d 3168 movl %r11d,%esi 3169 rorxl $22,%r11d,%r12d 3170 leal (%r10,%r13,1),%r10d 3171 xorl %eax,%esi 3172 rorxl $13,%r11d,%r14d 3173 rorxl $2,%r11d,%r13d 3174 leal (%rcx,%r10,1),%ecx 3175 andl %esi,%r15d 3176 vpxor %xmm8,%xmm9,%xmm9 3177 xorl %r12d,%r14d 3178 xorl %eax,%r15d 3179 xorl %r13d,%r14d 3180 leal (%r10,%r15,1),%r10d 3181 movl %edx,%r12d 3182 addl 8+64(%rsp),%r9d 3183 andl %ecx,%r12d 3184 rorxl $25,%ecx,%r13d 3185 rorxl $11,%ecx,%r15d 3186 leal (%r10,%r14,1),%r10d 3187 leal (%r9,%r12,1),%r9d 3188 andnl %r8d,%ecx,%r12d 3189 xorl %r15d,%r13d 3190 rorxl $6,%ecx,%r14d 3191 leal (%r9,%r12,1),%r9d 3192 xorl %r14d,%r13d 3193 movl %r10d,%r15d 3194 rorxl $22,%r10d,%r12d 3195 leal (%r9,%r13,1),%r9d 3196 xorl %r11d,%r15d 3197 rorxl $13,%r10d,%r14d 3198 rorxl $2,%r10d,%r13d 3199 leal (%rbx,%r9,1),%ebx 3200 andl %r15d,%esi 3201 vaesenc %xmm10,%xmm9,%xmm9 3202 vmovdqu 32-128(%rdi),%xmm10 3203 xorl %r12d,%r14d 3204 xorl %r11d,%esi 3205 xorl %r13d,%r14d 3206 leal (%r9,%rsi,1),%r9d 3207 movl %ecx,%r12d 3208 addl 12+64(%rsp),%r8d 3209 andl %ebx,%r12d 3210 rorxl $25,%ebx,%r13d 3211 rorxl $11,%ebx,%esi 3212 leal (%r9,%r14,1),%r9d 3213 leal (%r8,%r12,1),%r8d 3214 andnl %edx,%ebx,%r12d 3215 xorl %esi,%r13d 3216 rorxl $6,%ebx,%r14d 3217 leal (%r8,%r12,1),%r8d 3218 xorl %r14d,%r13d 3219 movl %r9d,%esi 3220 rorxl $22,%r9d,%r12d 3221 leal (%r8,%r13,1),%r8d 3222 xorl %r10d,%esi 3223 rorxl $13,%r9d,%r14d 3224 rorxl $2,%r9d,%r13d 3225 leal (%rax,%r8,1),%eax 3226 andl %esi,%r15d 3227 vaesenc %xmm10,%xmm9,%xmm9 3228 vmovdqu 48-128(%rdi),%xmm10 3229 xorl %r12d,%r14d 3230 xorl %r10d,%r15d 3231 xorl %r13d,%r14d 3232 leal (%r8,%r15,1),%r8d 3233 movl %ebx,%r12d 3234 addl 32+64(%rsp),%edx 3235 andl %eax,%r12d 3236 rorxl $25,%eax,%r13d 3237 rorxl $11,%eax,%r15d 3238 leal (%r8,%r14,1),%r8d 3239 leal (%rdx,%r12,1),%edx 3240 andnl %ecx,%eax,%r12d 3241 xorl %r15d,%r13d 3242 rorxl $6,%eax,%r14d 3243 leal (%rdx,%r12,1),%edx 3244 xorl %r14d,%r13d 3245 movl %r8d,%r15d 3246 rorxl $22,%r8d,%r12d 3247 leal (%rdx,%r13,1),%edx 3248 xorl %r9d,%r15d 3249 rorxl $13,%r8d,%r14d 3250 rorxl $2,%r8d,%r13d 3251 leal (%r11,%rdx,1),%r11d 3252 andl %r15d,%esi 3253 vaesenc %xmm10,%xmm9,%xmm9 3254 vmovdqu 64-128(%rdi),%xmm10 3255 xorl %r12d,%r14d 3256 xorl %r9d,%esi 3257 xorl %r13d,%r14d 3258 leal (%rdx,%rsi,1),%edx 3259 movl %eax,%r12d 3260 addl 36+64(%rsp),%ecx 3261 andl %r11d,%r12d 3262 rorxl $25,%r11d,%r13d 3263 rorxl $11,%r11d,%esi 3264 leal (%rdx,%r14,1),%edx 3265 leal (%rcx,%r12,1),%ecx 3266 andnl %ebx,%r11d,%r12d 3267 xorl %esi,%r13d 3268 rorxl $6,%r11d,%r14d 3269 leal (%rcx,%r12,1),%ecx 3270 xorl %r14d,%r13d 3271 movl %edx,%esi 3272 rorxl $22,%edx,%r12d 3273 leal (%rcx,%r13,1),%ecx 3274 xorl %r8d,%esi 3275 rorxl $13,%edx,%r14d 3276 rorxl $2,%edx,%r13d 3277 leal (%r10,%rcx,1),%r10d 3278 andl %esi,%r15d 3279 vaesenc %xmm10,%xmm9,%xmm9 3280 vmovdqu 80-128(%rdi),%xmm10 3281 xorl %r12d,%r14d 3282 xorl %r8d,%r15d 3283 xorl %r13d,%r14d 3284 leal (%rcx,%r15,1),%ecx 3285 movl %r11d,%r12d 3286 addl 40+64(%rsp),%ebx 3287 andl %r10d,%r12d 3288 rorxl $25,%r10d,%r13d 3289 rorxl $11,%r10d,%r15d 3290 leal (%rcx,%r14,1),%ecx 3291 leal (%rbx,%r12,1),%ebx 3292 andnl %eax,%r10d,%r12d 3293 xorl %r15d,%r13d 3294 rorxl $6,%r10d,%r14d 3295 leal (%rbx,%r12,1),%ebx 3296 xorl %r14d,%r13d 3297 movl %ecx,%r15d 3298 rorxl $22,%ecx,%r12d 3299 leal (%rbx,%r13,1),%ebx 3300 xorl %edx,%r15d 3301 rorxl $13,%ecx,%r14d 3302 rorxl $2,%ecx,%r13d 3303 leal (%r9,%rbx,1),%r9d 3304 andl %r15d,%esi 3305 vaesenc %xmm10,%xmm9,%xmm9 3306 vmovdqu 96-128(%rdi),%xmm10 3307 xorl %r12d,%r14d 3308 xorl %edx,%esi 3309 xorl %r13d,%r14d 3310 leal (%rbx,%rsi,1),%ebx 3311 movl %r10d,%r12d 3312 addl 44+64(%rsp),%eax 3313 andl %r9d,%r12d 3314 rorxl $25,%r9d,%r13d 3315 rorxl $11,%r9d,%esi 3316 leal (%rbx,%r14,1),%ebx 3317 leal (%rax,%r12,1),%eax 3318 andnl %r11d,%r9d,%r12d 3319 xorl %esi,%r13d 3320 rorxl $6,%r9d,%r14d 3321 leal (%rax,%r12,1),%eax 3322 xorl %r14d,%r13d 3323 movl %ebx,%esi 3324 rorxl $22,%ebx,%r12d 3325 leal (%rax,%r13,1),%eax 3326 xorl %ecx,%esi 3327 rorxl $13,%ebx,%r14d 3328 rorxl $2,%ebx,%r13d 3329 leal (%r8,%rax,1),%r8d 3330 andl %esi,%r15d 3331 vaesenc %xmm10,%xmm9,%xmm9 3332 vmovdqu 112-128(%rdi),%xmm10 3333 xorl %r12d,%r14d 3334 xorl %ecx,%r15d 3335 xorl %r13d,%r14d 3336 leal (%rax,%r15,1),%eax 3337 movl %r9d,%r12d 3338 addl 0(%rsp),%r11d 3339 andl %r8d,%r12d 3340 rorxl $25,%r8d,%r13d 3341 rorxl $11,%r8d,%r15d 3342 leal (%rax,%r14,1),%eax 3343 leal (%r11,%r12,1),%r11d 3344 andnl %r10d,%r8d,%r12d 3345 xorl %r15d,%r13d 3346 rorxl $6,%r8d,%r14d 3347 leal (%r11,%r12,1),%r11d 3348 xorl %r14d,%r13d 3349 movl %eax,%r15d 3350 rorxl $22,%eax,%r12d 3351 leal (%r11,%r13,1),%r11d 3352 xorl %ebx,%r15d 3353 rorxl $13,%eax,%r14d 3354 rorxl $2,%eax,%r13d 3355 leal (%rdx,%r11,1),%edx 3356 andl %r15d,%esi 3357 vaesenc %xmm10,%xmm9,%xmm9 3358 vmovdqu 128-128(%rdi),%xmm10 3359 xorl %r12d,%r14d 3360 xorl %ebx,%esi 3361 xorl %r13d,%r14d 3362 leal (%r11,%rsi,1),%r11d 3363 movl %r8d,%r12d 3364 addl 4(%rsp),%r10d 3365 andl %edx,%r12d 3366 rorxl $25,%edx,%r13d 3367 rorxl $11,%edx,%esi 3368 leal (%r11,%r14,1),%r11d 3369 leal (%r10,%r12,1),%r10d 3370 andnl %r9d,%edx,%r12d 3371 xorl %esi,%r13d 3372 rorxl $6,%edx,%r14d 3373 leal (%r10,%r12,1),%r10d 3374 xorl %r14d,%r13d 3375 movl %r11d,%esi 3376 rorxl $22,%r11d,%r12d 3377 leal (%r10,%r13,1),%r10d 3378 xorl %eax,%esi 3379 rorxl $13,%r11d,%r14d 3380 rorxl $2,%r11d,%r13d 3381 leal (%rcx,%r10,1),%ecx 3382 andl %esi,%r15d 3383 vaesenc %xmm10,%xmm9,%xmm9 3384 vmovdqu 144-128(%rdi),%xmm10 3385 xorl %r12d,%r14d 3386 xorl %eax,%r15d 3387 xorl %r13d,%r14d 3388 leal (%r10,%r15,1),%r10d 3389 movl %edx,%r12d 3390 addl 8(%rsp),%r9d 3391 andl %ecx,%r12d 3392 rorxl $25,%ecx,%r13d 3393 rorxl $11,%ecx,%r15d 3394 leal (%r10,%r14,1),%r10d 3395 leal (%r9,%r12,1),%r9d 3396 andnl %r8d,%ecx,%r12d 3397 xorl %r15d,%r13d 3398 rorxl $6,%ecx,%r14d 3399 leal (%r9,%r12,1),%r9d 3400 xorl %r14d,%r13d 3401 movl %r10d,%r15d 3402 rorxl $22,%r10d,%r12d 3403 leal (%r9,%r13,1),%r9d 3404 xorl %r11d,%r15d 3405 rorxl $13,%r10d,%r14d 3406 rorxl $2,%r10d,%r13d 3407 leal (%rbx,%r9,1),%ebx 3408 andl %r15d,%esi 3409 vaesenc %xmm10,%xmm9,%xmm9 3410 vmovdqu 160-128(%rdi),%xmm10 3411 xorl %r12d,%r14d 3412 xorl %r11d,%esi 3413 xorl %r13d,%r14d 3414 leal (%r9,%rsi,1),%r9d 3415 movl %ecx,%r12d 3416 addl 12(%rsp),%r8d 3417 andl %ebx,%r12d 3418 rorxl $25,%ebx,%r13d 3419 rorxl $11,%ebx,%esi 3420 leal (%r9,%r14,1),%r9d 3421 leal (%r8,%r12,1),%r8d 3422 andnl %edx,%ebx,%r12d 3423 xorl %esi,%r13d 3424 rorxl $6,%ebx,%r14d 3425 leal (%r8,%r12,1),%r8d 3426 xorl %r14d,%r13d 3427 movl %r9d,%esi 3428 rorxl $22,%r9d,%r12d 3429 leal (%r8,%r13,1),%r8d 3430 xorl %r10d,%esi 3431 rorxl $13,%r9d,%r14d 3432 rorxl $2,%r9d,%r13d 3433 leal (%rax,%r8,1),%eax 3434 andl %esi,%r15d 3435 vaesenclast %xmm10,%xmm9,%xmm11 3436 vaesenc %xmm10,%xmm9,%xmm9 3437 vmovdqu 176-128(%rdi),%xmm10 3438 xorl %r12d,%r14d 3439 xorl %r10d,%r15d 3440 xorl %r13d,%r14d 3441 leal (%r8,%r15,1),%r8d 3442 movl %ebx,%r12d 3443 addl 32(%rsp),%edx 3444 andl %eax,%r12d 3445 rorxl $25,%eax,%r13d 3446 rorxl $11,%eax,%r15d 3447 leal (%r8,%r14,1),%r8d 3448 leal (%rdx,%r12,1),%edx 3449 andnl %ecx,%eax,%r12d 3450 xorl %r15d,%r13d 3451 rorxl $6,%eax,%r14d 3452 leal (%rdx,%r12,1),%edx 3453 xorl %r14d,%r13d 3454 movl %r8d,%r15d 3455 rorxl $22,%r8d,%r12d 3456 leal (%rdx,%r13,1),%edx 3457 xorl %r9d,%r15d 3458 rorxl $13,%r8d,%r14d 3459 rorxl $2,%r8d,%r13d 3460 leal (%r11,%rdx,1),%r11d 3461 andl %r15d,%esi 3462 vpand %xmm12,%xmm11,%xmm8 3463 vaesenc %xmm10,%xmm9,%xmm9 3464 vmovdqu 192-128(%rdi),%xmm10 3465 xorl %r12d,%r14d 3466 xorl %r9d,%esi 3467 xorl %r13d,%r14d 3468 leal (%rdx,%rsi,1),%edx 3469 movl %eax,%r12d 3470 addl 36(%rsp),%ecx 3471 andl %r11d,%r12d 3472 rorxl $25,%r11d,%r13d 3473 rorxl $11,%r11d,%esi 3474 leal (%rdx,%r14,1),%edx 3475 leal (%rcx,%r12,1),%ecx 3476 andnl %ebx,%r11d,%r12d 3477 xorl %esi,%r13d 3478 rorxl $6,%r11d,%r14d 3479 leal (%rcx,%r12,1),%ecx 3480 xorl %r14d,%r13d 3481 movl %edx,%esi 3482 rorxl $22,%edx,%r12d 3483 leal (%rcx,%r13,1),%ecx 3484 xorl %r8d,%esi 3485 rorxl $13,%edx,%r14d 3486 rorxl $2,%edx,%r13d 3487 leal (%r10,%rcx,1),%r10d 3488 andl %esi,%r15d 3489 vaesenclast %xmm10,%xmm9,%xmm11 3490 vaesenc %xmm10,%xmm9,%xmm9 3491 vmovdqu 208-128(%rdi),%xmm10 3492 xorl %r12d,%r14d 3493 xorl %r8d,%r15d 3494 xorl %r13d,%r14d 3495 leal (%rcx,%r15,1),%ecx 3496 movl %r11d,%r12d 3497 addl 40(%rsp),%ebx 3498 andl %r10d,%r12d 3499 rorxl $25,%r10d,%r13d 3500 rorxl $11,%r10d,%r15d 3501 leal (%rcx,%r14,1),%ecx 3502 leal (%rbx,%r12,1),%ebx 3503 andnl %eax,%r10d,%r12d 3504 xorl %r15d,%r13d 3505 rorxl $6,%r10d,%r14d 3506 leal (%rbx,%r12,1),%ebx 3507 xorl %r14d,%r13d 3508 movl %ecx,%r15d 3509 rorxl $22,%ecx,%r12d 3510 leal (%rbx,%r13,1),%ebx 3511 xorl %edx,%r15d 3512 rorxl $13,%ecx,%r14d 3513 rorxl $2,%ecx,%r13d 3514 leal (%r9,%rbx,1),%r9d 3515 andl %r15d,%esi 3516 vpand %xmm13,%xmm11,%xmm11 3517 vaesenc %xmm10,%xmm9,%xmm9 3518 vmovdqu 224-128(%rdi),%xmm10 3519 xorl %r12d,%r14d 3520 xorl %edx,%esi 3521 xorl %r13d,%r14d 3522 leal (%rbx,%rsi,1),%ebx 3523 movl %r10d,%r12d 3524 addl 44(%rsp),%eax 3525 andl %r9d,%r12d 3526 rorxl $25,%r9d,%r13d 3527 rorxl $11,%r9d,%esi 3528 leal (%rbx,%r14,1),%ebx 3529 leal (%rax,%r12,1),%eax 3530 andnl %r11d,%r9d,%r12d 3531 xorl %esi,%r13d 3532 rorxl $6,%r9d,%r14d 3533 leal (%rax,%r12,1),%eax 3534 xorl %r14d,%r13d 3535 movl %ebx,%esi 3536 rorxl $22,%ebx,%r12d 3537 leal (%rax,%r13,1),%eax 3538 xorl %ecx,%esi 3539 rorxl $13,%ebx,%r14d 3540 rorxl $2,%ebx,%r13d 3541 leal (%r8,%rax,1),%r8d 3542 andl %esi,%r15d 3543 vpor %xmm11,%xmm8,%xmm8 3544 vaesenclast %xmm10,%xmm9,%xmm11 3545 vmovdqu 0-128(%rdi),%xmm10 3546 xorl %r12d,%r14d 3547 xorl %ecx,%r15d 3548 xorl %r13d,%r14d 3549 leal (%rax,%r15,1),%eax 3550 movl %r9d,%r12d 3551 vpextrq $1,%xmm15,%r12 3552 vmovq %xmm15,%r13 3553 movq 552(%rsp),%r15 3554 addl %r14d,%eax 3555 leaq 448(%rsp),%rbp 3556 3557 vpand %xmm14,%xmm11,%xmm11 3558 vpor %xmm11,%xmm8,%xmm8 3559 vmovdqu %xmm8,(%r12,%r13,1) 3560 leaq 16(%r13),%r13 3561 3562 addl 0(%r15),%eax 3563 addl 4(%r15),%ebx 3564 addl 8(%r15),%ecx 3565 addl 12(%r15),%edx 3566 addl 16(%r15),%r8d 3567 addl 20(%r15),%r9d 3568 addl 24(%r15),%r10d 3569 addl 28(%r15),%r11d 3570 3571 movl %eax,0(%r15) 3572 movl %ebx,4(%r15) 3573 movl %ecx,8(%r15) 3574 movl %edx,12(%r15) 3575 movl %r8d,16(%r15) 3576 movl %r9d,20(%r15) 3577 movl %r10d,24(%r15) 3578 movl %r11d,28(%r15) 3579 3580 cmpq 80(%rbp),%r13 3581 je .Ldone_avx2 3582 3583 xorl %r14d,%r14d 3584 movl %ebx,%esi 3585 movl %r9d,%r12d 3586 xorl %ecx,%esi 3587 jmp .Lower_avx2 3588.align 16 3589.Lower_avx2: 3590 vmovdqu (%r13),%xmm9 3591 vpinsrq $0,%r13,%xmm15,%xmm15 3592 addl 0+16(%rbp),%r11d 3593 andl %r8d,%r12d 3594 rorxl $25,%r8d,%r13d 3595 rorxl $11,%r8d,%r15d 3596 leal (%rax,%r14,1),%eax 3597 leal (%r11,%r12,1),%r11d 3598 andnl %r10d,%r8d,%r12d 3599 xorl %r15d,%r13d 3600 rorxl $6,%r8d,%r14d 3601 leal (%r11,%r12,1),%r11d 3602 xorl %r14d,%r13d 3603 movl %eax,%r15d 3604 rorxl $22,%eax,%r12d 3605 leal (%r11,%r13,1),%r11d 3606 xorl %ebx,%r15d 3607 rorxl $13,%eax,%r14d 3608 rorxl $2,%eax,%r13d 3609 leal (%rdx,%r11,1),%edx 3610 andl %r15d,%esi 3611 vpxor %xmm10,%xmm9,%xmm9 3612 vmovdqu 16-128(%rdi),%xmm10 3613 xorl %r12d,%r14d 3614 xorl %ebx,%esi 3615 xorl %r13d,%r14d 3616 leal (%r11,%rsi,1),%r11d 3617 movl %r8d,%r12d 3618 addl 4+16(%rbp),%r10d 3619 andl %edx,%r12d 3620 rorxl $25,%edx,%r13d 3621 rorxl $11,%edx,%esi 3622 leal (%r11,%r14,1),%r11d 3623 leal (%r10,%r12,1),%r10d 3624 andnl %r9d,%edx,%r12d 3625 xorl %esi,%r13d 3626 rorxl $6,%edx,%r14d 3627 leal (%r10,%r12,1),%r10d 3628 xorl %r14d,%r13d 3629 movl %r11d,%esi 3630 rorxl $22,%r11d,%r12d 3631 leal (%r10,%r13,1),%r10d 3632 xorl %eax,%esi 3633 rorxl $13,%r11d,%r14d 3634 rorxl $2,%r11d,%r13d 3635 leal (%rcx,%r10,1),%ecx 3636 andl %esi,%r15d 3637 vpxor %xmm8,%xmm9,%xmm9 3638 xorl %r12d,%r14d 3639 xorl %eax,%r15d 3640 xorl %r13d,%r14d 3641 leal (%r10,%r15,1),%r10d 3642 movl %edx,%r12d 3643 addl 8+16(%rbp),%r9d 3644 andl %ecx,%r12d 3645 rorxl $25,%ecx,%r13d 3646 rorxl $11,%ecx,%r15d 3647 leal (%r10,%r14,1),%r10d 3648 leal (%r9,%r12,1),%r9d 3649 andnl %r8d,%ecx,%r12d 3650 xorl %r15d,%r13d 3651 rorxl $6,%ecx,%r14d 3652 leal (%r9,%r12,1),%r9d 3653 xorl %r14d,%r13d 3654 movl %r10d,%r15d 3655 rorxl $22,%r10d,%r12d 3656 leal (%r9,%r13,1),%r9d 3657 xorl %r11d,%r15d 3658 rorxl $13,%r10d,%r14d 3659 rorxl $2,%r10d,%r13d 3660 leal (%rbx,%r9,1),%ebx 3661 andl %r15d,%esi 3662 vaesenc %xmm10,%xmm9,%xmm9 3663 vmovdqu 32-128(%rdi),%xmm10 3664 xorl %r12d,%r14d 3665 xorl %r11d,%esi 3666 xorl %r13d,%r14d 3667 leal (%r9,%rsi,1),%r9d 3668 movl %ecx,%r12d 3669 addl 12+16(%rbp),%r8d 3670 andl %ebx,%r12d 3671 rorxl $25,%ebx,%r13d 3672 rorxl $11,%ebx,%esi 3673 leal (%r9,%r14,1),%r9d 3674 leal (%r8,%r12,1),%r8d 3675 andnl %edx,%ebx,%r12d 3676 xorl %esi,%r13d 3677 rorxl $6,%ebx,%r14d 3678 leal (%r8,%r12,1),%r8d 3679 xorl %r14d,%r13d 3680 movl %r9d,%esi 3681 rorxl $22,%r9d,%r12d 3682 leal (%r8,%r13,1),%r8d 3683 xorl %r10d,%esi 3684 rorxl $13,%r9d,%r14d 3685 rorxl $2,%r9d,%r13d 3686 leal (%rax,%r8,1),%eax 3687 andl %esi,%r15d 3688 vaesenc %xmm10,%xmm9,%xmm9 3689 vmovdqu 48-128(%rdi),%xmm10 3690 xorl %r12d,%r14d 3691 xorl %r10d,%r15d 3692 xorl %r13d,%r14d 3693 leal (%r8,%r15,1),%r8d 3694 movl %ebx,%r12d 3695 addl 32+16(%rbp),%edx 3696 andl %eax,%r12d 3697 rorxl $25,%eax,%r13d 3698 rorxl $11,%eax,%r15d 3699 leal (%r8,%r14,1),%r8d 3700 leal (%rdx,%r12,1),%edx 3701 andnl %ecx,%eax,%r12d 3702 xorl %r15d,%r13d 3703 rorxl $6,%eax,%r14d 3704 leal (%rdx,%r12,1),%edx 3705 xorl %r14d,%r13d 3706 movl %r8d,%r15d 3707 rorxl $22,%r8d,%r12d 3708 leal (%rdx,%r13,1),%edx 3709 xorl %r9d,%r15d 3710 rorxl $13,%r8d,%r14d 3711 rorxl $2,%r8d,%r13d 3712 leal (%r11,%rdx,1),%r11d 3713 andl %r15d,%esi 3714 vaesenc %xmm10,%xmm9,%xmm9 3715 vmovdqu 64-128(%rdi),%xmm10 3716 xorl %r12d,%r14d 3717 xorl %r9d,%esi 3718 xorl %r13d,%r14d 3719 leal (%rdx,%rsi,1),%edx 3720 movl %eax,%r12d 3721 addl 36+16(%rbp),%ecx 3722 andl %r11d,%r12d 3723 rorxl $25,%r11d,%r13d 3724 rorxl $11,%r11d,%esi 3725 leal (%rdx,%r14,1),%edx 3726 leal (%rcx,%r12,1),%ecx 3727 andnl %ebx,%r11d,%r12d 3728 xorl %esi,%r13d 3729 rorxl $6,%r11d,%r14d 3730 leal (%rcx,%r12,1),%ecx 3731 xorl %r14d,%r13d 3732 movl %edx,%esi 3733 rorxl $22,%edx,%r12d 3734 leal (%rcx,%r13,1),%ecx 3735 xorl %r8d,%esi 3736 rorxl $13,%edx,%r14d 3737 rorxl $2,%edx,%r13d 3738 leal (%r10,%rcx,1),%r10d 3739 andl %esi,%r15d 3740 vaesenc %xmm10,%xmm9,%xmm9 3741 vmovdqu 80-128(%rdi),%xmm10 3742 xorl %r12d,%r14d 3743 xorl %r8d,%r15d 3744 xorl %r13d,%r14d 3745 leal (%rcx,%r15,1),%ecx 3746 movl %r11d,%r12d 3747 addl 40+16(%rbp),%ebx 3748 andl %r10d,%r12d 3749 rorxl $25,%r10d,%r13d 3750 rorxl $11,%r10d,%r15d 3751 leal (%rcx,%r14,1),%ecx 3752 leal (%rbx,%r12,1),%ebx 3753 andnl %eax,%r10d,%r12d 3754 xorl %r15d,%r13d 3755 rorxl $6,%r10d,%r14d 3756 leal (%rbx,%r12,1),%ebx 3757 xorl %r14d,%r13d 3758 movl %ecx,%r15d 3759 rorxl $22,%ecx,%r12d 3760 leal (%rbx,%r13,1),%ebx 3761 xorl %edx,%r15d 3762 rorxl $13,%ecx,%r14d 3763 rorxl $2,%ecx,%r13d 3764 leal (%r9,%rbx,1),%r9d 3765 andl %r15d,%esi 3766 vaesenc %xmm10,%xmm9,%xmm9 3767 vmovdqu 96-128(%rdi),%xmm10 3768 xorl %r12d,%r14d 3769 xorl %edx,%esi 3770 xorl %r13d,%r14d 3771 leal (%rbx,%rsi,1),%ebx 3772 movl %r10d,%r12d 3773 addl 44+16(%rbp),%eax 3774 andl %r9d,%r12d 3775 rorxl $25,%r9d,%r13d 3776 rorxl $11,%r9d,%esi 3777 leal (%rbx,%r14,1),%ebx 3778 leal (%rax,%r12,1),%eax 3779 andnl %r11d,%r9d,%r12d 3780 xorl %esi,%r13d 3781 rorxl $6,%r9d,%r14d 3782 leal (%rax,%r12,1),%eax 3783 xorl %r14d,%r13d 3784 movl %ebx,%esi 3785 rorxl $22,%ebx,%r12d 3786 leal (%rax,%r13,1),%eax 3787 xorl %ecx,%esi 3788 rorxl $13,%ebx,%r14d 3789 rorxl $2,%ebx,%r13d 3790 leal (%r8,%rax,1),%r8d 3791 andl %esi,%r15d 3792 vaesenc %xmm10,%xmm9,%xmm9 3793 vmovdqu 112-128(%rdi),%xmm10 3794 xorl %r12d,%r14d 3795 xorl %ecx,%r15d 3796 xorl %r13d,%r14d 3797 leal (%rax,%r15,1),%eax 3798 movl %r9d,%r12d 3799 leaq -64(%rbp),%rbp 3800 addl 0+16(%rbp),%r11d 3801 andl %r8d,%r12d 3802 rorxl $25,%r8d,%r13d 3803 rorxl $11,%r8d,%r15d 3804 leal (%rax,%r14,1),%eax 3805 leal (%r11,%r12,1),%r11d 3806 andnl %r10d,%r8d,%r12d 3807 xorl %r15d,%r13d 3808 rorxl $6,%r8d,%r14d 3809 leal (%r11,%r12,1),%r11d 3810 xorl %r14d,%r13d 3811 movl %eax,%r15d 3812 rorxl $22,%eax,%r12d 3813 leal (%r11,%r13,1),%r11d 3814 xorl %ebx,%r15d 3815 rorxl $13,%eax,%r14d 3816 rorxl $2,%eax,%r13d 3817 leal (%rdx,%r11,1),%edx 3818 andl %r15d,%esi 3819 vaesenc %xmm10,%xmm9,%xmm9 3820 vmovdqu 128-128(%rdi),%xmm10 3821 xorl %r12d,%r14d 3822 xorl %ebx,%esi 3823 xorl %r13d,%r14d 3824 leal (%r11,%rsi,1),%r11d 3825 movl %r8d,%r12d 3826 addl 4+16(%rbp),%r10d 3827 andl %edx,%r12d 3828 rorxl $25,%edx,%r13d 3829 rorxl $11,%edx,%esi 3830 leal (%r11,%r14,1),%r11d 3831 leal (%r10,%r12,1),%r10d 3832 andnl %r9d,%edx,%r12d 3833 xorl %esi,%r13d 3834 rorxl $6,%edx,%r14d 3835 leal (%r10,%r12,1),%r10d 3836 xorl %r14d,%r13d 3837 movl %r11d,%esi 3838 rorxl $22,%r11d,%r12d 3839 leal (%r10,%r13,1),%r10d 3840 xorl %eax,%esi 3841 rorxl $13,%r11d,%r14d 3842 rorxl $2,%r11d,%r13d 3843 leal (%rcx,%r10,1),%ecx 3844 andl %esi,%r15d 3845 vaesenc %xmm10,%xmm9,%xmm9 3846 vmovdqu 144-128(%rdi),%xmm10 3847 xorl %r12d,%r14d 3848 xorl %eax,%r15d 3849 xorl %r13d,%r14d 3850 leal (%r10,%r15,1),%r10d 3851 movl %edx,%r12d 3852 addl 8+16(%rbp),%r9d 3853 andl %ecx,%r12d 3854 rorxl $25,%ecx,%r13d 3855 rorxl $11,%ecx,%r15d 3856 leal (%r10,%r14,1),%r10d 3857 leal (%r9,%r12,1),%r9d 3858 andnl %r8d,%ecx,%r12d 3859 xorl %r15d,%r13d 3860 rorxl $6,%ecx,%r14d 3861 leal (%r9,%r12,1),%r9d 3862 xorl %r14d,%r13d 3863 movl %r10d,%r15d 3864 rorxl $22,%r10d,%r12d 3865 leal (%r9,%r13,1),%r9d 3866 xorl %r11d,%r15d 3867 rorxl $13,%r10d,%r14d 3868 rorxl $2,%r10d,%r13d 3869 leal (%rbx,%r9,1),%ebx 3870 andl %r15d,%esi 3871 vaesenc %xmm10,%xmm9,%xmm9 3872 vmovdqu 160-128(%rdi),%xmm10 3873 xorl %r12d,%r14d 3874 xorl %r11d,%esi 3875 xorl %r13d,%r14d 3876 leal (%r9,%rsi,1),%r9d 3877 movl %ecx,%r12d 3878 addl 12+16(%rbp),%r8d 3879 andl %ebx,%r12d 3880 rorxl $25,%ebx,%r13d 3881 rorxl $11,%ebx,%esi 3882 leal (%r9,%r14,1),%r9d 3883 leal (%r8,%r12,1),%r8d 3884 andnl %edx,%ebx,%r12d 3885 xorl %esi,%r13d 3886 rorxl $6,%ebx,%r14d 3887 leal (%r8,%r12,1),%r8d 3888 xorl %r14d,%r13d 3889 movl %r9d,%esi 3890 rorxl $22,%r9d,%r12d 3891 leal (%r8,%r13,1),%r8d 3892 xorl %r10d,%esi 3893 rorxl $13,%r9d,%r14d 3894 rorxl $2,%r9d,%r13d 3895 leal (%rax,%r8,1),%eax 3896 andl %esi,%r15d 3897 vaesenclast %xmm10,%xmm9,%xmm11 3898 vaesenc %xmm10,%xmm9,%xmm9 3899 vmovdqu 176-128(%rdi),%xmm10 3900 xorl %r12d,%r14d 3901 xorl %r10d,%r15d 3902 xorl %r13d,%r14d 3903 leal (%r8,%r15,1),%r8d 3904 movl %ebx,%r12d 3905 addl 32+16(%rbp),%edx 3906 andl %eax,%r12d 3907 rorxl $25,%eax,%r13d 3908 rorxl $11,%eax,%r15d 3909 leal (%r8,%r14,1),%r8d 3910 leal (%rdx,%r12,1),%edx 3911 andnl %ecx,%eax,%r12d 3912 xorl %r15d,%r13d 3913 rorxl $6,%eax,%r14d 3914 leal (%rdx,%r12,1),%edx 3915 xorl %r14d,%r13d 3916 movl %r8d,%r15d 3917 rorxl $22,%r8d,%r12d 3918 leal (%rdx,%r13,1),%edx 3919 xorl %r9d,%r15d 3920 rorxl $13,%r8d,%r14d 3921 rorxl $2,%r8d,%r13d 3922 leal (%r11,%rdx,1),%r11d 3923 andl %r15d,%esi 3924 vpand %xmm12,%xmm11,%xmm8 3925 vaesenc %xmm10,%xmm9,%xmm9 3926 vmovdqu 192-128(%rdi),%xmm10 3927 xorl %r12d,%r14d 3928 xorl %r9d,%esi 3929 xorl %r13d,%r14d 3930 leal (%rdx,%rsi,1),%edx 3931 movl %eax,%r12d 3932 addl 36+16(%rbp),%ecx 3933 andl %r11d,%r12d 3934 rorxl $25,%r11d,%r13d 3935 rorxl $11,%r11d,%esi 3936 leal (%rdx,%r14,1),%edx 3937 leal (%rcx,%r12,1),%ecx 3938 andnl %ebx,%r11d,%r12d 3939 xorl %esi,%r13d 3940 rorxl $6,%r11d,%r14d 3941 leal (%rcx,%r12,1),%ecx 3942 xorl %r14d,%r13d 3943 movl %edx,%esi 3944 rorxl $22,%edx,%r12d 3945 leal (%rcx,%r13,1),%ecx 3946 xorl %r8d,%esi 3947 rorxl $13,%edx,%r14d 3948 rorxl $2,%edx,%r13d 3949 leal (%r10,%rcx,1),%r10d 3950 andl %esi,%r15d 3951 vaesenclast %xmm10,%xmm9,%xmm11 3952 vaesenc %xmm10,%xmm9,%xmm9 3953 vmovdqu 208-128(%rdi),%xmm10 3954 xorl %r12d,%r14d 3955 xorl %r8d,%r15d 3956 xorl %r13d,%r14d 3957 leal (%rcx,%r15,1),%ecx 3958 movl %r11d,%r12d 3959 addl 40+16(%rbp),%ebx 3960 andl %r10d,%r12d 3961 rorxl $25,%r10d,%r13d 3962 rorxl $11,%r10d,%r15d 3963 leal (%rcx,%r14,1),%ecx 3964 leal (%rbx,%r12,1),%ebx 3965 andnl %eax,%r10d,%r12d 3966 xorl %r15d,%r13d 3967 rorxl $6,%r10d,%r14d 3968 leal (%rbx,%r12,1),%ebx 3969 xorl %r14d,%r13d 3970 movl %ecx,%r15d 3971 rorxl $22,%ecx,%r12d 3972 leal (%rbx,%r13,1),%ebx 3973 xorl %edx,%r15d 3974 rorxl $13,%ecx,%r14d 3975 rorxl $2,%ecx,%r13d 3976 leal (%r9,%rbx,1),%r9d 3977 andl %r15d,%esi 3978 vpand %xmm13,%xmm11,%xmm11 3979 vaesenc %xmm10,%xmm9,%xmm9 3980 vmovdqu 224-128(%rdi),%xmm10 3981 xorl %r12d,%r14d 3982 xorl %edx,%esi 3983 xorl %r13d,%r14d 3984 leal (%rbx,%rsi,1),%ebx 3985 movl %r10d,%r12d 3986 addl 44+16(%rbp),%eax 3987 andl %r9d,%r12d 3988 rorxl $25,%r9d,%r13d 3989 rorxl $11,%r9d,%esi 3990 leal (%rbx,%r14,1),%ebx 3991 leal (%rax,%r12,1),%eax 3992 andnl %r11d,%r9d,%r12d 3993 xorl %esi,%r13d 3994 rorxl $6,%r9d,%r14d 3995 leal (%rax,%r12,1),%eax 3996 xorl %r14d,%r13d 3997 movl %ebx,%esi 3998 rorxl $22,%ebx,%r12d 3999 leal (%rax,%r13,1),%eax 4000 xorl %ecx,%esi 4001 rorxl $13,%ebx,%r14d 4002 rorxl $2,%ebx,%r13d 4003 leal (%r8,%rax,1),%r8d 4004 andl %esi,%r15d 4005 vpor %xmm11,%xmm8,%xmm8 4006 vaesenclast %xmm10,%xmm9,%xmm11 4007 vmovdqu 0-128(%rdi),%xmm10 4008 xorl %r12d,%r14d 4009 xorl %ecx,%r15d 4010 xorl %r13d,%r14d 4011 leal (%rax,%r15,1),%eax 4012 movl %r9d,%r12d 4013 vmovq %xmm15,%r13 4014 vpextrq $1,%xmm15,%r15 4015 vpand %xmm14,%xmm11,%xmm11 4016 vpor %xmm11,%xmm8,%xmm8 4017 leaq -64(%rbp),%rbp 4018 vmovdqu %xmm8,(%r15,%r13,1) 4019 leaq 16(%r13),%r13 4020 cmpq %rsp,%rbp 4021 jae .Lower_avx2 4022 4023 movq 552(%rsp),%r15 4024 leaq 64(%r13),%r13 4025 movq 560(%rsp),%rsi 4026 addl %r14d,%eax 4027 leaq 448(%rsp),%rsp 4028 4029 addl 0(%r15),%eax 4030 addl 4(%r15),%ebx 4031 addl 8(%r15),%ecx 4032 addl 12(%r15),%edx 4033 addl 16(%r15),%r8d 4034 addl 20(%r15),%r9d 4035 addl 24(%r15),%r10d 4036 leaq (%rsi,%r13,1),%r12 4037 addl 28(%r15),%r11d 4038 4039 cmpq 64+16(%rsp),%r13 4040 4041 movl %eax,0(%r15) 4042 cmoveq %rsp,%r12 4043 movl %ebx,4(%r15) 4044 movl %ecx,8(%r15) 4045 movl %edx,12(%r15) 4046 movl %r8d,16(%r15) 4047 movl %r9d,20(%r15) 4048 movl %r10d,24(%r15) 4049 movl %r11d,28(%r15) 4050 4051 jbe .Loop_avx2 4052 leaq (%rsp),%rbp 4053 4054 4055.cfi_escape 0x0f,0x06,0x76,0xf8,0x00,0x06,0x23,0x08 4056 4057.Ldone_avx2: 4058 movq 64+32(%rbp),%r8 4059 movq 64+56(%rbp),%rsi 4060.cfi_def_cfa %rsi,8 4061 vmovdqu %xmm8,(%r8) 4062 vzeroall 4063 movq -48(%rsi),%r15 4064.cfi_restore %r15 4065 movq -40(%rsi),%r14 4066.cfi_restore %r14 4067 movq -32(%rsi),%r13 4068.cfi_restore %r13 4069 movq -24(%rsi),%r12 4070.cfi_restore %r12 4071 movq -16(%rsi),%rbp 4072.cfi_restore %rbp 4073 movq -8(%rsi),%rbx 4074.cfi_restore %rbx 4075 leaq (%rsi),%rsp 4076.cfi_def_cfa_register %rsp 4077.Lepilogue_avx2: 4078 .byte 0xf3,0xc3 4079.cfi_endproc 4080.size aesni_cbc_sha256_enc_avx2,.-aesni_cbc_sha256_enc_avx2 4081.type aesni_cbc_sha256_enc_shaext,@function 4082.align 32 4083aesni_cbc_sha256_enc_shaext: 4084.cfi_startproc 4085 movq 8(%rsp),%r10 4086 leaq K256+128(%rip),%rax 4087 movdqu (%r9),%xmm1 4088 movdqu 16(%r9),%xmm2 4089 movdqa 512-128(%rax),%xmm3 4090 4091 movl 240(%rcx),%r11d 4092 subq %rdi,%rsi 4093 movups (%rcx),%xmm15 4094 movups (%r8),%xmm6 4095 movups 16(%rcx),%xmm4 4096 leaq 112(%rcx),%rcx 4097 4098 pshufd $0x1b,%xmm1,%xmm0 4099 pshufd $0xb1,%xmm1,%xmm1 4100 pshufd $0x1b,%xmm2,%xmm2 4101 movdqa %xmm3,%xmm7 4102.byte 102,15,58,15,202,8 4103 punpcklqdq %xmm0,%xmm2 4104 4105 jmp .Loop_shaext 4106 4107.align 16 4108.Loop_shaext: 4109 movdqu (%r10),%xmm10 4110 movdqu 16(%r10),%xmm11 4111 movdqu 32(%r10),%xmm12 4112.byte 102,68,15,56,0,211 4113 movdqu 48(%r10),%xmm13 4114 4115 movdqa 0-128(%rax),%xmm0 4116 paddd %xmm10,%xmm0 4117.byte 102,68,15,56,0,219 4118 movdqa %xmm2,%xmm9 4119 movdqa %xmm1,%xmm8 4120 movups 0(%rdi),%xmm14 4121 xorps %xmm15,%xmm14 4122 xorps %xmm14,%xmm6 4123 movups -80(%rcx),%xmm5 4124 aesenc %xmm4,%xmm6 4125.byte 15,56,203,209 4126 pshufd $0x0e,%xmm0,%xmm0 4127 movups -64(%rcx),%xmm4 4128 aesenc %xmm5,%xmm6 4129.byte 15,56,203,202 4130 4131 movdqa 32-128(%rax),%xmm0 4132 paddd %xmm11,%xmm0 4133.byte 102,68,15,56,0,227 4134 leaq 64(%r10),%r10 4135 movups -48(%rcx),%xmm5 4136 aesenc %xmm4,%xmm6 4137.byte 15,56,203,209 4138 pshufd $0x0e,%xmm0,%xmm0 4139 movups -32(%rcx),%xmm4 4140 aesenc %xmm5,%xmm6 4141.byte 15,56,203,202 4142 4143 movdqa 64-128(%rax),%xmm0 4144 paddd %xmm12,%xmm0 4145.byte 102,68,15,56,0,235 4146.byte 69,15,56,204,211 4147 movups -16(%rcx),%xmm5 4148 aesenc %xmm4,%xmm6 4149.byte 15,56,203,209 4150 pshufd $0x0e,%xmm0,%xmm0 4151 movdqa %xmm13,%xmm3 4152.byte 102,65,15,58,15,220,4 4153 paddd %xmm3,%xmm10 4154 movups 0(%rcx),%xmm4 4155 aesenc %xmm5,%xmm6 4156.byte 15,56,203,202 4157 4158 movdqa 96-128(%rax),%xmm0 4159 paddd %xmm13,%xmm0 4160.byte 69,15,56,205,213 4161.byte 69,15,56,204,220 4162 movups 16(%rcx),%xmm5 4163 aesenc %xmm4,%xmm6 4164.byte 15,56,203,209 4165 pshufd $0x0e,%xmm0,%xmm0 4166 movups 32(%rcx),%xmm4 4167 aesenc %xmm5,%xmm6 4168 movdqa %xmm10,%xmm3 4169.byte 102,65,15,58,15,221,4 4170 paddd %xmm3,%xmm11 4171.byte 15,56,203,202 4172 movdqa 128-128(%rax),%xmm0 4173 paddd %xmm10,%xmm0 4174.byte 69,15,56,205,218 4175.byte 69,15,56,204,229 4176 movups 48(%rcx),%xmm5 4177 aesenc %xmm4,%xmm6 4178.byte 15,56,203,209 4179 pshufd $0x0e,%xmm0,%xmm0 4180 movdqa %xmm11,%xmm3 4181.byte 102,65,15,58,15,218,4 4182 paddd %xmm3,%xmm12 4183 cmpl $11,%r11d 4184 jb .Laesenclast1 4185 movups 64(%rcx),%xmm4 4186 aesenc %xmm5,%xmm6 4187 movups 80(%rcx),%xmm5 4188 aesenc %xmm4,%xmm6 4189 je .Laesenclast1 4190 movups 96(%rcx),%xmm4 4191 aesenc %xmm5,%xmm6 4192 movups 112(%rcx),%xmm5 4193 aesenc %xmm4,%xmm6 4194.Laesenclast1: 4195 aesenclast %xmm5,%xmm6 4196 movups 16-112(%rcx),%xmm4 4197 nop 4198.byte 15,56,203,202 4199 movups 16(%rdi),%xmm14 4200 xorps %xmm15,%xmm14 4201 movups %xmm6,0(%rsi,%rdi,1) 4202 xorps %xmm14,%xmm6 4203 movups -80(%rcx),%xmm5 4204 aesenc %xmm4,%xmm6 4205 movdqa 160-128(%rax),%xmm0 4206 paddd %xmm11,%xmm0 4207.byte 69,15,56,205,227 4208.byte 69,15,56,204,234 4209 movups -64(%rcx),%xmm4 4210 aesenc %xmm5,%xmm6 4211.byte 15,56,203,209 4212 pshufd $0x0e,%xmm0,%xmm0 4213 movdqa %xmm12,%xmm3 4214.byte 102,65,15,58,15,219,4 4215 paddd %xmm3,%xmm13 4216 movups -48(%rcx),%xmm5 4217 aesenc %xmm4,%xmm6 4218.byte 15,56,203,202 4219 movdqa 192-128(%rax),%xmm0 4220 paddd %xmm12,%xmm0 4221.byte 69,15,56,205,236 4222.byte 69,15,56,204,211 4223 movups -32(%rcx),%xmm4 4224 aesenc %xmm5,%xmm6 4225.byte 15,56,203,209 4226 pshufd $0x0e,%xmm0,%xmm0 4227 movdqa %xmm13,%xmm3 4228.byte 102,65,15,58,15,220,4 4229 paddd %xmm3,%xmm10 4230 movups -16(%rcx),%xmm5 4231 aesenc %xmm4,%xmm6 4232.byte 15,56,203,202 4233 movdqa 224-128(%rax),%xmm0 4234 paddd %xmm13,%xmm0 4235.byte 69,15,56,205,213 4236.byte 69,15,56,204,220 4237 movups 0(%rcx),%xmm4 4238 aesenc %xmm5,%xmm6 4239.byte 15,56,203,209 4240 pshufd $0x0e,%xmm0,%xmm0 4241 movdqa %xmm10,%xmm3 4242.byte 102,65,15,58,15,221,4 4243 paddd %xmm3,%xmm11 4244 movups 16(%rcx),%xmm5 4245 aesenc %xmm4,%xmm6 4246.byte 15,56,203,202 4247 movdqa 256-128(%rax),%xmm0 4248 paddd %xmm10,%xmm0 4249.byte 69,15,56,205,218 4250.byte 69,15,56,204,229 4251 movups 32(%rcx),%xmm4 4252 aesenc %xmm5,%xmm6 4253.byte 15,56,203,209 4254 pshufd $0x0e,%xmm0,%xmm0 4255 movdqa %xmm11,%xmm3 4256.byte 102,65,15,58,15,218,4 4257 paddd %xmm3,%xmm12 4258 movups 48(%rcx),%xmm5 4259 aesenc %xmm4,%xmm6 4260 cmpl $11,%r11d 4261 jb .Laesenclast2 4262 movups 64(%rcx),%xmm4 4263 aesenc %xmm5,%xmm6 4264 movups 80(%rcx),%xmm5 4265 aesenc %xmm4,%xmm6 4266 je .Laesenclast2 4267 movups 96(%rcx),%xmm4 4268 aesenc %xmm5,%xmm6 4269 movups 112(%rcx),%xmm5 4270 aesenc %xmm4,%xmm6 4271.Laesenclast2: 4272 aesenclast %xmm5,%xmm6 4273 movups 16-112(%rcx),%xmm4 4274 nop 4275.byte 15,56,203,202 4276 movups 32(%rdi),%xmm14 4277 xorps %xmm15,%xmm14 4278 movups %xmm6,16(%rsi,%rdi,1) 4279 xorps %xmm14,%xmm6 4280 movups -80(%rcx),%xmm5 4281 aesenc %xmm4,%xmm6 4282 movdqa 288-128(%rax),%xmm0 4283 paddd %xmm11,%xmm0 4284.byte 69,15,56,205,227 4285.byte 69,15,56,204,234 4286 movups -64(%rcx),%xmm4 4287 aesenc %xmm5,%xmm6 4288.byte 15,56,203,209 4289 pshufd $0x0e,%xmm0,%xmm0 4290 movdqa %xmm12,%xmm3 4291.byte 102,65,15,58,15,219,4 4292 paddd %xmm3,%xmm13 4293 movups -48(%rcx),%xmm5 4294 aesenc %xmm4,%xmm6 4295.byte 15,56,203,202 4296 movdqa 320-128(%rax),%xmm0 4297 paddd %xmm12,%xmm0 4298.byte 69,15,56,205,236 4299.byte 69,15,56,204,211 4300 movups -32(%rcx),%xmm4 4301 aesenc %xmm5,%xmm6 4302.byte 15,56,203,209 4303 pshufd $0x0e,%xmm0,%xmm0 4304 movdqa %xmm13,%xmm3 4305.byte 102,65,15,58,15,220,4 4306 paddd %xmm3,%xmm10 4307 movups -16(%rcx),%xmm5 4308 aesenc %xmm4,%xmm6 4309.byte 15,56,203,202 4310 movdqa 352-128(%rax),%xmm0 4311 paddd %xmm13,%xmm0 4312.byte 69,15,56,205,213 4313.byte 69,15,56,204,220 4314 movups 0(%rcx),%xmm4 4315 aesenc %xmm5,%xmm6 4316.byte 15,56,203,209 4317 pshufd $0x0e,%xmm0,%xmm0 4318 movdqa %xmm10,%xmm3 4319.byte 102,65,15,58,15,221,4 4320 paddd %xmm3,%xmm11 4321 movups 16(%rcx),%xmm5 4322 aesenc %xmm4,%xmm6 4323.byte 15,56,203,202 4324 movdqa 384-128(%rax),%xmm0 4325 paddd %xmm10,%xmm0 4326.byte 69,15,56,205,218 4327.byte 69,15,56,204,229 4328 movups 32(%rcx),%xmm4 4329 aesenc %xmm5,%xmm6 4330.byte 15,56,203,209 4331 pshufd $0x0e,%xmm0,%xmm0 4332 movdqa %xmm11,%xmm3 4333.byte 102,65,15,58,15,218,4 4334 paddd %xmm3,%xmm12 4335 movups 48(%rcx),%xmm5 4336 aesenc %xmm4,%xmm6 4337.byte 15,56,203,202 4338 movdqa 416-128(%rax),%xmm0 4339 paddd %xmm11,%xmm0 4340.byte 69,15,56,205,227 4341.byte 69,15,56,204,234 4342 cmpl $11,%r11d 4343 jb .Laesenclast3 4344 movups 64(%rcx),%xmm4 4345 aesenc %xmm5,%xmm6 4346 movups 80(%rcx),%xmm5 4347 aesenc %xmm4,%xmm6 4348 je .Laesenclast3 4349 movups 96(%rcx),%xmm4 4350 aesenc %xmm5,%xmm6 4351 movups 112(%rcx),%xmm5 4352 aesenc %xmm4,%xmm6 4353.Laesenclast3: 4354 aesenclast %xmm5,%xmm6 4355 movups 16-112(%rcx),%xmm4 4356 nop 4357.byte 15,56,203,209 4358 pshufd $0x0e,%xmm0,%xmm0 4359 movdqa %xmm12,%xmm3 4360.byte 102,65,15,58,15,219,4 4361 paddd %xmm3,%xmm13 4362 movups 48(%rdi),%xmm14 4363 xorps %xmm15,%xmm14 4364 movups %xmm6,32(%rsi,%rdi,1) 4365 xorps %xmm14,%xmm6 4366 movups -80(%rcx),%xmm5 4367 aesenc %xmm4,%xmm6 4368 movups -64(%rcx),%xmm4 4369 aesenc %xmm5,%xmm6 4370.byte 15,56,203,202 4371 4372 movdqa 448-128(%rax),%xmm0 4373 paddd %xmm12,%xmm0 4374.byte 69,15,56,205,236 4375 movdqa %xmm7,%xmm3 4376 movups -48(%rcx),%xmm5 4377 aesenc %xmm4,%xmm6 4378.byte 15,56,203,209 4379 pshufd $0x0e,%xmm0,%xmm0 4380 movups -32(%rcx),%xmm4 4381 aesenc %xmm5,%xmm6 4382.byte 15,56,203,202 4383 4384 movdqa 480-128(%rax),%xmm0 4385 paddd %xmm13,%xmm0 4386 movups -16(%rcx),%xmm5 4387 aesenc %xmm4,%xmm6 4388 movups 0(%rcx),%xmm4 4389 aesenc %xmm5,%xmm6 4390.byte 15,56,203,209 4391 pshufd $0x0e,%xmm0,%xmm0 4392 movups 16(%rcx),%xmm5 4393 aesenc %xmm4,%xmm6 4394.byte 15,56,203,202 4395 4396 movups 32(%rcx),%xmm4 4397 aesenc %xmm5,%xmm6 4398 movups 48(%rcx),%xmm5 4399 aesenc %xmm4,%xmm6 4400 cmpl $11,%r11d 4401 jb .Laesenclast4 4402 movups 64(%rcx),%xmm4 4403 aesenc %xmm5,%xmm6 4404 movups 80(%rcx),%xmm5 4405 aesenc %xmm4,%xmm6 4406 je .Laesenclast4 4407 movups 96(%rcx),%xmm4 4408 aesenc %xmm5,%xmm6 4409 movups 112(%rcx),%xmm5 4410 aesenc %xmm4,%xmm6 4411.Laesenclast4: 4412 aesenclast %xmm5,%xmm6 4413 movups 16-112(%rcx),%xmm4 4414 nop 4415 4416 paddd %xmm9,%xmm2 4417 paddd %xmm8,%xmm1 4418 4419 decq %rdx 4420 movups %xmm6,48(%rsi,%rdi,1) 4421 leaq 64(%rdi),%rdi 4422 jnz .Loop_shaext 4423 4424 pshufd $0xb1,%xmm2,%xmm2 4425 pshufd $0x1b,%xmm1,%xmm3 4426 pshufd $0xb1,%xmm1,%xmm1 4427 punpckhqdq %xmm2,%xmm1 4428.byte 102,15,58,15,211,8 4429 4430 movups %xmm6,(%r8) 4431 movdqu %xmm1,(%r9) 4432 movdqu %xmm2,16(%r9) 4433 .byte 0xf3,0xc3 4434.cfi_endproc 4435.size aesni_cbc_sha256_enc_shaext,.-aesni_cbc_sha256_enc_shaext 4436