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