blob: f65cb1086a7652ab0eddd8158ccd8754f1f887cb [file] [log] [blame]
Adam Langleyd9e397b2015-01-22 14:27:53 -08001#if defined(__i386__)
Adam Langleyd9e397b2015-01-22 14:27:53 -08002.text
3.globl _sha512_block_data_order
4.private_extern _sha512_block_data_order
5.align 4
6_sha512_block_data_order:
7L_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
17L000pic_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)
Adam Langleye9ada862015-05-11 17:20:37 -070028 movl L_OPENSSL_ia32cap_P$non_lazy_ptr-L001K512(%ebp),%edx
29 movl (%edx),%ecx
30 testl $67108864,%ecx
31 jz L002loop_x86
32 movl 4(%edx),%edx
33 movq (%esi),%mm0
34 andl $16777216,%ecx
35 movq 8(%esi),%mm1
36 andl $512,%edx
37 movq 16(%esi),%mm2
38 orl %edx,%ecx
39 movq 24(%esi),%mm3
40 movq 32(%esi),%mm4
41 movq 40(%esi),%mm5
42 movq 48(%esi),%mm6
43 movq 56(%esi),%mm7
44 cmpl $16777728,%ecx
45 je L003SSSE3
46 subl $80,%esp
47 jmp L004loop_sse2
48.align 4,0x90
49L004loop_sse2:
50 movq %mm1,8(%esp)
51 movq %mm2,16(%esp)
52 movq %mm3,24(%esp)
53 movq %mm5,40(%esp)
54 movq %mm6,48(%esp)
55 pxor %mm1,%mm2
56 movq %mm7,56(%esp)
57 movq %mm0,%mm3
58 movl (%edi),%eax
59 movl 4(%edi),%ebx
60 addl $8,%edi
61 movl $15,%edx
62 bswap %eax
63 bswap %ebx
64 jmp L00500_14_sse2
65.align 4,0x90
66L00500_14_sse2:
67 movd %eax,%mm1
68 movl (%edi),%eax
69 movd %ebx,%mm7
70 movl 4(%edi),%ebx
71 addl $8,%edi
72 bswap %eax
73 bswap %ebx
74 punpckldq %mm1,%mm7
75 movq %mm4,%mm1
76 pxor %mm6,%mm5
77 psrlq $14,%mm1
78 movq %mm4,32(%esp)
79 pand %mm4,%mm5
80 psllq $23,%mm4
81 movq %mm3,%mm0
82 movq %mm7,72(%esp)
83 movq %mm1,%mm3
84 psrlq $4,%mm1
85 pxor %mm6,%mm5
86 pxor %mm4,%mm3
87 psllq $23,%mm4
88 pxor %mm1,%mm3
89 movq %mm0,(%esp)
90 paddq %mm5,%mm7
91 pxor %mm4,%mm3
92 psrlq $23,%mm1
93 paddq 56(%esp),%mm7
94 pxor %mm1,%mm3
95 psllq $4,%mm4
96 paddq (%ebp),%mm7
97 pxor %mm4,%mm3
98 movq 24(%esp),%mm4
99 paddq %mm7,%mm3
100 movq %mm0,%mm5
101 psrlq $28,%mm5
102 paddq %mm3,%mm4
103 movq %mm0,%mm6
104 movq %mm5,%mm7
105 psllq $25,%mm6
106 movq 8(%esp),%mm1
107 psrlq $6,%mm5
108 pxor %mm6,%mm7
109 subl $8,%esp
110 psllq $5,%mm6
111 pxor %mm5,%mm7
112 pxor %mm1,%mm0
113 psrlq $5,%mm5
114 pxor %mm6,%mm7
115 pand %mm0,%mm2
116 psllq $6,%mm6
117 pxor %mm5,%mm7
118 pxor %mm1,%mm2
119 pxor %mm7,%mm6
120 movq 40(%esp),%mm5
121 paddq %mm2,%mm3
122 movq %mm0,%mm2
123 addl $8,%ebp
124 paddq %mm6,%mm3
125 movq 48(%esp),%mm6
126 decl %edx
127 jnz L00500_14_sse2
128 movd %eax,%mm1
129 movd %ebx,%mm7
130 punpckldq %mm1,%mm7
131 movq %mm4,%mm1
132 pxor %mm6,%mm5
133 psrlq $14,%mm1
134 movq %mm4,32(%esp)
135 pand %mm4,%mm5
136 psllq $23,%mm4
137 movq %mm3,%mm0
138 movq %mm7,72(%esp)
139 movq %mm1,%mm3
140 psrlq $4,%mm1
141 pxor %mm6,%mm5
142 pxor %mm4,%mm3
143 psllq $23,%mm4
144 pxor %mm1,%mm3
145 movq %mm0,(%esp)
146 paddq %mm5,%mm7
147 pxor %mm4,%mm3
148 psrlq $23,%mm1
149 paddq 56(%esp),%mm7
150 pxor %mm1,%mm3
151 psllq $4,%mm4
152 paddq (%ebp),%mm7
153 pxor %mm4,%mm3
154 movq 24(%esp),%mm4
155 paddq %mm7,%mm3
156 movq %mm0,%mm5
157 psrlq $28,%mm5
158 paddq %mm3,%mm4
159 movq %mm0,%mm6
160 movq %mm5,%mm7
161 psllq $25,%mm6
162 movq 8(%esp),%mm1
163 psrlq $6,%mm5
164 pxor %mm6,%mm7
165 subl $8,%esp
166 psllq $5,%mm6
167 pxor %mm5,%mm7
168 pxor %mm1,%mm0
169 psrlq $5,%mm5
170 pxor %mm6,%mm7
171 pand %mm0,%mm2
172 psllq $6,%mm6
173 pxor %mm5,%mm7
174 pxor %mm1,%mm2
175 pxor %mm7,%mm6
176 movq 192(%esp),%mm7
177 paddq %mm2,%mm3
178 movq %mm0,%mm2
179 addl $8,%ebp
180 paddq %mm6,%mm3
181 pxor %mm0,%mm0
182 movl $32,%edx
183 jmp L00616_79_sse2
184.align 4,0x90
185L00616_79_sse2:
186 movq 88(%esp),%mm5
187 movq %mm7,%mm1
188 psrlq $1,%mm7
189 movq %mm5,%mm6
190 psrlq $6,%mm5
191 psllq $56,%mm1
192 paddq %mm3,%mm0
193 movq %mm7,%mm3
194 psrlq $6,%mm7
195 pxor %mm1,%mm3
196 psllq $7,%mm1
197 pxor %mm7,%mm3
198 psrlq $1,%mm7
199 pxor %mm1,%mm3
200 movq %mm5,%mm1
201 psrlq $13,%mm5
202 pxor %mm3,%mm7
203 psllq $3,%mm6
204 pxor %mm5,%mm1
205 paddq 200(%esp),%mm7
206 pxor %mm6,%mm1
207 psrlq $42,%mm5
208 paddq 128(%esp),%mm7
209 pxor %mm5,%mm1
210 psllq $42,%mm6
211 movq 40(%esp),%mm5
212 pxor %mm6,%mm1
213 movq 48(%esp),%mm6
214 paddq %mm1,%mm7
215 movq %mm4,%mm1
216 pxor %mm6,%mm5
217 psrlq $14,%mm1
218 movq %mm4,32(%esp)
219 pand %mm4,%mm5
220 psllq $23,%mm4
221 movq %mm7,72(%esp)
222 movq %mm1,%mm3
223 psrlq $4,%mm1
224 pxor %mm6,%mm5
225 pxor %mm4,%mm3
226 psllq $23,%mm4
227 pxor %mm1,%mm3
228 movq %mm0,(%esp)
229 paddq %mm5,%mm7
230 pxor %mm4,%mm3
231 psrlq $23,%mm1
232 paddq 56(%esp),%mm7
233 pxor %mm1,%mm3
234 psllq $4,%mm4
235 paddq (%ebp),%mm7
236 pxor %mm4,%mm3
237 movq 24(%esp),%mm4
238 paddq %mm7,%mm3
239 movq %mm0,%mm5
240 psrlq $28,%mm5
241 paddq %mm3,%mm4
242 movq %mm0,%mm6
243 movq %mm5,%mm7
244 psllq $25,%mm6
245 movq 8(%esp),%mm1
246 psrlq $6,%mm5
247 pxor %mm6,%mm7
248 subl $8,%esp
249 psllq $5,%mm6
250 pxor %mm5,%mm7
251 pxor %mm1,%mm0
252 psrlq $5,%mm5
253 pxor %mm6,%mm7
254 pand %mm0,%mm2
255 psllq $6,%mm6
256 pxor %mm5,%mm7
257 pxor %mm1,%mm2
258 pxor %mm7,%mm6
259 movq 192(%esp),%mm7
260 paddq %mm6,%mm2
261 addl $8,%ebp
262 movq 88(%esp),%mm5
263 movq %mm7,%mm1
264 psrlq $1,%mm7
265 movq %mm5,%mm6
266 psrlq $6,%mm5
267 psllq $56,%mm1
268 paddq %mm3,%mm2
269 movq %mm7,%mm3
270 psrlq $6,%mm7
271 pxor %mm1,%mm3
272 psllq $7,%mm1
273 pxor %mm7,%mm3
274 psrlq $1,%mm7
275 pxor %mm1,%mm3
276 movq %mm5,%mm1
277 psrlq $13,%mm5
278 pxor %mm3,%mm7
279 psllq $3,%mm6
280 pxor %mm5,%mm1
281 paddq 200(%esp),%mm7
282 pxor %mm6,%mm1
283 psrlq $42,%mm5
284 paddq 128(%esp),%mm7
285 pxor %mm5,%mm1
286 psllq $42,%mm6
287 movq 40(%esp),%mm5
288 pxor %mm6,%mm1
289 movq 48(%esp),%mm6
290 paddq %mm1,%mm7
291 movq %mm4,%mm1
292 pxor %mm6,%mm5
293 psrlq $14,%mm1
294 movq %mm4,32(%esp)
295 pand %mm4,%mm5
296 psllq $23,%mm4
297 movq %mm7,72(%esp)
298 movq %mm1,%mm3
299 psrlq $4,%mm1
300 pxor %mm6,%mm5
301 pxor %mm4,%mm3
302 psllq $23,%mm4
303 pxor %mm1,%mm3
304 movq %mm2,(%esp)
305 paddq %mm5,%mm7
306 pxor %mm4,%mm3
307 psrlq $23,%mm1
308 paddq 56(%esp),%mm7
309 pxor %mm1,%mm3
310 psllq $4,%mm4
311 paddq (%ebp),%mm7
312 pxor %mm4,%mm3
313 movq 24(%esp),%mm4
314 paddq %mm7,%mm3
315 movq %mm2,%mm5
316 psrlq $28,%mm5
317 paddq %mm3,%mm4
318 movq %mm2,%mm6
319 movq %mm5,%mm7
320 psllq $25,%mm6
321 movq 8(%esp),%mm1
322 psrlq $6,%mm5
323 pxor %mm6,%mm7
324 subl $8,%esp
325 psllq $5,%mm6
326 pxor %mm5,%mm7
327 pxor %mm1,%mm2
328 psrlq $5,%mm5
329 pxor %mm6,%mm7
330 pand %mm2,%mm0
331 psllq $6,%mm6
332 pxor %mm5,%mm7
333 pxor %mm1,%mm0
334 pxor %mm7,%mm6
335 movq 192(%esp),%mm7
336 paddq %mm6,%mm0
337 addl $8,%ebp
338 decl %edx
339 jnz L00616_79_sse2
340 paddq %mm3,%mm0
341 movq 8(%esp),%mm1
342 movq 24(%esp),%mm3
343 movq 40(%esp),%mm5
344 movq 48(%esp),%mm6
345 movq 56(%esp),%mm7
346 pxor %mm1,%mm2
347 paddq (%esi),%mm0
348 paddq 8(%esi),%mm1
349 paddq 16(%esi),%mm2
350 paddq 24(%esi),%mm3
351 paddq 32(%esi),%mm4
352 paddq 40(%esi),%mm5
353 paddq 48(%esi),%mm6
354 paddq 56(%esi),%mm7
355 movl $640,%eax
356 movq %mm0,(%esi)
357 movq %mm1,8(%esi)
358 movq %mm2,16(%esi)
359 movq %mm3,24(%esi)
360 movq %mm4,32(%esi)
361 movq %mm5,40(%esi)
362 movq %mm6,48(%esi)
363 movq %mm7,56(%esi)
364 leal (%esp,%eax,1),%esp
365 subl %eax,%ebp
366 cmpl 88(%esp),%edi
367 jb L004loop_sse2
368 movl 92(%esp),%esp
369 emms
370 popl %edi
371 popl %esi
372 popl %ebx
373 popl %ebp
374 ret
375.align 5,0x90
376L003SSSE3:
377 leal -64(%esp),%edx
378 subl $256,%esp
379 movdqa 640(%ebp),%xmm1
380 movdqu (%edi),%xmm0
381.byte 102,15,56,0,193
382 movdqa (%ebp),%xmm3
383 movdqa %xmm1,%xmm2
384 movdqu 16(%edi),%xmm1
385 paddq %xmm0,%xmm3
386.byte 102,15,56,0,202
387 movdqa %xmm3,-128(%edx)
388 movdqa 16(%ebp),%xmm4
389 movdqa %xmm2,%xmm3
390 movdqu 32(%edi),%xmm2
391 paddq %xmm1,%xmm4
392.byte 102,15,56,0,211
393 movdqa %xmm4,-112(%edx)
394 movdqa 32(%ebp),%xmm5
395 movdqa %xmm3,%xmm4
396 movdqu 48(%edi),%xmm3
397 paddq %xmm2,%xmm5
398.byte 102,15,56,0,220
399 movdqa %xmm5,-96(%edx)
400 movdqa 48(%ebp),%xmm6
401 movdqa %xmm4,%xmm5
402 movdqu 64(%edi),%xmm4
403 paddq %xmm3,%xmm6
404.byte 102,15,56,0,229
405 movdqa %xmm6,-80(%edx)
406 movdqa 64(%ebp),%xmm7
407 movdqa %xmm5,%xmm6
408 movdqu 80(%edi),%xmm5
409 paddq %xmm4,%xmm7
410.byte 102,15,56,0,238
411 movdqa %xmm7,-64(%edx)
412 movdqa %xmm0,(%edx)
413 movdqa 80(%ebp),%xmm0
414 movdqa %xmm6,%xmm7
415 movdqu 96(%edi),%xmm6
416 paddq %xmm5,%xmm0
417.byte 102,15,56,0,247
418 movdqa %xmm0,-48(%edx)
419 movdqa %xmm1,16(%edx)
420 movdqa 96(%ebp),%xmm1
421 movdqa %xmm7,%xmm0
422 movdqu 112(%edi),%xmm7
423 paddq %xmm6,%xmm1
424.byte 102,15,56,0,248
425 movdqa %xmm1,-32(%edx)
426 movdqa %xmm2,32(%edx)
427 movdqa 112(%ebp),%xmm2
428 movdqa (%edx),%xmm0
429 paddq %xmm7,%xmm2
430 movdqa %xmm2,-16(%edx)
431 nop
432.align 5,0x90
433L007loop_ssse3:
434 movdqa 16(%edx),%xmm2
435 movdqa %xmm3,48(%edx)
436 leal 128(%ebp),%ebp
437 movq %mm1,8(%esp)
438 movl %edi,%ebx
439 movq %mm2,16(%esp)
440 leal 128(%edi),%edi
441 movq %mm3,24(%esp)
442 cmpl %eax,%edi
443 movq %mm5,40(%esp)
444 cmovbl %edi,%ebx
445 movq %mm6,48(%esp)
446 movl $4,%ecx
447 pxor %mm1,%mm2
448 movq %mm7,56(%esp)
449 pxor %mm3,%mm3
450 jmp L00800_47_ssse3
451.align 5,0x90
452L00800_47_ssse3:
453 movdqa %xmm5,%xmm3
454 movdqa %xmm2,%xmm1
455.byte 102,15,58,15,208,8
456 movdqa %xmm4,(%edx)
457.byte 102,15,58,15,220,8
458 movdqa %xmm2,%xmm4
459 psrlq $7,%xmm2
460 paddq %xmm3,%xmm0
461 movdqa %xmm4,%xmm3
462 psrlq $1,%xmm4
463 psllq $56,%xmm3
464 pxor %xmm4,%xmm2
465 psrlq $7,%xmm4
466 pxor %xmm3,%xmm2
467 psllq $7,%xmm3
468 pxor %xmm4,%xmm2
469 movdqa %xmm7,%xmm4
470 pxor %xmm3,%xmm2
471 movdqa %xmm7,%xmm3
472 psrlq $6,%xmm4
473 paddq %xmm2,%xmm0
474 movdqa %xmm7,%xmm2
475 psrlq $19,%xmm3
476 psllq $3,%xmm2
477 pxor %xmm3,%xmm4
478 psrlq $42,%xmm3
479 pxor %xmm2,%xmm4
480 psllq $42,%xmm2
481 pxor %xmm3,%xmm4
482 movdqa 32(%edx),%xmm3
483 pxor %xmm2,%xmm4
484 movdqa (%ebp),%xmm2
485 movq %mm4,%mm1
486 paddq %xmm4,%xmm0
487 movq -128(%edx),%mm7
488 pxor %mm6,%mm5
489 psrlq $14,%mm1
490 movq %mm4,32(%esp)
491 paddq %xmm0,%xmm2
492 pand %mm4,%mm5
493 psllq $23,%mm4
494 paddq %mm3,%mm0
495 movq %mm1,%mm3
496 psrlq $4,%mm1
497 pxor %mm6,%mm5
498 pxor %mm4,%mm3
499 psllq $23,%mm4
500 pxor %mm1,%mm3
501 movq %mm0,(%esp)
502 paddq %mm5,%mm7
503 pxor %mm4,%mm3
504 psrlq $23,%mm1
505 paddq 56(%esp),%mm7
506 pxor %mm1,%mm3
507 psllq $4,%mm4
508 pxor %mm4,%mm3
509 movq 24(%esp),%mm4
510 paddq %mm7,%mm3
511 movq %mm0,%mm5
512 psrlq $28,%mm5
513 paddq %mm3,%mm4
514 movq %mm0,%mm6
515 movq %mm5,%mm7
516 psllq $25,%mm6
517 movq 8(%esp),%mm1
518 psrlq $6,%mm5
519 pxor %mm6,%mm7
520 psllq $5,%mm6
521 pxor %mm5,%mm7
522 pxor %mm1,%mm0
523 psrlq $5,%mm5
524 pxor %mm6,%mm7
525 pand %mm0,%mm2
526 psllq $6,%mm6
527 pxor %mm5,%mm7
528 pxor %mm1,%mm2
529 pxor %mm7,%mm6
530 movq 32(%esp),%mm5
531 paddq %mm6,%mm2
532 movq 40(%esp),%mm6
533 movq %mm4,%mm1
534 movq -120(%edx),%mm7
535 pxor %mm6,%mm5
536 psrlq $14,%mm1
537 movq %mm4,24(%esp)
538 pand %mm4,%mm5
539 psllq $23,%mm4
540 paddq %mm3,%mm2
541 movq %mm1,%mm3
542 psrlq $4,%mm1
543 pxor %mm6,%mm5
544 pxor %mm4,%mm3
545 psllq $23,%mm4
546 pxor %mm1,%mm3
547 movq %mm2,56(%esp)
548 paddq %mm5,%mm7
549 pxor %mm4,%mm3
550 psrlq $23,%mm1
551 paddq 48(%esp),%mm7
552 pxor %mm1,%mm3
553 psllq $4,%mm4
554 pxor %mm4,%mm3
555 movq 16(%esp),%mm4
556 paddq %mm7,%mm3
557 movq %mm2,%mm5
558 psrlq $28,%mm5
559 paddq %mm3,%mm4
560 movq %mm2,%mm6
561 movq %mm5,%mm7
562 psllq $25,%mm6
563 movq (%esp),%mm1
564 psrlq $6,%mm5
565 pxor %mm6,%mm7
566 psllq $5,%mm6
567 pxor %mm5,%mm7
568 pxor %mm1,%mm2
569 psrlq $5,%mm5
570 pxor %mm6,%mm7
571 pand %mm2,%mm0
572 psllq $6,%mm6
573 pxor %mm5,%mm7
574 pxor %mm1,%mm0
575 pxor %mm7,%mm6
576 movq 24(%esp),%mm5
577 paddq %mm6,%mm0
578 movq 32(%esp),%mm6
579 movdqa %xmm2,-128(%edx)
580 movdqa %xmm6,%xmm4
581 movdqa %xmm3,%xmm2
582.byte 102,15,58,15,217,8
583 movdqa %xmm5,16(%edx)
584.byte 102,15,58,15,229,8
585 movdqa %xmm3,%xmm5
586 psrlq $7,%xmm3
587 paddq %xmm4,%xmm1
588 movdqa %xmm5,%xmm4
589 psrlq $1,%xmm5
590 psllq $56,%xmm4
591 pxor %xmm5,%xmm3
592 psrlq $7,%xmm5
593 pxor %xmm4,%xmm3
594 psllq $7,%xmm4
595 pxor %xmm5,%xmm3
596 movdqa %xmm0,%xmm5
597 pxor %xmm4,%xmm3
598 movdqa %xmm0,%xmm4
599 psrlq $6,%xmm5
600 paddq %xmm3,%xmm1
601 movdqa %xmm0,%xmm3
602 psrlq $19,%xmm4
603 psllq $3,%xmm3
604 pxor %xmm4,%xmm5
605 psrlq $42,%xmm4
606 pxor %xmm3,%xmm5
607 psllq $42,%xmm3
608 pxor %xmm4,%xmm5
609 movdqa 48(%edx),%xmm4
610 pxor %xmm3,%xmm5
611 movdqa 16(%ebp),%xmm3
612 movq %mm4,%mm1
613 paddq %xmm5,%xmm1
614 movq -112(%edx),%mm7
615 pxor %mm6,%mm5
616 psrlq $14,%mm1
617 movq %mm4,16(%esp)
618 paddq %xmm1,%xmm3
619 pand %mm4,%mm5
620 psllq $23,%mm4
621 paddq %mm3,%mm0
622 movq %mm1,%mm3
623 psrlq $4,%mm1
624 pxor %mm6,%mm5
625 pxor %mm4,%mm3
626 psllq $23,%mm4
627 pxor %mm1,%mm3
628 movq %mm0,48(%esp)
629 paddq %mm5,%mm7
630 pxor %mm4,%mm3
631 psrlq $23,%mm1
632 paddq 40(%esp),%mm7
633 pxor %mm1,%mm3
634 psllq $4,%mm4
635 pxor %mm4,%mm3
636 movq 8(%esp),%mm4
637 paddq %mm7,%mm3
638 movq %mm0,%mm5
639 psrlq $28,%mm5
640 paddq %mm3,%mm4
641 movq %mm0,%mm6
642 movq %mm5,%mm7
643 psllq $25,%mm6
644 movq 56(%esp),%mm1
645 psrlq $6,%mm5
646 pxor %mm6,%mm7
647 psllq $5,%mm6
648 pxor %mm5,%mm7
649 pxor %mm1,%mm0
650 psrlq $5,%mm5
651 pxor %mm6,%mm7
652 pand %mm0,%mm2
653 psllq $6,%mm6
654 pxor %mm5,%mm7
655 pxor %mm1,%mm2
656 pxor %mm7,%mm6
657 movq 16(%esp),%mm5
658 paddq %mm6,%mm2
659 movq 24(%esp),%mm6
660 movq %mm4,%mm1
661 movq -104(%edx),%mm7
662 pxor %mm6,%mm5
663 psrlq $14,%mm1
664 movq %mm4,8(%esp)
665 pand %mm4,%mm5
666 psllq $23,%mm4
667 paddq %mm3,%mm2
668 movq %mm1,%mm3
669 psrlq $4,%mm1
670 pxor %mm6,%mm5
671 pxor %mm4,%mm3
672 psllq $23,%mm4
673 pxor %mm1,%mm3
674 movq %mm2,40(%esp)
675 paddq %mm5,%mm7
676 pxor %mm4,%mm3
677 psrlq $23,%mm1
678 paddq 32(%esp),%mm7
679 pxor %mm1,%mm3
680 psllq $4,%mm4
681 pxor %mm4,%mm3
682 movq (%esp),%mm4
683 paddq %mm7,%mm3
684 movq %mm2,%mm5
685 psrlq $28,%mm5
686 paddq %mm3,%mm4
687 movq %mm2,%mm6
688 movq %mm5,%mm7
689 psllq $25,%mm6
690 movq 48(%esp),%mm1
691 psrlq $6,%mm5
692 pxor %mm6,%mm7
693 psllq $5,%mm6
694 pxor %mm5,%mm7
695 pxor %mm1,%mm2
696 psrlq $5,%mm5
697 pxor %mm6,%mm7
698 pand %mm2,%mm0
699 psllq $6,%mm6
700 pxor %mm5,%mm7
701 pxor %mm1,%mm0
702 pxor %mm7,%mm6
703 movq 8(%esp),%mm5
704 paddq %mm6,%mm0
705 movq 16(%esp),%mm6
706 movdqa %xmm3,-112(%edx)
707 movdqa %xmm7,%xmm5
708 movdqa %xmm4,%xmm3
709.byte 102,15,58,15,226,8
710 movdqa %xmm6,32(%edx)
711.byte 102,15,58,15,238,8
712 movdqa %xmm4,%xmm6
713 psrlq $7,%xmm4
714 paddq %xmm5,%xmm2
715 movdqa %xmm6,%xmm5
716 psrlq $1,%xmm6
717 psllq $56,%xmm5
718 pxor %xmm6,%xmm4
719 psrlq $7,%xmm6
720 pxor %xmm5,%xmm4
721 psllq $7,%xmm5
722 pxor %xmm6,%xmm4
723 movdqa %xmm1,%xmm6
724 pxor %xmm5,%xmm4
725 movdqa %xmm1,%xmm5
726 psrlq $6,%xmm6
727 paddq %xmm4,%xmm2
728 movdqa %xmm1,%xmm4
729 psrlq $19,%xmm5
730 psllq $3,%xmm4
731 pxor %xmm5,%xmm6
732 psrlq $42,%xmm5
733 pxor %xmm4,%xmm6
734 psllq $42,%xmm4
735 pxor %xmm5,%xmm6
736 movdqa (%edx),%xmm5
737 pxor %xmm4,%xmm6
738 movdqa 32(%ebp),%xmm4
739 movq %mm4,%mm1
740 paddq %xmm6,%xmm2
741 movq -96(%edx),%mm7
742 pxor %mm6,%mm5
743 psrlq $14,%mm1
744 movq %mm4,(%esp)
745 paddq %xmm2,%xmm4
746 pand %mm4,%mm5
747 psllq $23,%mm4
748 paddq %mm3,%mm0
749 movq %mm1,%mm3
750 psrlq $4,%mm1
751 pxor %mm6,%mm5
752 pxor %mm4,%mm3
753 psllq $23,%mm4
754 pxor %mm1,%mm3
755 movq %mm0,32(%esp)
756 paddq %mm5,%mm7
757 pxor %mm4,%mm3
758 psrlq $23,%mm1
759 paddq 24(%esp),%mm7
760 pxor %mm1,%mm3
761 psllq $4,%mm4
762 pxor %mm4,%mm3
763 movq 56(%esp),%mm4
764 paddq %mm7,%mm3
765 movq %mm0,%mm5
766 psrlq $28,%mm5
767 paddq %mm3,%mm4
768 movq %mm0,%mm6
769 movq %mm5,%mm7
770 psllq $25,%mm6
771 movq 40(%esp),%mm1
772 psrlq $6,%mm5
773 pxor %mm6,%mm7
774 psllq $5,%mm6
775 pxor %mm5,%mm7
776 pxor %mm1,%mm0
777 psrlq $5,%mm5
778 pxor %mm6,%mm7
779 pand %mm0,%mm2
780 psllq $6,%mm6
781 pxor %mm5,%mm7
782 pxor %mm1,%mm2
783 pxor %mm7,%mm6
784 movq (%esp),%mm5
785 paddq %mm6,%mm2
786 movq 8(%esp),%mm6
787 movq %mm4,%mm1
788 movq -88(%edx),%mm7
789 pxor %mm6,%mm5
790 psrlq $14,%mm1
791 movq %mm4,56(%esp)
792 pand %mm4,%mm5
793 psllq $23,%mm4
794 paddq %mm3,%mm2
795 movq %mm1,%mm3
796 psrlq $4,%mm1
797 pxor %mm6,%mm5
798 pxor %mm4,%mm3
799 psllq $23,%mm4
800 pxor %mm1,%mm3
801 movq %mm2,24(%esp)
802 paddq %mm5,%mm7
803 pxor %mm4,%mm3
804 psrlq $23,%mm1
805 paddq 16(%esp),%mm7
806 pxor %mm1,%mm3
807 psllq $4,%mm4
808 pxor %mm4,%mm3
809 movq 48(%esp),%mm4
810 paddq %mm7,%mm3
811 movq %mm2,%mm5
812 psrlq $28,%mm5
813 paddq %mm3,%mm4
814 movq %mm2,%mm6
815 movq %mm5,%mm7
816 psllq $25,%mm6
817 movq 32(%esp),%mm1
818 psrlq $6,%mm5
819 pxor %mm6,%mm7
820 psllq $5,%mm6
821 pxor %mm5,%mm7
822 pxor %mm1,%mm2
823 psrlq $5,%mm5
824 pxor %mm6,%mm7
825 pand %mm2,%mm0
826 psllq $6,%mm6
827 pxor %mm5,%mm7
828 pxor %mm1,%mm0
829 pxor %mm7,%mm6
830 movq 56(%esp),%mm5
831 paddq %mm6,%mm0
832 movq (%esp),%mm6
833 movdqa %xmm4,-96(%edx)
834 movdqa %xmm0,%xmm6
835 movdqa %xmm5,%xmm4
836.byte 102,15,58,15,235,8
837 movdqa %xmm7,48(%edx)
838.byte 102,15,58,15,247,8
839 movdqa %xmm5,%xmm7
840 psrlq $7,%xmm5
841 paddq %xmm6,%xmm3
842 movdqa %xmm7,%xmm6
843 psrlq $1,%xmm7
844 psllq $56,%xmm6
845 pxor %xmm7,%xmm5
846 psrlq $7,%xmm7
847 pxor %xmm6,%xmm5
848 psllq $7,%xmm6
849 pxor %xmm7,%xmm5
850 movdqa %xmm2,%xmm7
851 pxor %xmm6,%xmm5
852 movdqa %xmm2,%xmm6
853 psrlq $6,%xmm7
854 paddq %xmm5,%xmm3
855 movdqa %xmm2,%xmm5
856 psrlq $19,%xmm6
857 psllq $3,%xmm5
858 pxor %xmm6,%xmm7
859 psrlq $42,%xmm6
860 pxor %xmm5,%xmm7
861 psllq $42,%xmm5
862 pxor %xmm6,%xmm7
863 movdqa 16(%edx),%xmm6
864 pxor %xmm5,%xmm7
865 movdqa 48(%ebp),%xmm5
866 movq %mm4,%mm1
867 paddq %xmm7,%xmm3
868 movq -80(%edx),%mm7
869 pxor %mm6,%mm5
870 psrlq $14,%mm1
871 movq %mm4,48(%esp)
872 paddq %xmm3,%xmm5
873 pand %mm4,%mm5
874 psllq $23,%mm4
875 paddq %mm3,%mm0
876 movq %mm1,%mm3
877 psrlq $4,%mm1
878 pxor %mm6,%mm5
879 pxor %mm4,%mm3
880 psllq $23,%mm4
881 pxor %mm1,%mm3
882 movq %mm0,16(%esp)
883 paddq %mm5,%mm7
884 pxor %mm4,%mm3
885 psrlq $23,%mm1
886 paddq 8(%esp),%mm7
887 pxor %mm1,%mm3
888 psllq $4,%mm4
889 pxor %mm4,%mm3
890 movq 40(%esp),%mm4
891 paddq %mm7,%mm3
892 movq %mm0,%mm5
893 psrlq $28,%mm5
894 paddq %mm3,%mm4
895 movq %mm0,%mm6
896 movq %mm5,%mm7
897 psllq $25,%mm6
898 movq 24(%esp),%mm1
899 psrlq $6,%mm5
900 pxor %mm6,%mm7
901 psllq $5,%mm6
902 pxor %mm5,%mm7
903 pxor %mm1,%mm0
904 psrlq $5,%mm5
905 pxor %mm6,%mm7
906 pand %mm0,%mm2
907 psllq $6,%mm6
908 pxor %mm5,%mm7
909 pxor %mm1,%mm2
910 pxor %mm7,%mm6
911 movq 48(%esp),%mm5
912 paddq %mm6,%mm2
913 movq 56(%esp),%mm6
914 movq %mm4,%mm1
915 movq -72(%edx),%mm7
916 pxor %mm6,%mm5
917 psrlq $14,%mm1
918 movq %mm4,40(%esp)
919 pand %mm4,%mm5
920 psllq $23,%mm4
921 paddq %mm3,%mm2
922 movq %mm1,%mm3
923 psrlq $4,%mm1
924 pxor %mm6,%mm5
925 pxor %mm4,%mm3
926 psllq $23,%mm4
927 pxor %mm1,%mm3
928 movq %mm2,8(%esp)
929 paddq %mm5,%mm7
930 pxor %mm4,%mm3
931 psrlq $23,%mm1
932 paddq (%esp),%mm7
933 pxor %mm1,%mm3
934 psllq $4,%mm4
935 pxor %mm4,%mm3
936 movq 32(%esp),%mm4
937 paddq %mm7,%mm3
938 movq %mm2,%mm5
939 psrlq $28,%mm5
940 paddq %mm3,%mm4
941 movq %mm2,%mm6
942 movq %mm5,%mm7
943 psllq $25,%mm6
944 movq 16(%esp),%mm1
945 psrlq $6,%mm5
946 pxor %mm6,%mm7
947 psllq $5,%mm6
948 pxor %mm5,%mm7
949 pxor %mm1,%mm2
950 psrlq $5,%mm5
951 pxor %mm6,%mm7
952 pand %mm2,%mm0
953 psllq $6,%mm6
954 pxor %mm5,%mm7
955 pxor %mm1,%mm0
956 pxor %mm7,%mm6
957 movq 40(%esp),%mm5
958 paddq %mm6,%mm0
959 movq 48(%esp),%mm6
960 movdqa %xmm5,-80(%edx)
961 movdqa %xmm1,%xmm7
962 movdqa %xmm6,%xmm5
963.byte 102,15,58,15,244,8
964 movdqa %xmm0,(%edx)
965.byte 102,15,58,15,248,8
966 movdqa %xmm6,%xmm0
967 psrlq $7,%xmm6
968 paddq %xmm7,%xmm4
969 movdqa %xmm0,%xmm7
970 psrlq $1,%xmm0
971 psllq $56,%xmm7
972 pxor %xmm0,%xmm6
973 psrlq $7,%xmm0
974 pxor %xmm7,%xmm6
975 psllq $7,%xmm7
976 pxor %xmm0,%xmm6
977 movdqa %xmm3,%xmm0
978 pxor %xmm7,%xmm6
979 movdqa %xmm3,%xmm7
980 psrlq $6,%xmm0
981 paddq %xmm6,%xmm4
982 movdqa %xmm3,%xmm6
983 psrlq $19,%xmm7
984 psllq $3,%xmm6
985 pxor %xmm7,%xmm0
986 psrlq $42,%xmm7
987 pxor %xmm6,%xmm0
988 psllq $42,%xmm6
989 pxor %xmm7,%xmm0
990 movdqa 32(%edx),%xmm7
991 pxor %xmm6,%xmm0
992 movdqa 64(%ebp),%xmm6
993 movq %mm4,%mm1
994 paddq %xmm0,%xmm4
995 movq -64(%edx),%mm7
996 pxor %mm6,%mm5
997 psrlq $14,%mm1
998 movq %mm4,32(%esp)
999 paddq %xmm4,%xmm6
1000 pand %mm4,%mm5
1001 psllq $23,%mm4
1002 paddq %mm3,%mm0
1003 movq %mm1,%mm3
1004 psrlq $4,%mm1
1005 pxor %mm6,%mm5
1006 pxor %mm4,%mm3
1007 psllq $23,%mm4
1008 pxor %mm1,%mm3
1009 movq %mm0,(%esp)
1010 paddq %mm5,%mm7
1011 pxor %mm4,%mm3
1012 psrlq $23,%mm1
1013 paddq 56(%esp),%mm7
1014 pxor %mm1,%mm3
1015 psllq $4,%mm4
1016 pxor %mm4,%mm3
1017 movq 24(%esp),%mm4
1018 paddq %mm7,%mm3
1019 movq %mm0,%mm5
1020 psrlq $28,%mm5
1021 paddq %mm3,%mm4
1022 movq %mm0,%mm6
1023 movq %mm5,%mm7
1024 psllq $25,%mm6
1025 movq 8(%esp),%mm1
1026 psrlq $6,%mm5
1027 pxor %mm6,%mm7
1028 psllq $5,%mm6
1029 pxor %mm5,%mm7
1030 pxor %mm1,%mm0
1031 psrlq $5,%mm5
1032 pxor %mm6,%mm7
1033 pand %mm0,%mm2
1034 psllq $6,%mm6
1035 pxor %mm5,%mm7
1036 pxor %mm1,%mm2
1037 pxor %mm7,%mm6
1038 movq 32(%esp),%mm5
1039 paddq %mm6,%mm2
1040 movq 40(%esp),%mm6
1041 movq %mm4,%mm1
1042 movq -56(%edx),%mm7
1043 pxor %mm6,%mm5
1044 psrlq $14,%mm1
1045 movq %mm4,24(%esp)
1046 pand %mm4,%mm5
1047 psllq $23,%mm4
1048 paddq %mm3,%mm2
1049 movq %mm1,%mm3
1050 psrlq $4,%mm1
1051 pxor %mm6,%mm5
1052 pxor %mm4,%mm3
1053 psllq $23,%mm4
1054 pxor %mm1,%mm3
1055 movq %mm2,56(%esp)
1056 paddq %mm5,%mm7
1057 pxor %mm4,%mm3
1058 psrlq $23,%mm1
1059 paddq 48(%esp),%mm7
1060 pxor %mm1,%mm3
1061 psllq $4,%mm4
1062 pxor %mm4,%mm3
1063 movq 16(%esp),%mm4
1064 paddq %mm7,%mm3
1065 movq %mm2,%mm5
1066 psrlq $28,%mm5
1067 paddq %mm3,%mm4
1068 movq %mm2,%mm6
1069 movq %mm5,%mm7
1070 psllq $25,%mm6
1071 movq (%esp),%mm1
1072 psrlq $6,%mm5
1073 pxor %mm6,%mm7
1074 psllq $5,%mm6
1075 pxor %mm5,%mm7
1076 pxor %mm1,%mm2
1077 psrlq $5,%mm5
1078 pxor %mm6,%mm7
1079 pand %mm2,%mm0
1080 psllq $6,%mm6
1081 pxor %mm5,%mm7
1082 pxor %mm1,%mm0
1083 pxor %mm7,%mm6
1084 movq 24(%esp),%mm5
1085 paddq %mm6,%mm0
1086 movq 32(%esp),%mm6
1087 movdqa %xmm6,-64(%edx)
1088 movdqa %xmm2,%xmm0
1089 movdqa %xmm7,%xmm6
1090.byte 102,15,58,15,253,8
1091 movdqa %xmm1,16(%edx)
1092.byte 102,15,58,15,193,8
1093 movdqa %xmm7,%xmm1
1094 psrlq $7,%xmm7
1095 paddq %xmm0,%xmm5
1096 movdqa %xmm1,%xmm0
1097 psrlq $1,%xmm1
1098 psllq $56,%xmm0
1099 pxor %xmm1,%xmm7
1100 psrlq $7,%xmm1
1101 pxor %xmm0,%xmm7
1102 psllq $7,%xmm0
1103 pxor %xmm1,%xmm7
1104 movdqa %xmm4,%xmm1
1105 pxor %xmm0,%xmm7
1106 movdqa %xmm4,%xmm0
1107 psrlq $6,%xmm1
1108 paddq %xmm7,%xmm5
1109 movdqa %xmm4,%xmm7
1110 psrlq $19,%xmm0
1111 psllq $3,%xmm7
1112 pxor %xmm0,%xmm1
1113 psrlq $42,%xmm0
1114 pxor %xmm7,%xmm1
1115 psllq $42,%xmm7
1116 pxor %xmm0,%xmm1
1117 movdqa 48(%edx),%xmm0
1118 pxor %xmm7,%xmm1
1119 movdqa 80(%ebp),%xmm7
1120 movq %mm4,%mm1
1121 paddq %xmm1,%xmm5
1122 movq -48(%edx),%mm7
1123 pxor %mm6,%mm5
1124 psrlq $14,%mm1
1125 movq %mm4,16(%esp)
1126 paddq %xmm5,%xmm7
1127 pand %mm4,%mm5
1128 psllq $23,%mm4
1129 paddq %mm3,%mm0
1130 movq %mm1,%mm3
1131 psrlq $4,%mm1
1132 pxor %mm6,%mm5
1133 pxor %mm4,%mm3
1134 psllq $23,%mm4
1135 pxor %mm1,%mm3
1136 movq %mm0,48(%esp)
1137 paddq %mm5,%mm7
1138 pxor %mm4,%mm3
1139 psrlq $23,%mm1
1140 paddq 40(%esp),%mm7
1141 pxor %mm1,%mm3
1142 psllq $4,%mm4
1143 pxor %mm4,%mm3
1144 movq 8(%esp),%mm4
1145 paddq %mm7,%mm3
1146 movq %mm0,%mm5
1147 psrlq $28,%mm5
1148 paddq %mm3,%mm4
1149 movq %mm0,%mm6
1150 movq %mm5,%mm7
1151 psllq $25,%mm6
1152 movq 56(%esp),%mm1
1153 psrlq $6,%mm5
1154 pxor %mm6,%mm7
1155 psllq $5,%mm6
1156 pxor %mm5,%mm7
1157 pxor %mm1,%mm0
1158 psrlq $5,%mm5
1159 pxor %mm6,%mm7
1160 pand %mm0,%mm2
1161 psllq $6,%mm6
1162 pxor %mm5,%mm7
1163 pxor %mm1,%mm2
1164 pxor %mm7,%mm6
1165 movq 16(%esp),%mm5
1166 paddq %mm6,%mm2
1167 movq 24(%esp),%mm6
1168 movq %mm4,%mm1
1169 movq -40(%edx),%mm7
1170 pxor %mm6,%mm5
1171 psrlq $14,%mm1
1172 movq %mm4,8(%esp)
1173 pand %mm4,%mm5
1174 psllq $23,%mm4
1175 paddq %mm3,%mm2
1176 movq %mm1,%mm3
1177 psrlq $4,%mm1
1178 pxor %mm6,%mm5
1179 pxor %mm4,%mm3
1180 psllq $23,%mm4
1181 pxor %mm1,%mm3
1182 movq %mm2,40(%esp)
1183 paddq %mm5,%mm7
1184 pxor %mm4,%mm3
1185 psrlq $23,%mm1
1186 paddq 32(%esp),%mm7
1187 pxor %mm1,%mm3
1188 psllq $4,%mm4
1189 pxor %mm4,%mm3
1190 movq (%esp),%mm4
1191 paddq %mm7,%mm3
1192 movq %mm2,%mm5
1193 psrlq $28,%mm5
1194 paddq %mm3,%mm4
1195 movq %mm2,%mm6
1196 movq %mm5,%mm7
1197 psllq $25,%mm6
1198 movq 48(%esp),%mm1
1199 psrlq $6,%mm5
1200 pxor %mm6,%mm7
1201 psllq $5,%mm6
1202 pxor %mm5,%mm7
1203 pxor %mm1,%mm2
1204 psrlq $5,%mm5
1205 pxor %mm6,%mm7
1206 pand %mm2,%mm0
1207 psllq $6,%mm6
1208 pxor %mm5,%mm7
1209 pxor %mm1,%mm0
1210 pxor %mm7,%mm6
1211 movq 8(%esp),%mm5
1212 paddq %mm6,%mm0
1213 movq 16(%esp),%mm6
1214 movdqa %xmm7,-48(%edx)
1215 movdqa %xmm3,%xmm1
1216 movdqa %xmm0,%xmm7
1217.byte 102,15,58,15,198,8
1218 movdqa %xmm2,32(%edx)
1219.byte 102,15,58,15,202,8
1220 movdqa %xmm0,%xmm2
1221 psrlq $7,%xmm0
1222 paddq %xmm1,%xmm6
1223 movdqa %xmm2,%xmm1
1224 psrlq $1,%xmm2
1225 psllq $56,%xmm1
1226 pxor %xmm2,%xmm0
1227 psrlq $7,%xmm2
1228 pxor %xmm1,%xmm0
1229 psllq $7,%xmm1
1230 pxor %xmm2,%xmm0
1231 movdqa %xmm5,%xmm2
1232 pxor %xmm1,%xmm0
1233 movdqa %xmm5,%xmm1
1234 psrlq $6,%xmm2
1235 paddq %xmm0,%xmm6
1236 movdqa %xmm5,%xmm0
1237 psrlq $19,%xmm1
1238 psllq $3,%xmm0
1239 pxor %xmm1,%xmm2
1240 psrlq $42,%xmm1
1241 pxor %xmm0,%xmm2
1242 psllq $42,%xmm0
1243 pxor %xmm1,%xmm2
1244 movdqa (%edx),%xmm1
1245 pxor %xmm0,%xmm2
1246 movdqa 96(%ebp),%xmm0
1247 movq %mm4,%mm1
1248 paddq %xmm2,%xmm6
1249 movq -32(%edx),%mm7
1250 pxor %mm6,%mm5
1251 psrlq $14,%mm1
1252 movq %mm4,(%esp)
1253 paddq %xmm6,%xmm0
1254 pand %mm4,%mm5
1255 psllq $23,%mm4
1256 paddq %mm3,%mm0
1257 movq %mm1,%mm3
1258 psrlq $4,%mm1
1259 pxor %mm6,%mm5
1260 pxor %mm4,%mm3
1261 psllq $23,%mm4
1262 pxor %mm1,%mm3
1263 movq %mm0,32(%esp)
1264 paddq %mm5,%mm7
1265 pxor %mm4,%mm3
1266 psrlq $23,%mm1
1267 paddq 24(%esp),%mm7
1268 pxor %mm1,%mm3
1269 psllq $4,%mm4
1270 pxor %mm4,%mm3
1271 movq 56(%esp),%mm4
1272 paddq %mm7,%mm3
1273 movq %mm0,%mm5
1274 psrlq $28,%mm5
1275 paddq %mm3,%mm4
1276 movq %mm0,%mm6
1277 movq %mm5,%mm7
1278 psllq $25,%mm6
1279 movq 40(%esp),%mm1
1280 psrlq $6,%mm5
1281 pxor %mm6,%mm7
1282 psllq $5,%mm6
1283 pxor %mm5,%mm7
1284 pxor %mm1,%mm0
1285 psrlq $5,%mm5
1286 pxor %mm6,%mm7
1287 pand %mm0,%mm2
1288 psllq $6,%mm6
1289 pxor %mm5,%mm7
1290 pxor %mm1,%mm2
1291 pxor %mm7,%mm6
1292 movq (%esp),%mm5
1293 paddq %mm6,%mm2
1294 movq 8(%esp),%mm6
1295 movq %mm4,%mm1
1296 movq -24(%edx),%mm7
1297 pxor %mm6,%mm5
1298 psrlq $14,%mm1
1299 movq %mm4,56(%esp)
1300 pand %mm4,%mm5
1301 psllq $23,%mm4
1302 paddq %mm3,%mm2
1303 movq %mm1,%mm3
1304 psrlq $4,%mm1
1305 pxor %mm6,%mm5
1306 pxor %mm4,%mm3
1307 psllq $23,%mm4
1308 pxor %mm1,%mm3
1309 movq %mm2,24(%esp)
1310 paddq %mm5,%mm7
1311 pxor %mm4,%mm3
1312 psrlq $23,%mm1
1313 paddq 16(%esp),%mm7
1314 pxor %mm1,%mm3
1315 psllq $4,%mm4
1316 pxor %mm4,%mm3
1317 movq 48(%esp),%mm4
1318 paddq %mm7,%mm3
1319 movq %mm2,%mm5
1320 psrlq $28,%mm5
1321 paddq %mm3,%mm4
1322 movq %mm2,%mm6
1323 movq %mm5,%mm7
1324 psllq $25,%mm6
1325 movq 32(%esp),%mm1
1326 psrlq $6,%mm5
1327 pxor %mm6,%mm7
1328 psllq $5,%mm6
1329 pxor %mm5,%mm7
1330 pxor %mm1,%mm2
1331 psrlq $5,%mm5
1332 pxor %mm6,%mm7
1333 pand %mm2,%mm0
1334 psllq $6,%mm6
1335 pxor %mm5,%mm7
1336 pxor %mm1,%mm0
1337 pxor %mm7,%mm6
1338 movq 56(%esp),%mm5
1339 paddq %mm6,%mm0
1340 movq (%esp),%mm6
1341 movdqa %xmm0,-32(%edx)
1342 movdqa %xmm4,%xmm2
1343 movdqa %xmm1,%xmm0
1344.byte 102,15,58,15,207,8
1345 movdqa %xmm3,48(%edx)
1346.byte 102,15,58,15,211,8
1347 movdqa %xmm1,%xmm3
1348 psrlq $7,%xmm1
1349 paddq %xmm2,%xmm7
1350 movdqa %xmm3,%xmm2
1351 psrlq $1,%xmm3
1352 psllq $56,%xmm2
1353 pxor %xmm3,%xmm1
1354 psrlq $7,%xmm3
1355 pxor %xmm2,%xmm1
1356 psllq $7,%xmm2
1357 pxor %xmm3,%xmm1
1358 movdqa %xmm6,%xmm3
1359 pxor %xmm2,%xmm1
1360 movdqa %xmm6,%xmm2
1361 psrlq $6,%xmm3
1362 paddq %xmm1,%xmm7
1363 movdqa %xmm6,%xmm1
1364 psrlq $19,%xmm2
1365 psllq $3,%xmm1
1366 pxor %xmm2,%xmm3
1367 psrlq $42,%xmm2
1368 pxor %xmm1,%xmm3
1369 psllq $42,%xmm1
1370 pxor %xmm2,%xmm3
1371 movdqa 16(%edx),%xmm2
1372 pxor %xmm1,%xmm3
1373 movdqa 112(%ebp),%xmm1
1374 movq %mm4,%mm1
1375 paddq %xmm3,%xmm7
1376 movq -16(%edx),%mm7
1377 pxor %mm6,%mm5
1378 psrlq $14,%mm1
1379 movq %mm4,48(%esp)
1380 paddq %xmm7,%xmm1
1381 pand %mm4,%mm5
1382 psllq $23,%mm4
1383 paddq %mm3,%mm0
1384 movq %mm1,%mm3
1385 psrlq $4,%mm1
1386 pxor %mm6,%mm5
1387 pxor %mm4,%mm3
1388 psllq $23,%mm4
1389 pxor %mm1,%mm3
1390 movq %mm0,16(%esp)
1391 paddq %mm5,%mm7
1392 pxor %mm4,%mm3
1393 psrlq $23,%mm1
1394 paddq 8(%esp),%mm7
1395 pxor %mm1,%mm3
1396 psllq $4,%mm4
1397 pxor %mm4,%mm3
1398 movq 40(%esp),%mm4
1399 paddq %mm7,%mm3
1400 movq %mm0,%mm5
1401 psrlq $28,%mm5
1402 paddq %mm3,%mm4
1403 movq %mm0,%mm6
1404 movq %mm5,%mm7
1405 psllq $25,%mm6
1406 movq 24(%esp),%mm1
1407 psrlq $6,%mm5
1408 pxor %mm6,%mm7
1409 psllq $5,%mm6
1410 pxor %mm5,%mm7
1411 pxor %mm1,%mm0
1412 psrlq $5,%mm5
1413 pxor %mm6,%mm7
1414 pand %mm0,%mm2
1415 psllq $6,%mm6
1416 pxor %mm5,%mm7
1417 pxor %mm1,%mm2
1418 pxor %mm7,%mm6
1419 movq 48(%esp),%mm5
1420 paddq %mm6,%mm2
1421 movq 56(%esp),%mm6
1422 movq %mm4,%mm1
1423 movq -8(%edx),%mm7
1424 pxor %mm6,%mm5
1425 psrlq $14,%mm1
1426 movq %mm4,40(%esp)
1427 pand %mm4,%mm5
1428 psllq $23,%mm4
1429 paddq %mm3,%mm2
1430 movq %mm1,%mm3
1431 psrlq $4,%mm1
1432 pxor %mm6,%mm5
1433 pxor %mm4,%mm3
1434 psllq $23,%mm4
1435 pxor %mm1,%mm3
1436 movq %mm2,8(%esp)
1437 paddq %mm5,%mm7
1438 pxor %mm4,%mm3
1439 psrlq $23,%mm1
1440 paddq (%esp),%mm7
1441 pxor %mm1,%mm3
1442 psllq $4,%mm4
1443 pxor %mm4,%mm3
1444 movq 32(%esp),%mm4
1445 paddq %mm7,%mm3
1446 movq %mm2,%mm5
1447 psrlq $28,%mm5
1448 paddq %mm3,%mm4
1449 movq %mm2,%mm6
1450 movq %mm5,%mm7
1451 psllq $25,%mm6
1452 movq 16(%esp),%mm1
1453 psrlq $6,%mm5
1454 pxor %mm6,%mm7
1455 psllq $5,%mm6
1456 pxor %mm5,%mm7
1457 pxor %mm1,%mm2
1458 psrlq $5,%mm5
1459 pxor %mm6,%mm7
1460 pand %mm2,%mm0
1461 psllq $6,%mm6
1462 pxor %mm5,%mm7
1463 pxor %mm1,%mm0
1464 pxor %mm7,%mm6
1465 movq 40(%esp),%mm5
1466 paddq %mm6,%mm0
1467 movq 48(%esp),%mm6
1468 movdqa %xmm1,-16(%edx)
1469 leal 128(%ebp),%ebp
1470 decl %ecx
1471 jnz L00800_47_ssse3
1472 movdqa (%ebp),%xmm1
1473 leal -640(%ebp),%ebp
1474 movdqu (%ebx),%xmm0
1475.byte 102,15,56,0,193
1476 movdqa (%ebp),%xmm3
1477 movdqa %xmm1,%xmm2
1478 movdqu 16(%ebx),%xmm1
1479 paddq %xmm0,%xmm3
1480.byte 102,15,56,0,202
1481 movq %mm4,%mm1
1482 movq -128(%edx),%mm7
1483 pxor %mm6,%mm5
1484 psrlq $14,%mm1
1485 movq %mm4,32(%esp)
1486 pand %mm4,%mm5
1487 psllq $23,%mm4
1488 paddq %mm3,%mm0
1489 movq %mm1,%mm3
1490 psrlq $4,%mm1
1491 pxor %mm6,%mm5
1492 pxor %mm4,%mm3
1493 psllq $23,%mm4
1494 pxor %mm1,%mm3
1495 movq %mm0,(%esp)
1496 paddq %mm5,%mm7
1497 pxor %mm4,%mm3
1498 psrlq $23,%mm1
1499 paddq 56(%esp),%mm7
1500 pxor %mm1,%mm3
1501 psllq $4,%mm4
1502 pxor %mm4,%mm3
1503 movq 24(%esp),%mm4
1504 paddq %mm7,%mm3
1505 movq %mm0,%mm5
1506 psrlq $28,%mm5
1507 paddq %mm3,%mm4
1508 movq %mm0,%mm6
1509 movq %mm5,%mm7
1510 psllq $25,%mm6
1511 movq 8(%esp),%mm1
1512 psrlq $6,%mm5
1513 pxor %mm6,%mm7
1514 psllq $5,%mm6
1515 pxor %mm5,%mm7
1516 pxor %mm1,%mm0
1517 psrlq $5,%mm5
1518 pxor %mm6,%mm7
1519 pand %mm0,%mm2
1520 psllq $6,%mm6
1521 pxor %mm5,%mm7
1522 pxor %mm1,%mm2
1523 pxor %mm7,%mm6
1524 movq 32(%esp),%mm5
1525 paddq %mm6,%mm2
1526 movq 40(%esp),%mm6
1527 movq %mm4,%mm1
1528 movq -120(%edx),%mm7
1529 pxor %mm6,%mm5
1530 psrlq $14,%mm1
1531 movq %mm4,24(%esp)
1532 pand %mm4,%mm5
1533 psllq $23,%mm4
1534 paddq %mm3,%mm2
1535 movq %mm1,%mm3
1536 psrlq $4,%mm1
1537 pxor %mm6,%mm5
1538 pxor %mm4,%mm3
1539 psllq $23,%mm4
1540 pxor %mm1,%mm3
1541 movq %mm2,56(%esp)
1542 paddq %mm5,%mm7
1543 pxor %mm4,%mm3
1544 psrlq $23,%mm1
1545 paddq 48(%esp),%mm7
1546 pxor %mm1,%mm3
1547 psllq $4,%mm4
1548 pxor %mm4,%mm3
1549 movq 16(%esp),%mm4
1550 paddq %mm7,%mm3
1551 movq %mm2,%mm5
1552 psrlq $28,%mm5
1553 paddq %mm3,%mm4
1554 movq %mm2,%mm6
1555 movq %mm5,%mm7
1556 psllq $25,%mm6
1557 movq (%esp),%mm1
1558 psrlq $6,%mm5
1559 pxor %mm6,%mm7
1560 psllq $5,%mm6
1561 pxor %mm5,%mm7
1562 pxor %mm1,%mm2
1563 psrlq $5,%mm5
1564 pxor %mm6,%mm7
1565 pand %mm2,%mm0
1566 psllq $6,%mm6
1567 pxor %mm5,%mm7
1568 pxor %mm1,%mm0
1569 pxor %mm7,%mm6
1570 movq 24(%esp),%mm5
1571 paddq %mm6,%mm0
1572 movq 32(%esp),%mm6
1573 movdqa %xmm3,-128(%edx)
1574 movdqa 16(%ebp),%xmm4
1575 movdqa %xmm2,%xmm3
1576 movdqu 32(%ebx),%xmm2
1577 paddq %xmm1,%xmm4
1578.byte 102,15,56,0,211
1579 movq %mm4,%mm1
1580 movq -112(%edx),%mm7
1581 pxor %mm6,%mm5
1582 psrlq $14,%mm1
1583 movq %mm4,16(%esp)
1584 pand %mm4,%mm5
1585 psllq $23,%mm4
1586 paddq %mm3,%mm0
1587 movq %mm1,%mm3
1588 psrlq $4,%mm1
1589 pxor %mm6,%mm5
1590 pxor %mm4,%mm3
1591 psllq $23,%mm4
1592 pxor %mm1,%mm3
1593 movq %mm0,48(%esp)
1594 paddq %mm5,%mm7
1595 pxor %mm4,%mm3
1596 psrlq $23,%mm1
1597 paddq 40(%esp),%mm7
1598 pxor %mm1,%mm3
1599 psllq $4,%mm4
1600 pxor %mm4,%mm3
1601 movq 8(%esp),%mm4
1602 paddq %mm7,%mm3
1603 movq %mm0,%mm5
1604 psrlq $28,%mm5
1605 paddq %mm3,%mm4
1606 movq %mm0,%mm6
1607 movq %mm5,%mm7
1608 psllq $25,%mm6
1609 movq 56(%esp),%mm1
1610 psrlq $6,%mm5
1611 pxor %mm6,%mm7
1612 psllq $5,%mm6
1613 pxor %mm5,%mm7
1614 pxor %mm1,%mm0
1615 psrlq $5,%mm5
1616 pxor %mm6,%mm7
1617 pand %mm0,%mm2
1618 psllq $6,%mm6
1619 pxor %mm5,%mm7
1620 pxor %mm1,%mm2
1621 pxor %mm7,%mm6
1622 movq 16(%esp),%mm5
1623 paddq %mm6,%mm2
1624 movq 24(%esp),%mm6
1625 movq %mm4,%mm1
1626 movq -104(%edx),%mm7
1627 pxor %mm6,%mm5
1628 psrlq $14,%mm1
1629 movq %mm4,8(%esp)
1630 pand %mm4,%mm5
1631 psllq $23,%mm4
1632 paddq %mm3,%mm2
1633 movq %mm1,%mm3
1634 psrlq $4,%mm1
1635 pxor %mm6,%mm5
1636 pxor %mm4,%mm3
1637 psllq $23,%mm4
1638 pxor %mm1,%mm3
1639 movq %mm2,40(%esp)
1640 paddq %mm5,%mm7
1641 pxor %mm4,%mm3
1642 psrlq $23,%mm1
1643 paddq 32(%esp),%mm7
1644 pxor %mm1,%mm3
1645 psllq $4,%mm4
1646 pxor %mm4,%mm3
1647 movq (%esp),%mm4
1648 paddq %mm7,%mm3
1649 movq %mm2,%mm5
1650 psrlq $28,%mm5
1651 paddq %mm3,%mm4
1652 movq %mm2,%mm6
1653 movq %mm5,%mm7
1654 psllq $25,%mm6
1655 movq 48(%esp),%mm1
1656 psrlq $6,%mm5
1657 pxor %mm6,%mm7
1658 psllq $5,%mm6
1659 pxor %mm5,%mm7
1660 pxor %mm1,%mm2
1661 psrlq $5,%mm5
1662 pxor %mm6,%mm7
1663 pand %mm2,%mm0
1664 psllq $6,%mm6
1665 pxor %mm5,%mm7
1666 pxor %mm1,%mm0
1667 pxor %mm7,%mm6
1668 movq 8(%esp),%mm5
1669 paddq %mm6,%mm0
1670 movq 16(%esp),%mm6
1671 movdqa %xmm4,-112(%edx)
1672 movdqa 32(%ebp),%xmm5
1673 movdqa %xmm3,%xmm4
1674 movdqu 48(%ebx),%xmm3
1675 paddq %xmm2,%xmm5
1676.byte 102,15,56,0,220
1677 movq %mm4,%mm1
1678 movq -96(%edx),%mm7
1679 pxor %mm6,%mm5
1680 psrlq $14,%mm1
1681 movq %mm4,(%esp)
1682 pand %mm4,%mm5
1683 psllq $23,%mm4
1684 paddq %mm3,%mm0
1685 movq %mm1,%mm3
1686 psrlq $4,%mm1
1687 pxor %mm6,%mm5
1688 pxor %mm4,%mm3
1689 psllq $23,%mm4
1690 pxor %mm1,%mm3
1691 movq %mm0,32(%esp)
1692 paddq %mm5,%mm7
1693 pxor %mm4,%mm3
1694 psrlq $23,%mm1
1695 paddq 24(%esp),%mm7
1696 pxor %mm1,%mm3
1697 psllq $4,%mm4
1698 pxor %mm4,%mm3
1699 movq 56(%esp),%mm4
1700 paddq %mm7,%mm3
1701 movq %mm0,%mm5
1702 psrlq $28,%mm5
1703 paddq %mm3,%mm4
1704 movq %mm0,%mm6
1705 movq %mm5,%mm7
1706 psllq $25,%mm6
1707 movq 40(%esp),%mm1
1708 psrlq $6,%mm5
1709 pxor %mm6,%mm7
1710 psllq $5,%mm6
1711 pxor %mm5,%mm7
1712 pxor %mm1,%mm0
1713 psrlq $5,%mm5
1714 pxor %mm6,%mm7
1715 pand %mm0,%mm2
1716 psllq $6,%mm6
1717 pxor %mm5,%mm7
1718 pxor %mm1,%mm2
1719 pxor %mm7,%mm6
1720 movq (%esp),%mm5
1721 paddq %mm6,%mm2
1722 movq 8(%esp),%mm6
1723 movq %mm4,%mm1
1724 movq -88(%edx),%mm7
1725 pxor %mm6,%mm5
1726 psrlq $14,%mm1
1727 movq %mm4,56(%esp)
1728 pand %mm4,%mm5
1729 psllq $23,%mm4
1730 paddq %mm3,%mm2
1731 movq %mm1,%mm3
1732 psrlq $4,%mm1
1733 pxor %mm6,%mm5
1734 pxor %mm4,%mm3
1735 psllq $23,%mm4
1736 pxor %mm1,%mm3
1737 movq %mm2,24(%esp)
1738 paddq %mm5,%mm7
1739 pxor %mm4,%mm3
1740 psrlq $23,%mm1
1741 paddq 16(%esp),%mm7
1742 pxor %mm1,%mm3
1743 psllq $4,%mm4
1744 pxor %mm4,%mm3
1745 movq 48(%esp),%mm4
1746 paddq %mm7,%mm3
1747 movq %mm2,%mm5
1748 psrlq $28,%mm5
1749 paddq %mm3,%mm4
1750 movq %mm2,%mm6
1751 movq %mm5,%mm7
1752 psllq $25,%mm6
1753 movq 32(%esp),%mm1
1754 psrlq $6,%mm5
1755 pxor %mm6,%mm7
1756 psllq $5,%mm6
1757 pxor %mm5,%mm7
1758 pxor %mm1,%mm2
1759 psrlq $5,%mm5
1760 pxor %mm6,%mm7
1761 pand %mm2,%mm0
1762 psllq $6,%mm6
1763 pxor %mm5,%mm7
1764 pxor %mm1,%mm0
1765 pxor %mm7,%mm6
1766 movq 56(%esp),%mm5
1767 paddq %mm6,%mm0
1768 movq (%esp),%mm6
1769 movdqa %xmm5,-96(%edx)
1770 movdqa 48(%ebp),%xmm6
1771 movdqa %xmm4,%xmm5
1772 movdqu 64(%ebx),%xmm4
1773 paddq %xmm3,%xmm6
1774.byte 102,15,56,0,229
1775 movq %mm4,%mm1
1776 movq -80(%edx),%mm7
1777 pxor %mm6,%mm5
1778 psrlq $14,%mm1
1779 movq %mm4,48(%esp)
1780 pand %mm4,%mm5
1781 psllq $23,%mm4
1782 paddq %mm3,%mm0
1783 movq %mm1,%mm3
1784 psrlq $4,%mm1
1785 pxor %mm6,%mm5
1786 pxor %mm4,%mm3
1787 psllq $23,%mm4
1788 pxor %mm1,%mm3
1789 movq %mm0,16(%esp)
1790 paddq %mm5,%mm7
1791 pxor %mm4,%mm3
1792 psrlq $23,%mm1
1793 paddq 8(%esp),%mm7
1794 pxor %mm1,%mm3
1795 psllq $4,%mm4
1796 pxor %mm4,%mm3
1797 movq 40(%esp),%mm4
1798 paddq %mm7,%mm3
1799 movq %mm0,%mm5
1800 psrlq $28,%mm5
1801 paddq %mm3,%mm4
1802 movq %mm0,%mm6
1803 movq %mm5,%mm7
1804 psllq $25,%mm6
1805 movq 24(%esp),%mm1
1806 psrlq $6,%mm5
1807 pxor %mm6,%mm7
1808 psllq $5,%mm6
1809 pxor %mm5,%mm7
1810 pxor %mm1,%mm0
1811 psrlq $5,%mm5
1812 pxor %mm6,%mm7
1813 pand %mm0,%mm2
1814 psllq $6,%mm6
1815 pxor %mm5,%mm7
1816 pxor %mm1,%mm2
1817 pxor %mm7,%mm6
1818 movq 48(%esp),%mm5
1819 paddq %mm6,%mm2
1820 movq 56(%esp),%mm6
1821 movq %mm4,%mm1
1822 movq -72(%edx),%mm7
1823 pxor %mm6,%mm5
1824 psrlq $14,%mm1
1825 movq %mm4,40(%esp)
1826 pand %mm4,%mm5
1827 psllq $23,%mm4
1828 paddq %mm3,%mm2
1829 movq %mm1,%mm3
1830 psrlq $4,%mm1
1831 pxor %mm6,%mm5
1832 pxor %mm4,%mm3
1833 psllq $23,%mm4
1834 pxor %mm1,%mm3
1835 movq %mm2,8(%esp)
1836 paddq %mm5,%mm7
1837 pxor %mm4,%mm3
1838 psrlq $23,%mm1
1839 paddq (%esp),%mm7
1840 pxor %mm1,%mm3
1841 psllq $4,%mm4
1842 pxor %mm4,%mm3
1843 movq 32(%esp),%mm4
1844 paddq %mm7,%mm3
1845 movq %mm2,%mm5
1846 psrlq $28,%mm5
1847 paddq %mm3,%mm4
1848 movq %mm2,%mm6
1849 movq %mm5,%mm7
1850 psllq $25,%mm6
1851 movq 16(%esp),%mm1
1852 psrlq $6,%mm5
1853 pxor %mm6,%mm7
1854 psllq $5,%mm6
1855 pxor %mm5,%mm7
1856 pxor %mm1,%mm2
1857 psrlq $5,%mm5
1858 pxor %mm6,%mm7
1859 pand %mm2,%mm0
1860 psllq $6,%mm6
1861 pxor %mm5,%mm7
1862 pxor %mm1,%mm0
1863 pxor %mm7,%mm6
1864 movq 40(%esp),%mm5
1865 paddq %mm6,%mm0
1866 movq 48(%esp),%mm6
1867 movdqa %xmm6,-80(%edx)
1868 movdqa 64(%ebp),%xmm7
1869 movdqa %xmm5,%xmm6
1870 movdqu 80(%ebx),%xmm5
1871 paddq %xmm4,%xmm7
1872.byte 102,15,56,0,238
1873 movq %mm4,%mm1
1874 movq -64(%edx),%mm7
1875 pxor %mm6,%mm5
1876 psrlq $14,%mm1
1877 movq %mm4,32(%esp)
1878 pand %mm4,%mm5
1879 psllq $23,%mm4
1880 paddq %mm3,%mm0
1881 movq %mm1,%mm3
1882 psrlq $4,%mm1
1883 pxor %mm6,%mm5
1884 pxor %mm4,%mm3
1885 psllq $23,%mm4
1886 pxor %mm1,%mm3
1887 movq %mm0,(%esp)
1888 paddq %mm5,%mm7
1889 pxor %mm4,%mm3
1890 psrlq $23,%mm1
1891 paddq 56(%esp),%mm7
1892 pxor %mm1,%mm3
1893 psllq $4,%mm4
1894 pxor %mm4,%mm3
1895 movq 24(%esp),%mm4
1896 paddq %mm7,%mm3
1897 movq %mm0,%mm5
1898 psrlq $28,%mm5
1899 paddq %mm3,%mm4
1900 movq %mm0,%mm6
1901 movq %mm5,%mm7
1902 psllq $25,%mm6
1903 movq 8(%esp),%mm1
1904 psrlq $6,%mm5
1905 pxor %mm6,%mm7
1906 psllq $5,%mm6
1907 pxor %mm5,%mm7
1908 pxor %mm1,%mm0
1909 psrlq $5,%mm5
1910 pxor %mm6,%mm7
1911 pand %mm0,%mm2
1912 psllq $6,%mm6
1913 pxor %mm5,%mm7
1914 pxor %mm1,%mm2
1915 pxor %mm7,%mm6
1916 movq 32(%esp),%mm5
1917 paddq %mm6,%mm2
1918 movq 40(%esp),%mm6
1919 movq %mm4,%mm1
1920 movq -56(%edx),%mm7
1921 pxor %mm6,%mm5
1922 psrlq $14,%mm1
1923 movq %mm4,24(%esp)
1924 pand %mm4,%mm5
1925 psllq $23,%mm4
1926 paddq %mm3,%mm2
1927 movq %mm1,%mm3
1928 psrlq $4,%mm1
1929 pxor %mm6,%mm5
1930 pxor %mm4,%mm3
1931 psllq $23,%mm4
1932 pxor %mm1,%mm3
1933 movq %mm2,56(%esp)
1934 paddq %mm5,%mm7
1935 pxor %mm4,%mm3
1936 psrlq $23,%mm1
1937 paddq 48(%esp),%mm7
1938 pxor %mm1,%mm3
1939 psllq $4,%mm4
1940 pxor %mm4,%mm3
1941 movq 16(%esp),%mm4
1942 paddq %mm7,%mm3
1943 movq %mm2,%mm5
1944 psrlq $28,%mm5
1945 paddq %mm3,%mm4
1946 movq %mm2,%mm6
1947 movq %mm5,%mm7
1948 psllq $25,%mm6
1949 movq (%esp),%mm1
1950 psrlq $6,%mm5
1951 pxor %mm6,%mm7
1952 psllq $5,%mm6
1953 pxor %mm5,%mm7
1954 pxor %mm1,%mm2
1955 psrlq $5,%mm5
1956 pxor %mm6,%mm7
1957 pand %mm2,%mm0
1958 psllq $6,%mm6
1959 pxor %mm5,%mm7
1960 pxor %mm1,%mm0
1961 pxor %mm7,%mm6
1962 movq 24(%esp),%mm5
1963 paddq %mm6,%mm0
1964 movq 32(%esp),%mm6
1965 movdqa %xmm7,-64(%edx)
1966 movdqa %xmm0,(%edx)
1967 movdqa 80(%ebp),%xmm0
1968 movdqa %xmm6,%xmm7
1969 movdqu 96(%ebx),%xmm6
1970 paddq %xmm5,%xmm0
1971.byte 102,15,56,0,247
1972 movq %mm4,%mm1
1973 movq -48(%edx),%mm7
1974 pxor %mm6,%mm5
1975 psrlq $14,%mm1
1976 movq %mm4,16(%esp)
1977 pand %mm4,%mm5
1978 psllq $23,%mm4
1979 paddq %mm3,%mm0
1980 movq %mm1,%mm3
1981 psrlq $4,%mm1
1982 pxor %mm6,%mm5
1983 pxor %mm4,%mm3
1984 psllq $23,%mm4
1985 pxor %mm1,%mm3
1986 movq %mm0,48(%esp)
1987 paddq %mm5,%mm7
1988 pxor %mm4,%mm3
1989 psrlq $23,%mm1
1990 paddq 40(%esp),%mm7
1991 pxor %mm1,%mm3
1992 psllq $4,%mm4
1993 pxor %mm4,%mm3
1994 movq 8(%esp),%mm4
1995 paddq %mm7,%mm3
1996 movq %mm0,%mm5
1997 psrlq $28,%mm5
1998 paddq %mm3,%mm4
1999 movq %mm0,%mm6
2000 movq %mm5,%mm7
2001 psllq $25,%mm6
2002 movq 56(%esp),%mm1
2003 psrlq $6,%mm5
2004 pxor %mm6,%mm7
2005 psllq $5,%mm6
2006 pxor %mm5,%mm7
2007 pxor %mm1,%mm0
2008 psrlq $5,%mm5
2009 pxor %mm6,%mm7
2010 pand %mm0,%mm2
2011 psllq $6,%mm6
2012 pxor %mm5,%mm7
2013 pxor %mm1,%mm2
2014 pxor %mm7,%mm6
2015 movq 16(%esp),%mm5
2016 paddq %mm6,%mm2
2017 movq 24(%esp),%mm6
2018 movq %mm4,%mm1
2019 movq -40(%edx),%mm7
2020 pxor %mm6,%mm5
2021 psrlq $14,%mm1
2022 movq %mm4,8(%esp)
2023 pand %mm4,%mm5
2024 psllq $23,%mm4
2025 paddq %mm3,%mm2
2026 movq %mm1,%mm3
2027 psrlq $4,%mm1
2028 pxor %mm6,%mm5
2029 pxor %mm4,%mm3
2030 psllq $23,%mm4
2031 pxor %mm1,%mm3
2032 movq %mm2,40(%esp)
2033 paddq %mm5,%mm7
2034 pxor %mm4,%mm3
2035 psrlq $23,%mm1
2036 paddq 32(%esp),%mm7
2037 pxor %mm1,%mm3
2038 psllq $4,%mm4
2039 pxor %mm4,%mm3
2040 movq (%esp),%mm4
2041 paddq %mm7,%mm3
2042 movq %mm2,%mm5
2043 psrlq $28,%mm5
2044 paddq %mm3,%mm4
2045 movq %mm2,%mm6
2046 movq %mm5,%mm7
2047 psllq $25,%mm6
2048 movq 48(%esp),%mm1
2049 psrlq $6,%mm5
2050 pxor %mm6,%mm7
2051 psllq $5,%mm6
2052 pxor %mm5,%mm7
2053 pxor %mm1,%mm2
2054 psrlq $5,%mm5
2055 pxor %mm6,%mm7
2056 pand %mm2,%mm0
2057 psllq $6,%mm6
2058 pxor %mm5,%mm7
2059 pxor %mm1,%mm0
2060 pxor %mm7,%mm6
2061 movq 8(%esp),%mm5
2062 paddq %mm6,%mm0
2063 movq 16(%esp),%mm6
2064 movdqa %xmm0,-48(%edx)
2065 movdqa %xmm1,16(%edx)
2066 movdqa 96(%ebp),%xmm1
2067 movdqa %xmm7,%xmm0
2068 movdqu 112(%ebx),%xmm7
2069 paddq %xmm6,%xmm1
2070.byte 102,15,56,0,248
2071 movq %mm4,%mm1
2072 movq -32(%edx),%mm7
2073 pxor %mm6,%mm5
2074 psrlq $14,%mm1
2075 movq %mm4,(%esp)
2076 pand %mm4,%mm5
2077 psllq $23,%mm4
2078 paddq %mm3,%mm0
2079 movq %mm1,%mm3
2080 psrlq $4,%mm1
2081 pxor %mm6,%mm5
2082 pxor %mm4,%mm3
2083 psllq $23,%mm4
2084 pxor %mm1,%mm3
2085 movq %mm0,32(%esp)
2086 paddq %mm5,%mm7
2087 pxor %mm4,%mm3
2088 psrlq $23,%mm1
2089 paddq 24(%esp),%mm7
2090 pxor %mm1,%mm3
2091 psllq $4,%mm4
2092 pxor %mm4,%mm3
2093 movq 56(%esp),%mm4
2094 paddq %mm7,%mm3
2095 movq %mm0,%mm5
2096 psrlq $28,%mm5
2097 paddq %mm3,%mm4
2098 movq %mm0,%mm6
2099 movq %mm5,%mm7
2100 psllq $25,%mm6
2101 movq 40(%esp),%mm1
2102 psrlq $6,%mm5
2103 pxor %mm6,%mm7
2104 psllq $5,%mm6
2105 pxor %mm5,%mm7
2106 pxor %mm1,%mm0
2107 psrlq $5,%mm5
2108 pxor %mm6,%mm7
2109 pand %mm0,%mm2
2110 psllq $6,%mm6
2111 pxor %mm5,%mm7
2112 pxor %mm1,%mm2
2113 pxor %mm7,%mm6
2114 movq (%esp),%mm5
2115 paddq %mm6,%mm2
2116 movq 8(%esp),%mm6
2117 movq %mm4,%mm1
2118 movq -24(%edx),%mm7
2119 pxor %mm6,%mm5
2120 psrlq $14,%mm1
2121 movq %mm4,56(%esp)
2122 pand %mm4,%mm5
2123 psllq $23,%mm4
2124 paddq %mm3,%mm2
2125 movq %mm1,%mm3
2126 psrlq $4,%mm1
2127 pxor %mm6,%mm5
2128 pxor %mm4,%mm3
2129 psllq $23,%mm4
2130 pxor %mm1,%mm3
2131 movq %mm2,24(%esp)
2132 paddq %mm5,%mm7
2133 pxor %mm4,%mm3
2134 psrlq $23,%mm1
2135 paddq 16(%esp),%mm7
2136 pxor %mm1,%mm3
2137 psllq $4,%mm4
2138 pxor %mm4,%mm3
2139 movq 48(%esp),%mm4
2140 paddq %mm7,%mm3
2141 movq %mm2,%mm5
2142 psrlq $28,%mm5
2143 paddq %mm3,%mm4
2144 movq %mm2,%mm6
2145 movq %mm5,%mm7
2146 psllq $25,%mm6
2147 movq 32(%esp),%mm1
2148 psrlq $6,%mm5
2149 pxor %mm6,%mm7
2150 psllq $5,%mm6
2151 pxor %mm5,%mm7
2152 pxor %mm1,%mm2
2153 psrlq $5,%mm5
2154 pxor %mm6,%mm7
2155 pand %mm2,%mm0
2156 psllq $6,%mm6
2157 pxor %mm5,%mm7
2158 pxor %mm1,%mm0
2159 pxor %mm7,%mm6
2160 movq 56(%esp),%mm5
2161 paddq %mm6,%mm0
2162 movq (%esp),%mm6
2163 movdqa %xmm1,-32(%edx)
2164 movdqa %xmm2,32(%edx)
2165 movdqa 112(%ebp),%xmm2
2166 movdqa (%edx),%xmm0
2167 paddq %xmm7,%xmm2
2168 movq %mm4,%mm1
2169 movq -16(%edx),%mm7
2170 pxor %mm6,%mm5
2171 psrlq $14,%mm1
2172 movq %mm4,48(%esp)
2173 pand %mm4,%mm5
2174 psllq $23,%mm4
2175 paddq %mm3,%mm0
2176 movq %mm1,%mm3
2177 psrlq $4,%mm1
2178 pxor %mm6,%mm5
2179 pxor %mm4,%mm3
2180 psllq $23,%mm4
2181 pxor %mm1,%mm3
2182 movq %mm0,16(%esp)
2183 paddq %mm5,%mm7
2184 pxor %mm4,%mm3
2185 psrlq $23,%mm1
2186 paddq 8(%esp),%mm7
2187 pxor %mm1,%mm3
2188 psllq $4,%mm4
2189 pxor %mm4,%mm3
2190 movq 40(%esp),%mm4
2191 paddq %mm7,%mm3
2192 movq %mm0,%mm5
2193 psrlq $28,%mm5
2194 paddq %mm3,%mm4
2195 movq %mm0,%mm6
2196 movq %mm5,%mm7
2197 psllq $25,%mm6
2198 movq 24(%esp),%mm1
2199 psrlq $6,%mm5
2200 pxor %mm6,%mm7
2201 psllq $5,%mm6
2202 pxor %mm5,%mm7
2203 pxor %mm1,%mm0
2204 psrlq $5,%mm5
2205 pxor %mm6,%mm7
2206 pand %mm0,%mm2
2207 psllq $6,%mm6
2208 pxor %mm5,%mm7
2209 pxor %mm1,%mm2
2210 pxor %mm7,%mm6
2211 movq 48(%esp),%mm5
2212 paddq %mm6,%mm2
2213 movq 56(%esp),%mm6
2214 movq %mm4,%mm1
2215 movq -8(%edx),%mm7
2216 pxor %mm6,%mm5
2217 psrlq $14,%mm1
2218 movq %mm4,40(%esp)
2219 pand %mm4,%mm5
2220 psllq $23,%mm4
2221 paddq %mm3,%mm2
2222 movq %mm1,%mm3
2223 psrlq $4,%mm1
2224 pxor %mm6,%mm5
2225 pxor %mm4,%mm3
2226 psllq $23,%mm4
2227 pxor %mm1,%mm3
2228 movq %mm2,8(%esp)
2229 paddq %mm5,%mm7
2230 pxor %mm4,%mm3
2231 psrlq $23,%mm1
2232 paddq (%esp),%mm7
2233 pxor %mm1,%mm3
2234 psllq $4,%mm4
2235 pxor %mm4,%mm3
2236 movq 32(%esp),%mm4
2237 paddq %mm7,%mm3
2238 movq %mm2,%mm5
2239 psrlq $28,%mm5
2240 paddq %mm3,%mm4
2241 movq %mm2,%mm6
2242 movq %mm5,%mm7
2243 psllq $25,%mm6
2244 movq 16(%esp),%mm1
2245 psrlq $6,%mm5
2246 pxor %mm6,%mm7
2247 psllq $5,%mm6
2248 pxor %mm5,%mm7
2249 pxor %mm1,%mm2
2250 psrlq $5,%mm5
2251 pxor %mm6,%mm7
2252 pand %mm2,%mm0
2253 psllq $6,%mm6
2254 pxor %mm5,%mm7
2255 pxor %mm1,%mm0
2256 pxor %mm7,%mm6
2257 movq 40(%esp),%mm5
2258 paddq %mm6,%mm0
2259 movq 48(%esp),%mm6
2260 movdqa %xmm2,-16(%edx)
2261 movq 8(%esp),%mm1
2262 paddq %mm3,%mm0
2263 movq 24(%esp),%mm3
2264 movq 56(%esp),%mm7
2265 pxor %mm1,%mm2
2266 paddq (%esi),%mm0
2267 paddq 8(%esi),%mm1
2268 paddq 16(%esi),%mm2
2269 paddq 24(%esi),%mm3
2270 paddq 32(%esi),%mm4
2271 paddq 40(%esi),%mm5
2272 paddq 48(%esi),%mm6
2273 paddq 56(%esi),%mm7
2274 movq %mm0,(%esi)
2275 movq %mm1,8(%esi)
2276 movq %mm2,16(%esi)
2277 movq %mm3,24(%esi)
2278 movq %mm4,32(%esi)
2279 movq %mm5,40(%esi)
2280 movq %mm6,48(%esi)
2281 movq %mm7,56(%esi)
2282 cmpl %eax,%edi
2283 jb L007loop_ssse3
2284 movl 76(%edx),%esp
2285 emms
2286 popl %edi
2287 popl %esi
2288 popl %ebx
2289 popl %ebp
2290 ret
Adam Langleyd9e397b2015-01-22 14:27:53 -08002291.align 4,0x90
2292L002loop_x86:
2293 movl (%edi),%eax
2294 movl 4(%edi),%ebx
2295 movl 8(%edi),%ecx
2296 movl 12(%edi),%edx
2297 bswap %eax
2298 bswap %ebx
2299 bswap %ecx
2300 bswap %edx
2301 pushl %eax
2302 pushl %ebx
2303 pushl %ecx
2304 pushl %edx
2305 movl 16(%edi),%eax
2306 movl 20(%edi),%ebx
2307 movl 24(%edi),%ecx
2308 movl 28(%edi),%edx
2309 bswap %eax
2310 bswap %ebx
2311 bswap %ecx
2312 bswap %edx
2313 pushl %eax
2314 pushl %ebx
2315 pushl %ecx
2316 pushl %edx
2317 movl 32(%edi),%eax
2318 movl 36(%edi),%ebx
2319 movl 40(%edi),%ecx
2320 movl 44(%edi),%edx
2321 bswap %eax
2322 bswap %ebx
2323 bswap %ecx
2324 bswap %edx
2325 pushl %eax
2326 pushl %ebx
2327 pushl %ecx
2328 pushl %edx
2329 movl 48(%edi),%eax
2330 movl 52(%edi),%ebx
2331 movl 56(%edi),%ecx
2332 movl 60(%edi),%edx
2333 bswap %eax
2334 bswap %ebx
2335 bswap %ecx
2336 bswap %edx
2337 pushl %eax
2338 pushl %ebx
2339 pushl %ecx
2340 pushl %edx
2341 movl 64(%edi),%eax
2342 movl 68(%edi),%ebx
2343 movl 72(%edi),%ecx
2344 movl 76(%edi),%edx
2345 bswap %eax
2346 bswap %ebx
2347 bswap %ecx
2348 bswap %edx
2349 pushl %eax
2350 pushl %ebx
2351 pushl %ecx
2352 pushl %edx
2353 movl 80(%edi),%eax
2354 movl 84(%edi),%ebx
2355 movl 88(%edi),%ecx
2356 movl 92(%edi),%edx
2357 bswap %eax
2358 bswap %ebx
2359 bswap %ecx
2360 bswap %edx
2361 pushl %eax
2362 pushl %ebx
2363 pushl %ecx
2364 pushl %edx
2365 movl 96(%edi),%eax
2366 movl 100(%edi),%ebx
2367 movl 104(%edi),%ecx
2368 movl 108(%edi),%edx
2369 bswap %eax
2370 bswap %ebx
2371 bswap %ecx
2372 bswap %edx
2373 pushl %eax
2374 pushl %ebx
2375 pushl %ecx
2376 pushl %edx
2377 movl 112(%edi),%eax
2378 movl 116(%edi),%ebx
2379 movl 120(%edi),%ecx
2380 movl 124(%edi),%edx
2381 bswap %eax
2382 bswap %ebx
2383 bswap %ecx
2384 bswap %edx
2385 pushl %eax
2386 pushl %ebx
2387 pushl %ecx
2388 pushl %edx
2389 addl $128,%edi
2390 subl $72,%esp
2391 movl %edi,204(%esp)
2392 leal 8(%esp),%edi
2393 movl $16,%ecx
2394.long 2784229001
2395.align 4,0x90
Adam Langleye9ada862015-05-11 17:20:37 -07002396L00900_15_x86:
Adam Langleyd9e397b2015-01-22 14:27:53 -08002397 movl 40(%esp),%ecx
2398 movl 44(%esp),%edx
2399 movl %ecx,%esi
2400 shrl $9,%ecx
2401 movl %edx,%edi
2402 shrl $9,%edx
2403 movl %ecx,%ebx
2404 shll $14,%esi
2405 movl %edx,%eax
2406 shll $14,%edi
2407 xorl %esi,%ebx
2408 shrl $5,%ecx
2409 xorl %edi,%eax
2410 shrl $5,%edx
2411 xorl %ecx,%eax
2412 shll $4,%esi
2413 xorl %edx,%ebx
2414 shll $4,%edi
2415 xorl %esi,%ebx
2416 shrl $4,%ecx
2417 xorl %edi,%eax
2418 shrl $4,%edx
2419 xorl %ecx,%eax
2420 shll $5,%esi
2421 xorl %edx,%ebx
2422 shll $5,%edi
2423 xorl %esi,%eax
2424 xorl %edi,%ebx
2425 movl 48(%esp),%ecx
2426 movl 52(%esp),%edx
2427 movl 56(%esp),%esi
2428 movl 60(%esp),%edi
2429 addl 64(%esp),%eax
2430 adcl 68(%esp),%ebx
2431 xorl %esi,%ecx
2432 xorl %edi,%edx
2433 andl 40(%esp),%ecx
2434 andl 44(%esp),%edx
2435 addl 192(%esp),%eax
2436 adcl 196(%esp),%ebx
2437 xorl %esi,%ecx
2438 xorl %edi,%edx
2439 movl (%ebp),%esi
2440 movl 4(%ebp),%edi
2441 addl %ecx,%eax
2442 adcl %edx,%ebx
2443 movl 32(%esp),%ecx
2444 movl 36(%esp),%edx
2445 addl %esi,%eax
2446 adcl %edi,%ebx
2447 movl %eax,(%esp)
2448 movl %ebx,4(%esp)
2449 addl %ecx,%eax
2450 adcl %edx,%ebx
2451 movl 8(%esp),%ecx
2452 movl 12(%esp),%edx
2453 movl %eax,32(%esp)
2454 movl %ebx,36(%esp)
2455 movl %ecx,%esi
2456 shrl $2,%ecx
2457 movl %edx,%edi
2458 shrl $2,%edx
2459 movl %ecx,%ebx
2460 shll $4,%esi
2461 movl %edx,%eax
2462 shll $4,%edi
2463 xorl %esi,%ebx
2464 shrl $5,%ecx
2465 xorl %edi,%eax
2466 shrl $5,%edx
2467 xorl %ecx,%ebx
2468 shll $21,%esi
2469 xorl %edx,%eax
2470 shll $21,%edi
2471 xorl %esi,%eax
2472 shrl $21,%ecx
2473 xorl %edi,%ebx
2474 shrl $21,%edx
2475 xorl %ecx,%eax
2476 shll $5,%esi
2477 xorl %edx,%ebx
2478 shll $5,%edi
2479 xorl %esi,%eax
2480 xorl %edi,%ebx
2481 movl 8(%esp),%ecx
2482 movl 12(%esp),%edx
2483 movl 16(%esp),%esi
2484 movl 20(%esp),%edi
2485 addl (%esp),%eax
2486 adcl 4(%esp),%ebx
2487 orl %esi,%ecx
2488 orl %edi,%edx
2489 andl 24(%esp),%ecx
2490 andl 28(%esp),%edx
2491 andl 8(%esp),%esi
2492 andl 12(%esp),%edi
2493 orl %esi,%ecx
2494 orl %edi,%edx
2495 addl %ecx,%eax
2496 adcl %edx,%ebx
2497 movl %eax,(%esp)
2498 movl %ebx,4(%esp)
2499 movb (%ebp),%dl
2500 subl $8,%esp
2501 leal 8(%ebp),%ebp
2502 cmpb $148,%dl
Adam Langleye9ada862015-05-11 17:20:37 -07002503 jne L00900_15_x86
Adam Langleyd9e397b2015-01-22 14:27:53 -08002504.align 4,0x90
Adam Langleye9ada862015-05-11 17:20:37 -07002505L01016_79_x86:
Adam Langleyd9e397b2015-01-22 14:27:53 -08002506 movl 312(%esp),%ecx
2507 movl 316(%esp),%edx
2508 movl %ecx,%esi
2509 shrl $1,%ecx
2510 movl %edx,%edi
2511 shrl $1,%edx
2512 movl %ecx,%eax
2513 shll $24,%esi
2514 movl %edx,%ebx
2515 shll $24,%edi
2516 xorl %esi,%ebx
2517 shrl $6,%ecx
2518 xorl %edi,%eax
2519 shrl $6,%edx
2520 xorl %ecx,%eax
2521 shll $7,%esi
2522 xorl %edx,%ebx
2523 shll $1,%edi
2524 xorl %esi,%ebx
2525 shrl $1,%ecx
2526 xorl %edi,%eax
2527 shrl $1,%edx
2528 xorl %ecx,%eax
2529 shll $6,%edi
2530 xorl %edx,%ebx
2531 xorl %edi,%eax
2532 movl %eax,(%esp)
2533 movl %ebx,4(%esp)
2534 movl 208(%esp),%ecx
2535 movl 212(%esp),%edx
2536 movl %ecx,%esi
2537 shrl $6,%ecx
2538 movl %edx,%edi
2539 shrl $6,%edx
2540 movl %ecx,%eax
2541 shll $3,%esi
2542 movl %edx,%ebx
2543 shll $3,%edi
2544 xorl %esi,%eax
2545 shrl $13,%ecx
2546 xorl %edi,%ebx
2547 shrl $13,%edx
2548 xorl %ecx,%eax
2549 shll $10,%esi
2550 xorl %edx,%ebx
2551 shll $10,%edi
2552 xorl %esi,%ebx
2553 shrl $10,%ecx
2554 xorl %edi,%eax
2555 shrl $10,%edx
2556 xorl %ecx,%ebx
2557 shll $13,%edi
2558 xorl %edx,%eax
2559 xorl %edi,%eax
2560 movl 320(%esp),%ecx
2561 movl 324(%esp),%edx
2562 addl (%esp),%eax
2563 adcl 4(%esp),%ebx
2564 movl 248(%esp),%esi
2565 movl 252(%esp),%edi
2566 addl %ecx,%eax
2567 adcl %edx,%ebx
2568 addl %esi,%eax
2569 adcl %edi,%ebx
2570 movl %eax,192(%esp)
2571 movl %ebx,196(%esp)
2572 movl 40(%esp),%ecx
2573 movl 44(%esp),%edx
2574 movl %ecx,%esi
2575 shrl $9,%ecx
2576 movl %edx,%edi
2577 shrl $9,%edx
2578 movl %ecx,%ebx
2579 shll $14,%esi
2580 movl %edx,%eax
2581 shll $14,%edi
2582 xorl %esi,%ebx
2583 shrl $5,%ecx
2584 xorl %edi,%eax
2585 shrl $5,%edx
2586 xorl %ecx,%eax
2587 shll $4,%esi
2588 xorl %edx,%ebx
2589 shll $4,%edi
2590 xorl %esi,%ebx
2591 shrl $4,%ecx
2592 xorl %edi,%eax
2593 shrl $4,%edx
2594 xorl %ecx,%eax
2595 shll $5,%esi
2596 xorl %edx,%ebx
2597 shll $5,%edi
2598 xorl %esi,%eax
2599 xorl %edi,%ebx
2600 movl 48(%esp),%ecx
2601 movl 52(%esp),%edx
2602 movl 56(%esp),%esi
2603 movl 60(%esp),%edi
2604 addl 64(%esp),%eax
2605 adcl 68(%esp),%ebx
2606 xorl %esi,%ecx
2607 xorl %edi,%edx
2608 andl 40(%esp),%ecx
2609 andl 44(%esp),%edx
2610 addl 192(%esp),%eax
2611 adcl 196(%esp),%ebx
2612 xorl %esi,%ecx
2613 xorl %edi,%edx
2614 movl (%ebp),%esi
2615 movl 4(%ebp),%edi
2616 addl %ecx,%eax
2617 adcl %edx,%ebx
2618 movl 32(%esp),%ecx
2619 movl 36(%esp),%edx
2620 addl %esi,%eax
2621 adcl %edi,%ebx
2622 movl %eax,(%esp)
2623 movl %ebx,4(%esp)
2624 addl %ecx,%eax
2625 adcl %edx,%ebx
2626 movl 8(%esp),%ecx
2627 movl 12(%esp),%edx
2628 movl %eax,32(%esp)
2629 movl %ebx,36(%esp)
2630 movl %ecx,%esi
2631 shrl $2,%ecx
2632 movl %edx,%edi
2633 shrl $2,%edx
2634 movl %ecx,%ebx
2635 shll $4,%esi
2636 movl %edx,%eax
2637 shll $4,%edi
2638 xorl %esi,%ebx
2639 shrl $5,%ecx
2640 xorl %edi,%eax
2641 shrl $5,%edx
2642 xorl %ecx,%ebx
2643 shll $21,%esi
2644 xorl %edx,%eax
2645 shll $21,%edi
2646 xorl %esi,%eax
2647 shrl $21,%ecx
2648 xorl %edi,%ebx
2649 shrl $21,%edx
2650 xorl %ecx,%eax
2651 shll $5,%esi
2652 xorl %edx,%ebx
2653 shll $5,%edi
2654 xorl %esi,%eax
2655 xorl %edi,%ebx
2656 movl 8(%esp),%ecx
2657 movl 12(%esp),%edx
2658 movl 16(%esp),%esi
2659 movl 20(%esp),%edi
2660 addl (%esp),%eax
2661 adcl 4(%esp),%ebx
2662 orl %esi,%ecx
2663 orl %edi,%edx
2664 andl 24(%esp),%ecx
2665 andl 28(%esp),%edx
2666 andl 8(%esp),%esi
2667 andl 12(%esp),%edi
2668 orl %esi,%ecx
2669 orl %edi,%edx
2670 addl %ecx,%eax
2671 adcl %edx,%ebx
2672 movl %eax,(%esp)
2673 movl %ebx,4(%esp)
2674 movb (%ebp),%dl
2675 subl $8,%esp
2676 leal 8(%ebp),%ebp
2677 cmpb $23,%dl
Adam Langleye9ada862015-05-11 17:20:37 -07002678 jne L01016_79_x86
Adam Langleyd9e397b2015-01-22 14:27:53 -08002679 movl 840(%esp),%esi
2680 movl 844(%esp),%edi
2681 movl (%esi),%eax
2682 movl 4(%esi),%ebx
2683 movl 8(%esi),%ecx
2684 movl 12(%esi),%edx
2685 addl 8(%esp),%eax
2686 adcl 12(%esp),%ebx
2687 movl %eax,(%esi)
2688 movl %ebx,4(%esi)
2689 addl 16(%esp),%ecx
2690 adcl 20(%esp),%edx
2691 movl %ecx,8(%esi)
2692 movl %edx,12(%esi)
2693 movl 16(%esi),%eax
2694 movl 20(%esi),%ebx
2695 movl 24(%esi),%ecx
2696 movl 28(%esi),%edx
2697 addl 24(%esp),%eax
2698 adcl 28(%esp),%ebx
2699 movl %eax,16(%esi)
2700 movl %ebx,20(%esi)
2701 addl 32(%esp),%ecx
2702 adcl 36(%esp),%edx
2703 movl %ecx,24(%esi)
2704 movl %edx,28(%esi)
2705 movl 32(%esi),%eax
2706 movl 36(%esi),%ebx
2707 movl 40(%esi),%ecx
2708 movl 44(%esi),%edx
2709 addl 40(%esp),%eax
2710 adcl 44(%esp),%ebx
2711 movl %eax,32(%esi)
2712 movl %ebx,36(%esi)
2713 addl 48(%esp),%ecx
2714 adcl 52(%esp),%edx
2715 movl %ecx,40(%esi)
2716 movl %edx,44(%esi)
2717 movl 48(%esi),%eax
2718 movl 52(%esi),%ebx
2719 movl 56(%esi),%ecx
2720 movl 60(%esi),%edx
2721 addl 56(%esp),%eax
2722 adcl 60(%esp),%ebx
2723 movl %eax,48(%esi)
2724 movl %ebx,52(%esi)
2725 addl 64(%esp),%ecx
2726 adcl 68(%esp),%edx
2727 movl %ecx,56(%esi)
2728 movl %edx,60(%esi)
2729 addl $840,%esp
2730 subl $640,%ebp
2731 cmpl 8(%esp),%edi
2732 jb L002loop_x86
2733 movl 12(%esp),%esp
2734 popl %edi
2735 popl %esi
2736 popl %ebx
2737 popl %ebp
2738 ret
2739.align 6,0x90
2740L001K512:
2741.long 3609767458,1116352408
2742.long 602891725,1899447441
2743.long 3964484399,3049323471
2744.long 2173295548,3921009573
2745.long 4081628472,961987163
2746.long 3053834265,1508970993
2747.long 2937671579,2453635748
2748.long 3664609560,2870763221
2749.long 2734883394,3624381080
2750.long 1164996542,310598401
2751.long 1323610764,607225278
2752.long 3590304994,1426881987
2753.long 4068182383,1925078388
2754.long 991336113,2162078206
2755.long 633803317,2614888103
2756.long 3479774868,3248222580
2757.long 2666613458,3835390401
2758.long 944711139,4022224774
2759.long 2341262773,264347078
2760.long 2007800933,604807628
2761.long 1495990901,770255983
2762.long 1856431235,1249150122
2763.long 3175218132,1555081692
2764.long 2198950837,1996064986
2765.long 3999719339,2554220882
2766.long 766784016,2821834349
2767.long 2566594879,2952996808
2768.long 3203337956,3210313671
2769.long 1034457026,3336571891
2770.long 2466948901,3584528711
2771.long 3758326383,113926993
2772.long 168717936,338241895
2773.long 1188179964,666307205
2774.long 1546045734,773529912
2775.long 1522805485,1294757372
2776.long 2643833823,1396182291
2777.long 2343527390,1695183700
2778.long 1014477480,1986661051
2779.long 1206759142,2177026350
2780.long 344077627,2456956037
2781.long 1290863460,2730485921
2782.long 3158454273,2820302411
2783.long 3505952657,3259730800
2784.long 106217008,3345764771
2785.long 3606008344,3516065817
2786.long 1432725776,3600352804
2787.long 1467031594,4094571909
2788.long 851169720,275423344
2789.long 3100823752,430227734
2790.long 1363258195,506948616
2791.long 3750685593,659060556
2792.long 3785050280,883997877
2793.long 3318307427,958139571
2794.long 3812723403,1322822218
2795.long 2003034995,1537002063
2796.long 3602036899,1747873779
2797.long 1575990012,1955562222
2798.long 1125592928,2024104815
2799.long 2716904306,2227730452
2800.long 442776044,2361852424
2801.long 593698344,2428436474
2802.long 3733110249,2756734187
2803.long 2999351573,3204031479
2804.long 3815920427,3329325298
2805.long 3928383900,3391569614
2806.long 566280711,3515267271
2807.long 3454069534,3940187606
2808.long 4000239992,4118630271
2809.long 1914138554,116418474
2810.long 2731055270,174292421
2811.long 3203993006,289380356
2812.long 320620315,460393269
2813.long 587496836,685471733
2814.long 1086792851,852142971
2815.long 365543100,1017036298
2816.long 2618297676,1126000580
2817.long 3409855158,1288033470
2818.long 4234509866,1501505948
2819.long 987167468,1607167915
2820.long 1246189591,1816402316
2821.long 67438087,66051
2822.long 202182159,134810123
2823.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97
2824.byte 110,115,102,111,114,109,32,102,111,114,32,120,56,54,44,32
2825.byte 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
2826.byte 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
2827.byte 62,0
Adam Langleye9ada862015-05-11 17:20:37 -07002828.section __IMPORT,__pointers,non_lazy_symbol_pointers
2829L_OPENSSL_ia32cap_P$non_lazy_ptr:
2830.indirect_symbol _OPENSSL_ia32cap_P
2831.long 0
Adam Langleyd9e397b2015-01-22 14:27:53 -08002832#endif