VirtualBox

source: vbox/trunk/src/libs/openssl-3.0.7/crypto/genasm-elf/sha512-586.S@ 98929

Last change on this file since 98929 was 97372, checked in by vboxsync, 2 years ago

libs: Switch to openssl-3.0.7, bugref:10317

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

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette