Home | History | Annotate | Download | only in asm
      1 .file	"sha512-586.s"
      2 .text
      3 .globl	sha512_block_data_order
      4 .type	sha512_block_data_order,@function
      5 .align	16
      6 sha512_block_data_order:
      7 .L_sha512_block_data_order_begin:
      8 	pushl	%ebp
      9 	pushl	%ebx
     10 	pushl	%esi
     11 	pushl	%edi
     12 	movl	20(%esp),%esi
     13 	movl	24(%esp),%edi
     14 	movl	28(%esp),%eax
     15 	movl	%esp,%ebx
     16 	call	.L000pic_point
     17 .L000pic_point:
     18 	popl	%ebp
     19 	leal	.L001K512-.L000pic_point(%ebp),%ebp
     20 	subl	$16,%esp
     21 	andl	$-64,%esp
     22 	shll	$7,%eax
     23 	addl	%edi,%eax
     24 	movl	%esi,(%esp)
     25 	movl	%edi,4(%esp)
     26 	movl	%eax,8(%esp)
     27 	movl	%ebx,12(%esp)
     28 .align	16
     29 .L002loop_x86:
     30 	movl	(%edi),%eax
     31 	movl	4(%edi),%ebx
     32 	movl	8(%edi),%ecx
     33 	movl	12(%edi),%edx
     34 	bswap	%eax
     35 	bswap	%ebx
     36 	bswap	%ecx
     37 	bswap	%edx
     38 	pushl	%eax
     39 	pushl	%ebx
     40 	pushl	%ecx
     41 	pushl	%edx
     42 	movl	16(%edi),%eax
     43 	movl	20(%edi),%ebx
     44 	movl	24(%edi),%ecx
     45 	movl	28(%edi),%edx
     46 	bswap	%eax
     47 	bswap	%ebx
     48 	bswap	%ecx
     49 	bswap	%edx
     50 	pushl	%eax
     51 	pushl	%ebx
     52 	pushl	%ecx
     53 	pushl	%edx
     54 	movl	32(%edi),%eax
     55 	movl	36(%edi),%ebx
     56 	movl	40(%edi),%ecx
     57 	movl	44(%edi),%edx
     58 	bswap	%eax
     59 	bswap	%ebx
     60 	bswap	%ecx
     61 	bswap	%edx
     62 	pushl	%eax
     63 	pushl	%ebx
     64 	pushl	%ecx
     65 	pushl	%edx
     66 	movl	48(%edi),%eax
     67 	movl	52(%edi),%ebx
     68 	movl	56(%edi),%ecx
     69 	movl	60(%edi),%edx
     70 	bswap	%eax
     71 	bswap	%ebx
     72 	bswap	%ecx
     73 	bswap	%edx
     74 	pushl	%eax
     75 	pushl	%ebx
     76 	pushl	%ecx
     77 	pushl	%edx
     78 	movl	64(%edi),%eax
     79 	movl	68(%edi),%ebx
     80 	movl	72(%edi),%ecx
     81 	movl	76(%edi),%edx
     82 	bswap	%eax
     83 	bswap	%ebx
     84 	bswap	%ecx
     85 	bswap	%edx
     86 	pushl	%eax
     87 	pushl	%ebx
     88 	pushl	%ecx
     89 	pushl	%edx
     90 	movl	80(%edi),%eax
     91 	movl	84(%edi),%ebx
     92 	movl	88(%edi),%ecx
     93 	movl	92(%edi),%edx
     94 	bswap	%eax
     95 	bswap	%ebx
     96 	bswap	%ecx
     97 	bswap	%edx
     98 	pushl	%eax
     99 	pushl	%ebx
    100 	pushl	%ecx
    101 	pushl	%edx
    102 	movl	96(%edi),%eax
    103 	movl	100(%edi),%ebx
    104 	movl	104(%edi),%ecx
    105 	movl	108(%edi),%edx
    106 	bswap	%eax
    107 	bswap	%ebx
    108 	bswap	%ecx
    109 	bswap	%edx
    110 	pushl	%eax
    111 	pushl	%ebx
    112 	pushl	%ecx
    113 	pushl	%edx
    114 	movl	112(%edi),%eax
    115 	movl	116(%edi),%ebx
    116 	movl	120(%edi),%ecx
    117 	movl	124(%edi),%edx
    118 	bswap	%eax
    119 	bswap	%ebx
    120 	bswap	%ecx
    121 	bswap	%edx
    122 	pushl	%eax
    123 	pushl	%ebx
    124 	pushl	%ecx
    125 	pushl	%edx
    126 	addl	$128,%edi
    127 	subl	$72,%esp
    128 	movl	%edi,204(%esp)
    129 	leal	8(%esp),%edi
    130 	movl	$16,%ecx
    131 .long	2784229001
    132 .align	16
    133 .L00300_15_x86:
    134 	movl	40(%esp),%ecx
    135 	movl	44(%esp),%edx
    136 	movl	%ecx,%esi
    137 	shrl	$9,%ecx
    138 	movl	%edx,%edi
    139 	shrl	$9,%edx
    140 	movl	%ecx,%ebx
    141 	shll	$14,%esi
    142 	movl	%edx,%eax
    143 	shll	$14,%edi
    144 	xorl	%esi,%ebx
    145 	shrl	$5,%ecx
    146 	xorl	%edi,%eax
    147 	shrl	$5,%edx
    148 	xorl	%ecx,%eax
    149 	shll	$4,%esi
    150 	xorl	%edx,%ebx
    151 	shll	$4,%edi
    152 	xorl	%esi,%ebx
    153 	shrl	$4,%ecx
    154 	xorl	%edi,%eax
    155 	shrl	$4,%edx
    156 	xorl	%ecx,%eax
    157 	shll	$5,%esi
    158 	xorl	%edx,%ebx
    159 	shll	$5,%edi
    160 	xorl	%esi,%eax
    161 	xorl	%edi,%ebx
    162 	movl	48(%esp),%ecx
    163 	movl	52(%esp),%edx
    164 	movl	56(%esp),%esi
    165 	movl	60(%esp),%edi
    166 	addl	64(%esp),%eax
    167 	adcl	68(%esp),%ebx
    168 	xorl	%esi,%ecx
    169 	xorl	%edi,%edx
    170 	andl	40(%esp),%ecx
    171 	andl	44(%esp),%edx
    172 	addl	192(%esp),%eax
    173 	adcl	196(%esp),%ebx
    174 	xorl	%esi,%ecx
    175 	xorl	%edi,%edx
    176 	movl	(%ebp),%esi
    177 	movl	4(%ebp),%edi
    178 	addl	%ecx,%eax
    179 	adcl	%edx,%ebx
    180 	movl	32(%esp),%ecx
    181 	movl	36(%esp),%edx
    182 	addl	%esi,%eax
    183 	adcl	%edi,%ebx
    184 	movl	%eax,(%esp)
    185 	movl	%ebx,4(%esp)
    186 	addl	%ecx,%eax
    187 	adcl	%edx,%ebx
    188 	movl	8(%esp),%ecx
    189 	movl	12(%esp),%edx
    190 	movl	%eax,32(%esp)
    191 	movl	%ebx,36(%esp)
    192 	movl	%ecx,%esi
    193 	shrl	$2,%ecx
    194 	movl	%edx,%edi
    195 	shrl	$2,%edx
    196 	movl	%ecx,%ebx
    197 	shll	$4,%esi
    198 	movl	%edx,%eax
    199 	shll	$4,%edi
    200 	xorl	%esi,%ebx
    201 	shrl	$5,%ecx
    202 	xorl	%edi,%eax
    203 	shrl	$5,%edx
    204 	xorl	%ecx,%ebx
    205 	shll	$21,%esi
    206 	xorl	%edx,%eax
    207 	shll	$21,%edi
    208 	xorl	%esi,%eax
    209 	shrl	$21,%ecx
    210 	xorl	%edi,%ebx
    211 	shrl	$21,%edx
    212 	xorl	%ecx,%eax
    213 	shll	$5,%esi
    214 	xorl	%edx,%ebx
    215 	shll	$5,%edi
    216 	xorl	%esi,%eax
    217 	xorl	%edi,%ebx
    218 	movl	8(%esp),%ecx
    219 	movl	12(%esp),%edx
    220 	movl	16(%esp),%esi
    221 	movl	20(%esp),%edi
    222 	addl	(%esp),%eax
    223 	adcl	4(%esp),%ebx
    224 	orl	%esi,%ecx
    225 	orl	%edi,%edx
    226 	andl	24(%esp),%ecx
    227 	andl	28(%esp),%edx
    228 	andl	8(%esp),%esi
    229 	andl	12(%esp),%edi
    230 	orl	%esi,%ecx
    231 	orl	%edi,%edx
    232 	addl	%ecx,%eax
    233 	adcl	%edx,%ebx
    234 	movl	%eax,(%esp)
    235 	movl	%ebx,4(%esp)
    236 	movb	(%ebp),%dl
    237 	subl	$8,%esp
    238 	leal	8(%ebp),%ebp
    239 	cmpb	$148,%dl
    240 	jne	.L00300_15_x86
    241 .align	16
    242 .L00416_79_x86:
    243 	movl	312(%esp),%ecx
    244 	movl	316(%esp),%edx
    245 	movl	%ecx,%esi
    246 	shrl	$1,%ecx
    247 	movl	%edx,%edi
    248 	shrl	$1,%edx
    249 	movl	%ecx,%eax
    250 	shll	$24,%esi
    251 	movl	%edx,%ebx
    252 	shll	$24,%edi
    253 	xorl	%esi,%ebx
    254 	shrl	$6,%ecx
    255 	xorl	%edi,%eax
    256 	shrl	$6,%edx
    257 	xorl	%ecx,%eax
    258 	shll	$7,%esi
    259 	xorl	%edx,%ebx
    260 	shll	$1,%edi
    261 	xorl	%esi,%ebx
    262 	shrl	$1,%ecx
    263 	xorl	%edi,%eax
    264 	shrl	$1,%edx
    265 	xorl	%ecx,%eax
    266 	shll	$6,%edi
    267 	xorl	%edx,%ebx
    268 	xorl	%edi,%eax
    269 	movl	%eax,(%esp)
    270 	movl	%ebx,4(%esp)
    271 	movl	208(%esp),%ecx
    272 	movl	212(%esp),%edx
    273 	movl	%ecx,%esi
    274 	shrl	$6,%ecx
    275 	movl	%edx,%edi
    276 	shrl	$6,%edx
    277 	movl	%ecx,%eax
    278 	shll	$3,%esi
    279 	movl	%edx,%ebx
    280 	shll	$3,%edi
    281 	xorl	%esi,%eax
    282 	shrl	$13,%ecx
    283 	xorl	%edi,%ebx
    284 	shrl	$13,%edx
    285 	xorl	%ecx,%eax
    286 	shll	$10,%esi
    287 	xorl	%edx,%ebx
    288 	shll	$10,%edi
    289 	xorl	%esi,%ebx
    290 	shrl	$10,%ecx
    291 	xorl	%edi,%eax
    292 	shrl	$10,%edx
    293 	xorl	%ecx,%ebx
    294 	shll	$13,%edi
    295 	xorl	%edx,%eax
    296 	xorl	%edi,%eax
    297 	movl	320(%esp),%ecx
    298 	movl	324(%esp),%edx
    299 	addl	(%esp),%eax
    300 	adcl	4(%esp),%ebx
    301 	movl	248(%esp),%esi
    302 	movl	252(%esp),%edi
    303 	addl	%ecx,%eax
    304 	adcl	%edx,%ebx
    305 	addl	%esi,%eax
    306 	adcl	%edi,%ebx
    307 	movl	%eax,192(%esp)
    308 	movl	%ebx,196(%esp)
    309 	movl	40(%esp),%ecx
    310 	movl	44(%esp),%edx
    311 	movl	%ecx,%esi
    312 	shrl	$9,%ecx
    313 	movl	%edx,%edi
    314 	shrl	$9,%edx
    315 	movl	%ecx,%ebx
    316 	shll	$14,%esi
    317 	movl	%edx,%eax
    318 	shll	$14,%edi
    319 	xorl	%esi,%ebx
    320 	shrl	$5,%ecx
    321 	xorl	%edi,%eax
    322 	shrl	$5,%edx
    323 	xorl	%ecx,%eax
    324 	shll	$4,%esi
    325 	xorl	%edx,%ebx
    326 	shll	$4,%edi
    327 	xorl	%esi,%ebx
    328 	shrl	$4,%ecx
    329 	xorl	%edi,%eax
    330 	shrl	$4,%edx
    331 	xorl	%ecx,%eax
    332 	shll	$5,%esi
    333 	xorl	%edx,%ebx
    334 	shll	$5,%edi
    335 	xorl	%esi,%eax
    336 	xorl	%edi,%ebx
    337 	movl	48(%esp),%ecx
    338 	movl	52(%esp),%edx
    339 	movl	56(%esp),%esi
    340 	movl	60(%esp),%edi
    341 	addl	64(%esp),%eax
    342 	adcl	68(%esp),%ebx
    343 	xorl	%esi,%ecx
    344 	xorl	%edi,%edx
    345 	andl	40(%esp),%ecx
    346 	andl	44(%esp),%edx
    347 	addl	192(%esp),%eax
    348 	adcl	196(%esp),%ebx
    349 	xorl	%esi,%ecx
    350 	xorl	%edi,%edx
    351 	movl	(%ebp),%esi
    352 	movl	4(%ebp),%edi
    353 	addl	%ecx,%eax
    354 	adcl	%edx,%ebx
    355 	movl	32(%esp),%ecx
    356 	movl	36(%esp),%edx
    357 	addl	%esi,%eax
    358 	adcl	%edi,%ebx
    359 	movl	%eax,(%esp)
    360 	movl	%ebx,4(%esp)
    361 	addl	%ecx,%eax
    362 	adcl	%edx,%ebx
    363 	movl	8(%esp),%ecx
    364 	movl	12(%esp),%edx
    365 	movl	%eax,32(%esp)
    366 	movl	%ebx,36(%esp)
    367 	movl	%ecx,%esi
    368 	shrl	$2,%ecx
    369 	movl	%edx,%edi
    370 	shrl	$2,%edx
    371 	movl	%ecx,%ebx
    372 	shll	$4,%esi
    373 	movl	%edx,%eax
    374 	shll	$4,%edi
    375 	xorl	%esi,%ebx
    376 	shrl	$5,%ecx
    377 	xorl	%edi,%eax
    378 	shrl	$5,%edx
    379 	xorl	%ecx,%ebx
    380 	shll	$21,%esi
    381 	xorl	%edx,%eax
    382 	shll	$21,%edi
    383 	xorl	%esi,%eax
    384 	shrl	$21,%ecx
    385 	xorl	%edi,%ebx
    386 	shrl	$21,%edx
    387 	xorl	%ecx,%eax
    388 	shll	$5,%esi
    389 	xorl	%edx,%ebx
    390 	shll	$5,%edi
    391 	xorl	%esi,%eax
    392 	xorl	%edi,%ebx
    393 	movl	8(%esp),%ecx
    394 	movl	12(%esp),%edx
    395 	movl	16(%esp),%esi
    396 	movl	20(%esp),%edi
    397 	addl	(%esp),%eax
    398 	adcl	4(%esp),%ebx
    399 	orl	%esi,%ecx
    400 	orl	%edi,%edx
    401 	andl	24(%esp),%ecx
    402 	andl	28(%esp),%edx
    403 	andl	8(%esp),%esi
    404 	andl	12(%esp),%edi
    405 	orl	%esi,%ecx
    406 	orl	%edi,%edx
    407 	addl	%ecx,%eax
    408 	adcl	%edx,%ebx
    409 	movl	%eax,(%esp)
    410 	movl	%ebx,4(%esp)
    411 	movb	(%ebp),%dl
    412 	subl	$8,%esp
    413 	leal	8(%ebp),%ebp
    414 	cmpb	$23,%dl
    415 	jne	.L00416_79_x86
    416 	movl	840(%esp),%esi
    417 	movl	844(%esp),%edi
    418 	movl	(%esi),%eax
    419 	movl	4(%esi),%ebx
    420 	movl	8(%esi),%ecx
    421 	movl	12(%esi),%edx
    422 	addl	8(%esp),%eax
    423 	adcl	12(%esp),%ebx
    424 	movl	%eax,(%esi)
    425 	movl	%ebx,4(%esi)
    426 	addl	16(%esp),%ecx
    427 	adcl	20(%esp),%edx
    428 	movl	%ecx,8(%esi)
    429 	movl	%edx,12(%esi)
    430 	movl	16(%esi),%eax
    431 	movl	20(%esi),%ebx
    432 	movl	24(%esi),%ecx
    433 	movl	28(%esi),%edx
    434 	addl	24(%esp),%eax
    435 	adcl	28(%esp),%ebx
    436 	movl	%eax,16(%esi)
    437 	movl	%ebx,20(%esi)
    438 	addl	32(%esp),%ecx
    439 	adcl	36(%esp),%edx
    440 	movl	%ecx,24(%esi)
    441 	movl	%edx,28(%esi)
    442 	movl	32(%esi),%eax
    443 	movl	36(%esi),%ebx
    444 	movl	40(%esi),%ecx
    445 	movl	44(%esi),%edx
    446 	addl	40(%esp),%eax
    447 	adcl	44(%esp),%ebx
    448 	movl	%eax,32(%esi)
    449 	movl	%ebx,36(%esi)
    450 	addl	48(%esp),%ecx
    451 	adcl	52(%esp),%edx
    452 	movl	%ecx,40(%esi)
    453 	movl	%edx,44(%esi)
    454 	movl	48(%esi),%eax
    455 	movl	52(%esi),%ebx
    456 	movl	56(%esi),%ecx
    457 	movl	60(%esi),%edx
    458 	addl	56(%esp),%eax
    459 	adcl	60(%esp),%ebx
    460 	movl	%eax,48(%esi)
    461 	movl	%ebx,52(%esi)
    462 	addl	64(%esp),%ecx
    463 	adcl	68(%esp),%edx
    464 	movl	%ecx,56(%esi)
    465 	movl	%edx,60(%esi)
    466 	addl	$840,%esp
    467 	subl	$640,%ebp
    468 	cmpl	8(%esp),%edi
    469 	jb	.L002loop_x86
    470 	movl	12(%esp),%esp
    471 	popl	%edi
    472 	popl	%esi
    473 	popl	%ebx
    474 	popl	%ebp
    475 	ret
    476 .align	64
    477 .L001K512:
    478 .long	3609767458,1116352408
    479 .long	602891725,1899447441
    480 .long	3964484399,3049323471
    481 .long	2173295548,3921009573
    482 .long	4081628472,961987163
    483 .long	3053834265,1508970993
    484 .long	2937671579,2453635748
    485 .long	3664609560,2870763221
    486 .long	2734883394,3624381080
    487 .long	1164996542,310598401
    488 .long	1323610764,607225278
    489 .long	3590304994,1426881987
    490 .long	4068182383,1925078388
    491 .long	991336113,2162078206
    492 .long	633803317,2614888103
    493 .long	3479774868,3248222580
    494 .long	2666613458,3835390401
    495 .long	944711139,4022224774
    496 .long	2341262773,264347078
    497 .long	2007800933,604807628
    498 .long	1495990901,770255983
    499 .long	1856431235,1249150122
    500 .long	3175218132,1555081692
    501 .long	2198950837,1996064986
    502 .long	3999719339,2554220882
    503 .long	766784016,2821834349
    504 .long	2566594879,2952996808
    505 .long	3203337956,3210313671
    506 .long	1034457026,3336571891
    507 .long	2466948901,3584528711
    508 .long	3758326383,113926993
    509 .long	168717936,338241895
    510 .long	1188179964,666307205
    511 .long	1546045734,773529912
    512 .long	1522805485,1294757372
    513 .long	2643833823,1396182291
    514 .long	2343527390,1695183700
    515 .long	1014477480,1986661051
    516 .long	1206759142,2177026350
    517 .long	344077627,2456956037
    518 .long	1290863460,2730485921
    519 .long	3158454273,2820302411
    520 .long	3505952657,3259730800
    521 .long	106217008,3345764771
    522 .long	3606008344,3516065817
    523 .long	1432725776,3600352804
    524 .long	1467031594,4094571909
    525 .long	851169720,275423344
    526 .long	3100823752,430227734
    527 .long	1363258195,506948616
    528 .long	3750685593,659060556
    529 .long	3785050280,883997877
    530 .long	3318307427,958139571
    531 .long	3812723403,1322822218
    532 .long	2003034995,1537002063
    533 .long	3602036899,1747873779
    534 .long	1575990012,1955562222
    535 .long	1125592928,2024104815
    536 .long	2716904306,2227730452
    537 .long	442776044,2361852424
    538 .long	593698344,2428436474
    539 .long	3733110249,2756734187
    540 .long	2999351573,3204031479
    541 .long	3815920427,3329325298
    542 .long	3928383900,3391569614
    543 .long	566280711,3515267271
    544 .long	3454069534,3940187606
    545 .long	4000239992,4118630271
    546 .long	1914138554,116418474
    547 .long	2731055270,174292421
    548 .long	3203993006,289380356
    549 .long	320620315,460393269
    550 .long	587496836,685471733
    551 .long	1086792851,852142971
    552 .long	365543100,1017036298
    553 .long	2618297676,1126000580
    554 .long	3409855158,1288033470
    555 .long	4234509866,1501505948
    556 .long	987167468,1607167915
    557 .long	1246189591,1816402316
    558 .size	sha512_block_data_order,.-.L_sha512_block_data_order_begin
    559 .byte	83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
    560 .byte	110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
    561 .byte	67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
    562 .byte	112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
    563 .byte	62,0
    564