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