]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - secure/lib/libcrypto/i386/sha512-586.S
Regen assembly files for i386.
[FreeBSD/FreeBSD.git] / secure / lib / libcrypto / i386 / sha512-586.S
1 /* $FreeBSD$ */
2 /* Do not modify. This file is auto-generated from sha512-586.pl. */
3 #ifdef PIC
4 .text
5 .globl  sha512_block_data_order
6 .type   sha512_block_data_order,@function
7 .align  16
8 sha512_block_data_order:
9 .L_sha512_block_data_order_begin:
10         pushl   %ebp
11         pushl   %ebx
12         pushl   %esi
13         pushl   %edi
14         movl    20(%esp),%esi
15         movl    24(%esp),%edi
16         movl    28(%esp),%eax
17         movl    %esp,%ebx
18         call    .L000pic_point
19 .L000pic_point:
20         popl    %ebp
21         leal    .L001K512-.L000pic_point(%ebp),%ebp
22         subl    $16,%esp
23         andl    $-64,%esp
24         shll    $7,%eax
25         addl    %edi,%eax
26         movl    %esi,(%esp)
27         movl    %edi,4(%esp)
28         movl    %eax,8(%esp)
29         movl    %ebx,12(%esp)
30 .align  16
31 .L002loop_x86:
32         movl    (%edi),%eax
33         movl    4(%edi),%ebx
34         movl    8(%edi),%ecx
35         movl    12(%edi),%edx
36         bswap   %eax
37         bswap   %ebx
38         bswap   %ecx
39         bswap   %edx
40         pushl   %eax
41         pushl   %ebx
42         pushl   %ecx
43         pushl   %edx
44         movl    16(%edi),%eax
45         movl    20(%edi),%ebx
46         movl    24(%edi),%ecx
47         movl    28(%edi),%edx
48         bswap   %eax
49         bswap   %ebx
50         bswap   %ecx
51         bswap   %edx
52         pushl   %eax
53         pushl   %ebx
54         pushl   %ecx
55         pushl   %edx
56         movl    32(%edi),%eax
57         movl    36(%edi),%ebx
58         movl    40(%edi),%ecx
59         movl    44(%edi),%edx
60         bswap   %eax
61         bswap   %ebx
62         bswap   %ecx
63         bswap   %edx
64         pushl   %eax
65         pushl   %ebx
66         pushl   %ecx
67         pushl   %edx
68         movl    48(%edi),%eax
69         movl    52(%edi),%ebx
70         movl    56(%edi),%ecx
71         movl    60(%edi),%edx
72         bswap   %eax
73         bswap   %ebx
74         bswap   %ecx
75         bswap   %edx
76         pushl   %eax
77         pushl   %ebx
78         pushl   %ecx
79         pushl   %edx
80         movl    64(%edi),%eax
81         movl    68(%edi),%ebx
82         movl    72(%edi),%ecx
83         movl    76(%edi),%edx
84         bswap   %eax
85         bswap   %ebx
86         bswap   %ecx
87         bswap   %edx
88         pushl   %eax
89         pushl   %ebx
90         pushl   %ecx
91         pushl   %edx
92         movl    80(%edi),%eax
93         movl    84(%edi),%ebx
94         movl    88(%edi),%ecx
95         movl    92(%edi),%edx
96         bswap   %eax
97         bswap   %ebx
98         bswap   %ecx
99         bswap   %edx
100         pushl   %eax
101         pushl   %ebx
102         pushl   %ecx
103         pushl   %edx
104         movl    96(%edi),%eax
105         movl    100(%edi),%ebx
106         movl    104(%edi),%ecx
107         movl    108(%edi),%edx
108         bswap   %eax
109         bswap   %ebx
110         bswap   %ecx
111         bswap   %edx
112         pushl   %eax
113         pushl   %ebx
114         pushl   %ecx
115         pushl   %edx
116         movl    112(%edi),%eax
117         movl    116(%edi),%ebx
118         movl    120(%edi),%ecx
119         movl    124(%edi),%edx
120         bswap   %eax
121         bswap   %ebx
122         bswap   %ecx
123         bswap   %edx
124         pushl   %eax
125         pushl   %ebx
126         pushl   %ecx
127         pushl   %edx
128         addl    $128,%edi
129         subl    $72,%esp
130         movl    %edi,204(%esp)
131         leal    8(%esp),%edi
132         movl    $16,%ecx
133 .long   2784229001
134 .align  16
135 .L00300_15_x86:
136         movl    40(%esp),%ecx
137         movl    44(%esp),%edx
138         movl    %ecx,%esi
139         shrl    $9,%ecx
140         movl    %edx,%edi
141         shrl    $9,%edx
142         movl    %ecx,%ebx
143         shll    $14,%esi
144         movl    %edx,%eax
145         shll    $14,%edi
146         xorl    %esi,%ebx
147         shrl    $5,%ecx
148         xorl    %edi,%eax
149         shrl    $5,%edx
150         xorl    %ecx,%eax
151         shll    $4,%esi
152         xorl    %edx,%ebx
153         shll    $4,%edi
154         xorl    %esi,%ebx
155         shrl    $4,%ecx
156         xorl    %edi,%eax
157         shrl    $4,%edx
158         xorl    %ecx,%eax
159         shll    $5,%esi
160         xorl    %edx,%ebx
161         shll    $5,%edi
162         xorl    %esi,%eax
163         xorl    %edi,%ebx
164         movl    48(%esp),%ecx
165         movl    52(%esp),%edx
166         movl    56(%esp),%esi
167         movl    60(%esp),%edi
168         addl    64(%esp),%eax
169         adcl    68(%esp),%ebx
170         xorl    %esi,%ecx
171         xorl    %edi,%edx
172         andl    40(%esp),%ecx
173         andl    44(%esp),%edx
174         addl    192(%esp),%eax
175         adcl    196(%esp),%ebx
176         xorl    %esi,%ecx
177         xorl    %edi,%edx
178         movl    (%ebp),%esi
179         movl    4(%ebp),%edi
180         addl    %ecx,%eax
181         adcl    %edx,%ebx
182         movl    32(%esp),%ecx
183         movl    36(%esp),%edx
184         addl    %esi,%eax
185         adcl    %edi,%ebx
186         movl    %eax,(%esp)
187         movl    %ebx,4(%esp)
188         addl    %ecx,%eax
189         adcl    %edx,%ebx
190         movl    8(%esp),%ecx
191         movl    12(%esp),%edx
192         movl    %eax,32(%esp)
193         movl    %ebx,36(%esp)
194         movl    %ecx,%esi
195         shrl    $2,%ecx
196         movl    %edx,%edi
197         shrl    $2,%edx
198         movl    %ecx,%ebx
199         shll    $4,%esi
200         movl    %edx,%eax
201         shll    $4,%edi
202         xorl    %esi,%ebx
203         shrl    $5,%ecx
204         xorl    %edi,%eax
205         shrl    $5,%edx
206         xorl    %ecx,%ebx
207         shll    $21,%esi
208         xorl    %edx,%eax
209         shll    $21,%edi
210         xorl    %esi,%eax
211         shrl    $21,%ecx
212         xorl    %edi,%ebx
213         shrl    $21,%edx
214         xorl    %ecx,%eax
215         shll    $5,%esi
216         xorl    %edx,%ebx
217         shll    $5,%edi
218         xorl    %esi,%eax
219         xorl    %edi,%ebx
220         movl    8(%esp),%ecx
221         movl    12(%esp),%edx
222         movl    16(%esp),%esi
223         movl    20(%esp),%edi
224         addl    (%esp),%eax
225         adcl    4(%esp),%ebx
226         orl     %esi,%ecx
227         orl     %edi,%edx
228         andl    24(%esp),%ecx
229         andl    28(%esp),%edx
230         andl    8(%esp),%esi
231         andl    12(%esp),%edi
232         orl     %esi,%ecx
233         orl     %edi,%edx
234         addl    %ecx,%eax
235         adcl    %edx,%ebx
236         movl    %eax,(%esp)
237         movl    %ebx,4(%esp)
238         movb    (%ebp),%dl
239         subl    $8,%esp
240         leal    8(%ebp),%ebp
241         cmpb    $148,%dl
242         jne     .L00300_15_x86
243 .align  16
244 .L00416_79_x86:
245         movl    312(%esp),%ecx
246         movl    316(%esp),%edx
247         movl    %ecx,%esi
248         shrl    $1,%ecx
249         movl    %edx,%edi
250         shrl    $1,%edx
251         movl    %ecx,%eax
252         shll    $24,%esi
253         movl    %edx,%ebx
254         shll    $24,%edi
255         xorl    %esi,%ebx
256         shrl    $6,%ecx
257         xorl    %edi,%eax
258         shrl    $6,%edx
259         xorl    %ecx,%eax
260         shll    $7,%esi
261         xorl    %edx,%ebx
262         shll    $1,%edi
263         xorl    %esi,%ebx
264         shrl    $1,%ecx
265         xorl    %edi,%eax
266         shrl    $1,%edx
267         xorl    %ecx,%eax
268         shll    $6,%edi
269         xorl    %edx,%ebx
270         xorl    %edi,%eax
271         movl    %eax,(%esp)
272         movl    %ebx,4(%esp)
273         movl    208(%esp),%ecx
274         movl    212(%esp),%edx
275         movl    %ecx,%esi
276         shrl    $6,%ecx
277         movl    %edx,%edi
278         shrl    $6,%edx
279         movl    %ecx,%eax
280         shll    $3,%esi
281         movl    %edx,%ebx
282         shll    $3,%edi
283         xorl    %esi,%eax
284         shrl    $13,%ecx
285         xorl    %edi,%ebx
286         shrl    $13,%edx
287         xorl    %ecx,%eax
288         shll    $10,%esi
289         xorl    %edx,%ebx
290         shll    $10,%edi
291         xorl    %esi,%ebx
292         shrl    $10,%ecx
293         xorl    %edi,%eax
294         shrl    $10,%edx
295         xorl    %ecx,%ebx
296         shll    $13,%edi
297         xorl    %edx,%eax
298         xorl    %edi,%eax
299         movl    320(%esp),%ecx
300         movl    324(%esp),%edx
301         addl    (%esp),%eax
302         adcl    4(%esp),%ebx
303         movl    248(%esp),%esi
304         movl    252(%esp),%edi
305         addl    %ecx,%eax
306         adcl    %edx,%ebx
307         addl    %esi,%eax
308         adcl    %edi,%ebx
309         movl    %eax,192(%esp)
310         movl    %ebx,196(%esp)
311         movl    40(%esp),%ecx
312         movl    44(%esp),%edx
313         movl    %ecx,%esi
314         shrl    $9,%ecx
315         movl    %edx,%edi
316         shrl    $9,%edx
317         movl    %ecx,%ebx
318         shll    $14,%esi
319         movl    %edx,%eax
320         shll    $14,%edi
321         xorl    %esi,%ebx
322         shrl    $5,%ecx
323         xorl    %edi,%eax
324         shrl    $5,%edx
325         xorl    %ecx,%eax
326         shll    $4,%esi
327         xorl    %edx,%ebx
328         shll    $4,%edi
329         xorl    %esi,%ebx
330         shrl    $4,%ecx
331         xorl    %edi,%eax
332         shrl    $4,%edx
333         xorl    %ecx,%eax
334         shll    $5,%esi
335         xorl    %edx,%ebx
336         shll    $5,%edi
337         xorl    %esi,%eax
338         xorl    %edi,%ebx
339         movl    48(%esp),%ecx
340         movl    52(%esp),%edx
341         movl    56(%esp),%esi
342         movl    60(%esp),%edi
343         addl    64(%esp),%eax
344         adcl    68(%esp),%ebx
345         xorl    %esi,%ecx
346         xorl    %edi,%edx
347         andl    40(%esp),%ecx
348         andl    44(%esp),%edx
349         addl    192(%esp),%eax
350         adcl    196(%esp),%ebx
351         xorl    %esi,%ecx
352         xorl    %edi,%edx
353         movl    (%ebp),%esi
354         movl    4(%ebp),%edi
355         addl    %ecx,%eax
356         adcl    %edx,%ebx
357         movl    32(%esp),%ecx
358         movl    36(%esp),%edx
359         addl    %esi,%eax
360         adcl    %edi,%ebx
361         movl    %eax,(%esp)
362         movl    %ebx,4(%esp)
363         addl    %ecx,%eax
364         adcl    %edx,%ebx
365         movl    8(%esp),%ecx
366         movl    12(%esp),%edx
367         movl    %eax,32(%esp)
368         movl    %ebx,36(%esp)
369         movl    %ecx,%esi
370         shrl    $2,%ecx
371         movl    %edx,%edi
372         shrl    $2,%edx
373         movl    %ecx,%ebx
374         shll    $4,%esi
375         movl    %edx,%eax
376         shll    $4,%edi
377         xorl    %esi,%ebx
378         shrl    $5,%ecx
379         xorl    %edi,%eax
380         shrl    $5,%edx
381         xorl    %ecx,%ebx
382         shll    $21,%esi
383         xorl    %edx,%eax
384         shll    $21,%edi
385         xorl    %esi,%eax
386         shrl    $21,%ecx
387         xorl    %edi,%ebx
388         shrl    $21,%edx
389         xorl    %ecx,%eax
390         shll    $5,%esi
391         xorl    %edx,%ebx
392         shll    $5,%edi
393         xorl    %esi,%eax
394         xorl    %edi,%ebx
395         movl    8(%esp),%ecx
396         movl    12(%esp),%edx
397         movl    16(%esp),%esi
398         movl    20(%esp),%edi
399         addl    (%esp),%eax
400         adcl    4(%esp),%ebx
401         orl     %esi,%ecx
402         orl     %edi,%edx
403         andl    24(%esp),%ecx
404         andl    28(%esp),%edx
405         andl    8(%esp),%esi
406         andl    12(%esp),%edi
407         orl     %esi,%ecx
408         orl     %edi,%edx
409         addl    %ecx,%eax
410         adcl    %edx,%ebx
411         movl    %eax,(%esp)
412         movl    %ebx,4(%esp)
413         movb    (%ebp),%dl
414         subl    $8,%esp
415         leal    8(%ebp),%ebp
416         cmpb    $23,%dl
417         jne     .L00416_79_x86
418         movl    840(%esp),%esi
419         movl    844(%esp),%edi
420         movl    (%esi),%eax
421         movl    4(%esi),%ebx
422         movl    8(%esi),%ecx
423         movl    12(%esi),%edx
424         addl    8(%esp),%eax
425         adcl    12(%esp),%ebx
426         movl    %eax,(%esi)
427         movl    %ebx,4(%esi)
428         addl    16(%esp),%ecx
429         adcl    20(%esp),%edx
430         movl    %ecx,8(%esi)
431         movl    %edx,12(%esi)
432         movl    16(%esi),%eax
433         movl    20(%esi),%ebx
434         movl    24(%esi),%ecx
435         movl    28(%esi),%edx
436         addl    24(%esp),%eax
437         adcl    28(%esp),%ebx
438         movl    %eax,16(%esi)
439         movl    %ebx,20(%esi)
440         addl    32(%esp),%ecx
441         adcl    36(%esp),%edx
442         movl    %ecx,24(%esi)
443         movl    %edx,28(%esi)
444         movl    32(%esi),%eax
445         movl    36(%esi),%ebx
446         movl    40(%esi),%ecx
447         movl    44(%esi),%edx
448         addl    40(%esp),%eax
449         adcl    44(%esp),%ebx
450         movl    %eax,32(%esi)
451         movl    %ebx,36(%esi)
452         addl    48(%esp),%ecx
453         adcl    52(%esp),%edx
454         movl    %ecx,40(%esi)
455         movl    %edx,44(%esi)
456         movl    48(%esi),%eax
457         movl    52(%esi),%ebx
458         movl    56(%esi),%ecx
459         movl    60(%esi),%edx
460         addl    56(%esp),%eax
461         adcl    60(%esp),%ebx
462         movl    %eax,48(%esi)
463         movl    %ebx,52(%esi)
464         addl    64(%esp),%ecx
465         adcl    68(%esp),%edx
466         movl    %ecx,56(%esi)
467         movl    %edx,60(%esi)
468         addl    $840,%esp
469         subl    $640,%ebp
470         cmpl    8(%esp),%edi
471         jb      .L002loop_x86
472         movl    12(%esp),%esp
473         popl    %edi
474         popl    %esi
475         popl    %ebx
476         popl    %ebp
477         ret
478 .align  64
479 .L001K512:
480 .long   3609767458,1116352408
481 .long   602891725,1899447441
482 .long   3964484399,3049323471
483 .long   2173295548,3921009573
484 .long   4081628472,961987163
485 .long   3053834265,1508970993
486 .long   2937671579,2453635748
487 .long   3664609560,2870763221
488 .long   2734883394,3624381080
489 .long   1164996542,310598401
490 .long   1323610764,607225278
491 .long   3590304994,1426881987
492 .long   4068182383,1925078388
493 .long   991336113,2162078206
494 .long   633803317,2614888103
495 .long   3479774868,3248222580
496 .long   2666613458,3835390401
497 .long   944711139,4022224774
498 .long   2341262773,264347078
499 .long   2007800933,604807628
500 .long   1495990901,770255983
501 .long   1856431235,1249150122
502 .long   3175218132,1555081692
503 .long   2198950837,1996064986
504 .long   3999719339,2554220882
505 .long   766784016,2821834349
506 .long   2566594879,2952996808
507 .long   3203337956,3210313671
508 .long   1034457026,3336571891
509 .long   2466948901,3584528711
510 .long   3758326383,113926993
511 .long   168717936,338241895
512 .long   1188179964,666307205
513 .long   1546045734,773529912
514 .long   1522805485,1294757372
515 .long   2643833823,1396182291
516 .long   2343527390,1695183700
517 .long   1014477480,1986661051
518 .long   1206759142,2177026350
519 .long   344077627,2456956037
520 .long   1290863460,2730485921
521 .long   3158454273,2820302411
522 .long   3505952657,3259730800
523 .long   106217008,3345764771
524 .long   3606008344,3516065817
525 .long   1432725776,3600352804
526 .long   1467031594,4094571909
527 .long   851169720,275423344
528 .long   3100823752,430227734
529 .long   1363258195,506948616
530 .long   3750685593,659060556
531 .long   3785050280,883997877
532 .long   3318307427,958139571
533 .long   3812723403,1322822218
534 .long   2003034995,1537002063
535 .long   3602036899,1747873779
536 .long   1575990012,1955562222
537 .long   1125592928,2024104815
538 .long   2716904306,2227730452
539 .long   442776044,2361852424
540 .long   593698344,2428436474
541 .long   3733110249,2756734187
542 .long   2999351573,3204031479
543 .long   3815920427,3329325298
544 .long   3928383900,3391569614
545 .long   566280711,3515267271
546 .long   3454069534,3940187606
547 .long   4000239992,4118630271
548 .long   1914138554,116418474
549 .long   2731055270,174292421
550 .long   3203993006,289380356
551 .long   320620315,460393269
552 .long   587496836,685471733
553 .long   1086792851,852142971
554 .long   365543100,1017036298
555 .long   2618297676,1126000580
556 .long   3409855158,1288033470
557 .long   4234509866,1501505948
558 .long   987167468,1607167915
559 .long   1246189591,1816402316
560 .long   67438087,66051
561 .long   202182159,134810123
562 .size   sha512_block_data_order,.-.L_sha512_block_data_order_begin
563 .byte   83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
564 .byte   110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
565 .byte   67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
566 .byte   112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
567 .byte   62,0
568 #else
569 .text
570 .globl  sha512_block_data_order
571 .type   sha512_block_data_order,@function
572 .align  16
573 sha512_block_data_order:
574 .L_sha512_block_data_order_begin:
575         pushl   %ebp
576         pushl   %ebx
577         pushl   %esi
578         pushl   %edi
579         movl    20(%esp),%esi
580         movl    24(%esp),%edi
581         movl    28(%esp),%eax
582         movl    %esp,%ebx
583         call    .L000pic_point
584 .L000pic_point:
585         popl    %ebp
586         leal    .L001K512-.L000pic_point(%ebp),%ebp
587         subl    $16,%esp
588         andl    $-64,%esp
589         shll    $7,%eax
590         addl    %edi,%eax
591         movl    %esi,(%esp)
592         movl    %edi,4(%esp)
593         movl    %eax,8(%esp)
594         movl    %ebx,12(%esp)
595 .align  16
596 .L002loop_x86:
597         movl    (%edi),%eax
598         movl    4(%edi),%ebx
599         movl    8(%edi),%ecx
600         movl    12(%edi),%edx
601         bswap   %eax
602         bswap   %ebx
603         bswap   %ecx
604         bswap   %edx
605         pushl   %eax
606         pushl   %ebx
607         pushl   %ecx
608         pushl   %edx
609         movl    16(%edi),%eax
610         movl    20(%edi),%ebx
611         movl    24(%edi),%ecx
612         movl    28(%edi),%edx
613         bswap   %eax
614         bswap   %ebx
615         bswap   %ecx
616         bswap   %edx
617         pushl   %eax
618         pushl   %ebx
619         pushl   %ecx
620         pushl   %edx
621         movl    32(%edi),%eax
622         movl    36(%edi),%ebx
623         movl    40(%edi),%ecx
624         movl    44(%edi),%edx
625         bswap   %eax
626         bswap   %ebx
627         bswap   %ecx
628         bswap   %edx
629         pushl   %eax
630         pushl   %ebx
631         pushl   %ecx
632         pushl   %edx
633         movl    48(%edi),%eax
634         movl    52(%edi),%ebx
635         movl    56(%edi),%ecx
636         movl    60(%edi),%edx
637         bswap   %eax
638         bswap   %ebx
639         bswap   %ecx
640         bswap   %edx
641         pushl   %eax
642         pushl   %ebx
643         pushl   %ecx
644         pushl   %edx
645         movl    64(%edi),%eax
646         movl    68(%edi),%ebx
647         movl    72(%edi),%ecx
648         movl    76(%edi),%edx
649         bswap   %eax
650         bswap   %ebx
651         bswap   %ecx
652         bswap   %edx
653         pushl   %eax
654         pushl   %ebx
655         pushl   %ecx
656         pushl   %edx
657         movl    80(%edi),%eax
658         movl    84(%edi),%ebx
659         movl    88(%edi),%ecx
660         movl    92(%edi),%edx
661         bswap   %eax
662         bswap   %ebx
663         bswap   %ecx
664         bswap   %edx
665         pushl   %eax
666         pushl   %ebx
667         pushl   %ecx
668         pushl   %edx
669         movl    96(%edi),%eax
670         movl    100(%edi),%ebx
671         movl    104(%edi),%ecx
672         movl    108(%edi),%edx
673         bswap   %eax
674         bswap   %ebx
675         bswap   %ecx
676         bswap   %edx
677         pushl   %eax
678         pushl   %ebx
679         pushl   %ecx
680         pushl   %edx
681         movl    112(%edi),%eax
682         movl    116(%edi),%ebx
683         movl    120(%edi),%ecx
684         movl    124(%edi),%edx
685         bswap   %eax
686         bswap   %ebx
687         bswap   %ecx
688         bswap   %edx
689         pushl   %eax
690         pushl   %ebx
691         pushl   %ecx
692         pushl   %edx
693         addl    $128,%edi
694         subl    $72,%esp
695         movl    %edi,204(%esp)
696         leal    8(%esp),%edi
697         movl    $16,%ecx
698 .long   2784229001
699 .align  16
700 .L00300_15_x86:
701         movl    40(%esp),%ecx
702         movl    44(%esp),%edx
703         movl    %ecx,%esi
704         shrl    $9,%ecx
705         movl    %edx,%edi
706         shrl    $9,%edx
707         movl    %ecx,%ebx
708         shll    $14,%esi
709         movl    %edx,%eax
710         shll    $14,%edi
711         xorl    %esi,%ebx
712         shrl    $5,%ecx
713         xorl    %edi,%eax
714         shrl    $5,%edx
715         xorl    %ecx,%eax
716         shll    $4,%esi
717         xorl    %edx,%ebx
718         shll    $4,%edi
719         xorl    %esi,%ebx
720         shrl    $4,%ecx
721         xorl    %edi,%eax
722         shrl    $4,%edx
723         xorl    %ecx,%eax
724         shll    $5,%esi
725         xorl    %edx,%ebx
726         shll    $5,%edi
727         xorl    %esi,%eax
728         xorl    %edi,%ebx
729         movl    48(%esp),%ecx
730         movl    52(%esp),%edx
731         movl    56(%esp),%esi
732         movl    60(%esp),%edi
733         addl    64(%esp),%eax
734         adcl    68(%esp),%ebx
735         xorl    %esi,%ecx
736         xorl    %edi,%edx
737         andl    40(%esp),%ecx
738         andl    44(%esp),%edx
739         addl    192(%esp),%eax
740         adcl    196(%esp),%ebx
741         xorl    %esi,%ecx
742         xorl    %edi,%edx
743         movl    (%ebp),%esi
744         movl    4(%ebp),%edi
745         addl    %ecx,%eax
746         adcl    %edx,%ebx
747         movl    32(%esp),%ecx
748         movl    36(%esp),%edx
749         addl    %esi,%eax
750         adcl    %edi,%ebx
751         movl    %eax,(%esp)
752         movl    %ebx,4(%esp)
753         addl    %ecx,%eax
754         adcl    %edx,%ebx
755         movl    8(%esp),%ecx
756         movl    12(%esp),%edx
757         movl    %eax,32(%esp)
758         movl    %ebx,36(%esp)
759         movl    %ecx,%esi
760         shrl    $2,%ecx
761         movl    %edx,%edi
762         shrl    $2,%edx
763         movl    %ecx,%ebx
764         shll    $4,%esi
765         movl    %edx,%eax
766         shll    $4,%edi
767         xorl    %esi,%ebx
768         shrl    $5,%ecx
769         xorl    %edi,%eax
770         shrl    $5,%edx
771         xorl    %ecx,%ebx
772         shll    $21,%esi
773         xorl    %edx,%eax
774         shll    $21,%edi
775         xorl    %esi,%eax
776         shrl    $21,%ecx
777         xorl    %edi,%ebx
778         shrl    $21,%edx
779         xorl    %ecx,%eax
780         shll    $5,%esi
781         xorl    %edx,%ebx
782         shll    $5,%edi
783         xorl    %esi,%eax
784         xorl    %edi,%ebx
785         movl    8(%esp),%ecx
786         movl    12(%esp),%edx
787         movl    16(%esp),%esi
788         movl    20(%esp),%edi
789         addl    (%esp),%eax
790         adcl    4(%esp),%ebx
791         orl     %esi,%ecx
792         orl     %edi,%edx
793         andl    24(%esp),%ecx
794         andl    28(%esp),%edx
795         andl    8(%esp),%esi
796         andl    12(%esp),%edi
797         orl     %esi,%ecx
798         orl     %edi,%edx
799         addl    %ecx,%eax
800         adcl    %edx,%ebx
801         movl    %eax,(%esp)
802         movl    %ebx,4(%esp)
803         movb    (%ebp),%dl
804         subl    $8,%esp
805         leal    8(%ebp),%ebp
806         cmpb    $148,%dl
807         jne     .L00300_15_x86
808 .align  16
809 .L00416_79_x86:
810         movl    312(%esp),%ecx
811         movl    316(%esp),%edx
812         movl    %ecx,%esi
813         shrl    $1,%ecx
814         movl    %edx,%edi
815         shrl    $1,%edx
816         movl    %ecx,%eax
817         shll    $24,%esi
818         movl    %edx,%ebx
819         shll    $24,%edi
820         xorl    %esi,%ebx
821         shrl    $6,%ecx
822         xorl    %edi,%eax
823         shrl    $6,%edx
824         xorl    %ecx,%eax
825         shll    $7,%esi
826         xorl    %edx,%ebx
827         shll    $1,%edi
828         xorl    %esi,%ebx
829         shrl    $1,%ecx
830         xorl    %edi,%eax
831         shrl    $1,%edx
832         xorl    %ecx,%eax
833         shll    $6,%edi
834         xorl    %edx,%ebx
835         xorl    %edi,%eax
836         movl    %eax,(%esp)
837         movl    %ebx,4(%esp)
838         movl    208(%esp),%ecx
839         movl    212(%esp),%edx
840         movl    %ecx,%esi
841         shrl    $6,%ecx
842         movl    %edx,%edi
843         shrl    $6,%edx
844         movl    %ecx,%eax
845         shll    $3,%esi
846         movl    %edx,%ebx
847         shll    $3,%edi
848         xorl    %esi,%eax
849         shrl    $13,%ecx
850         xorl    %edi,%ebx
851         shrl    $13,%edx
852         xorl    %ecx,%eax
853         shll    $10,%esi
854         xorl    %edx,%ebx
855         shll    $10,%edi
856         xorl    %esi,%ebx
857         shrl    $10,%ecx
858         xorl    %edi,%eax
859         shrl    $10,%edx
860         xorl    %ecx,%ebx
861         shll    $13,%edi
862         xorl    %edx,%eax
863         xorl    %edi,%eax
864         movl    320(%esp),%ecx
865         movl    324(%esp),%edx
866         addl    (%esp),%eax
867         adcl    4(%esp),%ebx
868         movl    248(%esp),%esi
869         movl    252(%esp),%edi
870         addl    %ecx,%eax
871         adcl    %edx,%ebx
872         addl    %esi,%eax
873         adcl    %edi,%ebx
874         movl    %eax,192(%esp)
875         movl    %ebx,196(%esp)
876         movl    40(%esp),%ecx
877         movl    44(%esp),%edx
878         movl    %ecx,%esi
879         shrl    $9,%ecx
880         movl    %edx,%edi
881         shrl    $9,%edx
882         movl    %ecx,%ebx
883         shll    $14,%esi
884         movl    %edx,%eax
885         shll    $14,%edi
886         xorl    %esi,%ebx
887         shrl    $5,%ecx
888         xorl    %edi,%eax
889         shrl    $5,%edx
890         xorl    %ecx,%eax
891         shll    $4,%esi
892         xorl    %edx,%ebx
893         shll    $4,%edi
894         xorl    %esi,%ebx
895         shrl    $4,%ecx
896         xorl    %edi,%eax
897         shrl    $4,%edx
898         xorl    %ecx,%eax
899         shll    $5,%esi
900         xorl    %edx,%ebx
901         shll    $5,%edi
902         xorl    %esi,%eax
903         xorl    %edi,%ebx
904         movl    48(%esp),%ecx
905         movl    52(%esp),%edx
906         movl    56(%esp),%esi
907         movl    60(%esp),%edi
908         addl    64(%esp),%eax
909         adcl    68(%esp),%ebx
910         xorl    %esi,%ecx
911         xorl    %edi,%edx
912         andl    40(%esp),%ecx
913         andl    44(%esp),%edx
914         addl    192(%esp),%eax
915         adcl    196(%esp),%ebx
916         xorl    %esi,%ecx
917         xorl    %edi,%edx
918         movl    (%ebp),%esi
919         movl    4(%ebp),%edi
920         addl    %ecx,%eax
921         adcl    %edx,%ebx
922         movl    32(%esp),%ecx
923         movl    36(%esp),%edx
924         addl    %esi,%eax
925         adcl    %edi,%ebx
926         movl    %eax,(%esp)
927         movl    %ebx,4(%esp)
928         addl    %ecx,%eax
929         adcl    %edx,%ebx
930         movl    8(%esp),%ecx
931         movl    12(%esp),%edx
932         movl    %eax,32(%esp)
933         movl    %ebx,36(%esp)
934         movl    %ecx,%esi
935         shrl    $2,%ecx
936         movl    %edx,%edi
937         shrl    $2,%edx
938         movl    %ecx,%ebx
939         shll    $4,%esi
940         movl    %edx,%eax
941         shll    $4,%edi
942         xorl    %esi,%ebx
943         shrl    $5,%ecx
944         xorl    %edi,%eax
945         shrl    $5,%edx
946         xorl    %ecx,%ebx
947         shll    $21,%esi
948         xorl    %edx,%eax
949         shll    $21,%edi
950         xorl    %esi,%eax
951         shrl    $21,%ecx
952         xorl    %edi,%ebx
953         shrl    $21,%edx
954         xorl    %ecx,%eax
955         shll    $5,%esi
956         xorl    %edx,%ebx
957         shll    $5,%edi
958         xorl    %esi,%eax
959         xorl    %edi,%ebx
960         movl    8(%esp),%ecx
961         movl    12(%esp),%edx
962         movl    16(%esp),%esi
963         movl    20(%esp),%edi
964         addl    (%esp),%eax
965         adcl    4(%esp),%ebx
966         orl     %esi,%ecx
967         orl     %edi,%edx
968         andl    24(%esp),%ecx
969         andl    28(%esp),%edx
970         andl    8(%esp),%esi
971         andl    12(%esp),%edi
972         orl     %esi,%ecx
973         orl     %edi,%edx
974         addl    %ecx,%eax
975         adcl    %edx,%ebx
976         movl    %eax,(%esp)
977         movl    %ebx,4(%esp)
978         movb    (%ebp),%dl
979         subl    $8,%esp
980         leal    8(%ebp),%ebp
981         cmpb    $23,%dl
982         jne     .L00416_79_x86
983         movl    840(%esp),%esi
984         movl    844(%esp),%edi
985         movl    (%esi),%eax
986         movl    4(%esi),%ebx
987         movl    8(%esi),%ecx
988         movl    12(%esi),%edx
989         addl    8(%esp),%eax
990         adcl    12(%esp),%ebx
991         movl    %eax,(%esi)
992         movl    %ebx,4(%esi)
993         addl    16(%esp),%ecx
994         adcl    20(%esp),%edx
995         movl    %ecx,8(%esi)
996         movl    %edx,12(%esi)
997         movl    16(%esi),%eax
998         movl    20(%esi),%ebx
999         movl    24(%esi),%ecx
1000         movl    28(%esi),%edx
1001         addl    24(%esp),%eax
1002         adcl    28(%esp),%ebx
1003         movl    %eax,16(%esi)
1004         movl    %ebx,20(%esi)
1005         addl    32(%esp),%ecx
1006         adcl    36(%esp),%edx
1007         movl    %ecx,24(%esi)
1008         movl    %edx,28(%esi)
1009         movl    32(%esi),%eax
1010         movl    36(%esi),%ebx
1011         movl    40(%esi),%ecx
1012         movl    44(%esi),%edx
1013         addl    40(%esp),%eax
1014         adcl    44(%esp),%ebx
1015         movl    %eax,32(%esi)
1016         movl    %ebx,36(%esi)
1017         addl    48(%esp),%ecx
1018         adcl    52(%esp),%edx
1019         movl    %ecx,40(%esi)
1020         movl    %edx,44(%esi)
1021         movl    48(%esi),%eax
1022         movl    52(%esi),%ebx
1023         movl    56(%esi),%ecx
1024         movl    60(%esi),%edx
1025         addl    56(%esp),%eax
1026         adcl    60(%esp),%ebx
1027         movl    %eax,48(%esi)
1028         movl    %ebx,52(%esi)
1029         addl    64(%esp),%ecx
1030         adcl    68(%esp),%edx
1031         movl    %ecx,56(%esi)
1032         movl    %edx,60(%esi)
1033         addl    $840,%esp
1034         subl    $640,%ebp
1035         cmpl    8(%esp),%edi
1036         jb      .L002loop_x86
1037         movl    12(%esp),%esp
1038         popl    %edi
1039         popl    %esi
1040         popl    %ebx
1041         popl    %ebp
1042         ret
1043 .align  64
1044 .L001K512:
1045 .long   3609767458,1116352408
1046 .long   602891725,1899447441
1047 .long   3964484399,3049323471
1048 .long   2173295548,3921009573
1049 .long   4081628472,961987163
1050 .long   3053834265,1508970993
1051 .long   2937671579,2453635748
1052 .long   3664609560,2870763221
1053 .long   2734883394,3624381080
1054 .long   1164996542,310598401
1055 .long   1323610764,607225278
1056 .long   3590304994,1426881987
1057 .long   4068182383,1925078388
1058 .long   991336113,2162078206
1059 .long   633803317,2614888103
1060 .long   3479774868,3248222580
1061 .long   2666613458,3835390401
1062 .long   944711139,4022224774
1063 .long   2341262773,264347078
1064 .long   2007800933,604807628
1065 .long   1495990901,770255983
1066 .long   1856431235,1249150122
1067 .long   3175218132,1555081692
1068 .long   2198950837,1996064986
1069 .long   3999719339,2554220882
1070 .long   766784016,2821834349
1071 .long   2566594879,2952996808
1072 .long   3203337956,3210313671
1073 .long   1034457026,3336571891
1074 .long   2466948901,3584528711
1075 .long   3758326383,113926993
1076 .long   168717936,338241895
1077 .long   1188179964,666307205
1078 .long   1546045734,773529912
1079 .long   1522805485,1294757372
1080 .long   2643833823,1396182291
1081 .long   2343527390,1695183700
1082 .long   1014477480,1986661051
1083 .long   1206759142,2177026350
1084 .long   344077627,2456956037
1085 .long   1290863460,2730485921
1086 .long   3158454273,2820302411
1087 .long   3505952657,3259730800
1088 .long   106217008,3345764771
1089 .long   3606008344,3516065817
1090 .long   1432725776,3600352804
1091 .long   1467031594,4094571909
1092 .long   851169720,275423344
1093 .long   3100823752,430227734
1094 .long   1363258195,506948616
1095 .long   3750685593,659060556
1096 .long   3785050280,883997877
1097 .long   3318307427,958139571
1098 .long   3812723403,1322822218
1099 .long   2003034995,1537002063
1100 .long   3602036899,1747873779
1101 .long   1575990012,1955562222
1102 .long   1125592928,2024104815
1103 .long   2716904306,2227730452
1104 .long   442776044,2361852424
1105 .long   593698344,2428436474
1106 .long   3733110249,2756734187
1107 .long   2999351573,3204031479
1108 .long   3815920427,3329325298
1109 .long   3928383900,3391569614
1110 .long   566280711,3515267271
1111 .long   3454069534,3940187606
1112 .long   4000239992,4118630271
1113 .long   1914138554,116418474
1114 .long   2731055270,174292421
1115 .long   3203993006,289380356
1116 .long   320620315,460393269
1117 .long   587496836,685471733
1118 .long   1086792851,852142971
1119 .long   365543100,1017036298
1120 .long   2618297676,1126000580
1121 .long   3409855158,1288033470
1122 .long   4234509866,1501505948
1123 .long   987167468,1607167915
1124 .long   1246189591,1816402316
1125 .long   67438087,66051
1126 .long   202182159,134810123
1127 .size   sha512_block_data_order,.-.L_sha512_block_data_order_begin
1128 .byte   83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
1129 .byte   110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
1130 .byte   67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
1131 .byte   112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
1132 .byte   62,0
1133 #endif