VirtualBox

source: vbox/trunk/src/libs/openssl-1.1.1i/crypto/genasm-macosx/sha512-586.S@ 87083

Last change on this file since 87083 was 83531, checked in by vboxsync, 5 years ago

setting svn:sync-process=export for openssl-1.1.1f, all files except tests

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