OLD | NEW |
| (Empty) |
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 | |
OLD | NEW |