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