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