Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / third_party / boringssl / linux-x86_64 / crypto / sha / sha1-x86_64.S
blob7668c2b1f59c5999e11bab9561cb4c56fcd5eb09
1 #if defined(__x86_64__)
2 .text   
3 .extern OPENSSL_ia32cap_P
4 .hidden OPENSSL_ia32cap_P
6 .globl  sha1_block_data_order
7 .hidden sha1_block_data_order
8 .type   sha1_block_data_order,@function
9 .align  16
10 sha1_block_data_order:
11         movl    OPENSSL_ia32cap_P+0(%rip),%r9d
12         movl    OPENSSL_ia32cap_P+4(%rip),%r8d
13         movl    OPENSSL_ia32cap_P+8(%rip),%r10d
14         testl   $512,%r8d
15         jz      .Lialu
16         jmp     _ssse3_shortcut
18 .align  16
19 .Lialu:
20         movq    %rsp,%rax
21         pushq   %rbx
22         pushq   %rbp
23         pushq   %r12
24         pushq   %r13
25         pushq   %r14
26         movq    %rdi,%r8
27         subq    $72,%rsp
28         movq    %rsi,%r9
29         andq    $-64,%rsp
30         movq    %rdx,%r10
31         movq    %rax,64(%rsp)
32 .Lprologue:
34         movl    0(%r8),%esi
35         movl    4(%r8),%edi
36         movl    8(%r8),%r11d
37         movl    12(%r8),%r12d
38         movl    16(%r8),%r13d
39         jmp     .Lloop
41 .align  16
42 .Lloop:
43         movl    0(%r9),%edx
44         bswapl  %edx
45         movl    4(%r9),%ebp
46         movl    %r12d,%eax
47         movl    %edx,0(%rsp)
48         movl    %esi,%ecx
49         bswapl  %ebp
50         xorl    %r11d,%eax
51         roll    $5,%ecx
52         andl    %edi,%eax
53         leal    1518500249(%rdx,%r13,1),%r13d
54         addl    %ecx,%r13d
55         xorl    %r12d,%eax
56         roll    $30,%edi
57         addl    %eax,%r13d
58         movl    8(%r9),%r14d
59         movl    %r11d,%eax
60         movl    %ebp,4(%rsp)
61         movl    %r13d,%ecx
62         bswapl  %r14d
63         xorl    %edi,%eax
64         roll    $5,%ecx
65         andl    %esi,%eax
66         leal    1518500249(%rbp,%r12,1),%r12d
67         addl    %ecx,%r12d
68         xorl    %r11d,%eax
69         roll    $30,%esi
70         addl    %eax,%r12d
71         movl    12(%r9),%edx
72         movl    %edi,%eax
73         movl    %r14d,8(%rsp)
74         movl    %r12d,%ecx
75         bswapl  %edx
76         xorl    %esi,%eax
77         roll    $5,%ecx
78         andl    %r13d,%eax
79         leal    1518500249(%r14,%r11,1),%r11d
80         addl    %ecx,%r11d
81         xorl    %edi,%eax
82         roll    $30,%r13d
83         addl    %eax,%r11d
84         movl    16(%r9),%ebp
85         movl    %esi,%eax
86         movl    %edx,12(%rsp)
87         movl    %r11d,%ecx
88         bswapl  %ebp
89         xorl    %r13d,%eax
90         roll    $5,%ecx
91         andl    %r12d,%eax
92         leal    1518500249(%rdx,%rdi,1),%edi
93         addl    %ecx,%edi
94         xorl    %esi,%eax
95         roll    $30,%r12d
96         addl    %eax,%edi
97         movl    20(%r9),%r14d
98         movl    %r13d,%eax
99         movl    %ebp,16(%rsp)
100         movl    %edi,%ecx
101         bswapl  %r14d
102         xorl    %r12d,%eax
103         roll    $5,%ecx
104         andl    %r11d,%eax
105         leal    1518500249(%rbp,%rsi,1),%esi
106         addl    %ecx,%esi
107         xorl    %r13d,%eax
108         roll    $30,%r11d
109         addl    %eax,%esi
110         movl    24(%r9),%edx
111         movl    %r12d,%eax
112         movl    %r14d,20(%rsp)
113         movl    %esi,%ecx
114         bswapl  %edx
115         xorl    %r11d,%eax
116         roll    $5,%ecx
117         andl    %edi,%eax
118         leal    1518500249(%r14,%r13,1),%r13d
119         addl    %ecx,%r13d
120         xorl    %r12d,%eax
121         roll    $30,%edi
122         addl    %eax,%r13d
123         movl    28(%r9),%ebp
124         movl    %r11d,%eax
125         movl    %edx,24(%rsp)
126         movl    %r13d,%ecx
127         bswapl  %ebp
128         xorl    %edi,%eax
129         roll    $5,%ecx
130         andl    %esi,%eax
131         leal    1518500249(%rdx,%r12,1),%r12d
132         addl    %ecx,%r12d
133         xorl    %r11d,%eax
134         roll    $30,%esi
135         addl    %eax,%r12d
136         movl    32(%r9),%r14d
137         movl    %edi,%eax
138         movl    %ebp,28(%rsp)
139         movl    %r12d,%ecx
140         bswapl  %r14d
141         xorl    %esi,%eax
142         roll    $5,%ecx
143         andl    %r13d,%eax
144         leal    1518500249(%rbp,%r11,1),%r11d
145         addl    %ecx,%r11d
146         xorl    %edi,%eax
147         roll    $30,%r13d
148         addl    %eax,%r11d
149         movl    36(%r9),%edx
150         movl    %esi,%eax
151         movl    %r14d,32(%rsp)
152         movl    %r11d,%ecx
153         bswapl  %edx
154         xorl    %r13d,%eax
155         roll    $5,%ecx
156         andl    %r12d,%eax
157         leal    1518500249(%r14,%rdi,1),%edi
158         addl    %ecx,%edi
159         xorl    %esi,%eax
160         roll    $30,%r12d
161         addl    %eax,%edi
162         movl    40(%r9),%ebp
163         movl    %r13d,%eax
164         movl    %edx,36(%rsp)
165         movl    %edi,%ecx
166         bswapl  %ebp
167         xorl    %r12d,%eax
168         roll    $5,%ecx
169         andl    %r11d,%eax
170         leal    1518500249(%rdx,%rsi,1),%esi
171         addl    %ecx,%esi
172         xorl    %r13d,%eax
173         roll    $30,%r11d
174         addl    %eax,%esi
175         movl    44(%r9),%r14d
176         movl    %r12d,%eax
177         movl    %ebp,40(%rsp)
178         movl    %esi,%ecx
179         bswapl  %r14d
180         xorl    %r11d,%eax
181         roll    $5,%ecx
182         andl    %edi,%eax
183         leal    1518500249(%rbp,%r13,1),%r13d
184         addl    %ecx,%r13d
185         xorl    %r12d,%eax
186         roll    $30,%edi
187         addl    %eax,%r13d
188         movl    48(%r9),%edx
189         movl    %r11d,%eax
190         movl    %r14d,44(%rsp)
191         movl    %r13d,%ecx
192         bswapl  %edx
193         xorl    %edi,%eax
194         roll    $5,%ecx
195         andl    %esi,%eax
196         leal    1518500249(%r14,%r12,1),%r12d
197         addl    %ecx,%r12d
198         xorl    %r11d,%eax
199         roll    $30,%esi
200         addl    %eax,%r12d
201         movl    52(%r9),%ebp
202         movl    %edi,%eax
203         movl    %edx,48(%rsp)
204         movl    %r12d,%ecx
205         bswapl  %ebp
206         xorl    %esi,%eax
207         roll    $5,%ecx
208         andl    %r13d,%eax
209         leal    1518500249(%rdx,%r11,1),%r11d
210         addl    %ecx,%r11d
211         xorl    %edi,%eax
212         roll    $30,%r13d
213         addl    %eax,%r11d
214         movl    56(%r9),%r14d
215         movl    %esi,%eax
216         movl    %ebp,52(%rsp)
217         movl    %r11d,%ecx
218         bswapl  %r14d
219         xorl    %r13d,%eax
220         roll    $5,%ecx
221         andl    %r12d,%eax
222         leal    1518500249(%rbp,%rdi,1),%edi
223         addl    %ecx,%edi
224         xorl    %esi,%eax
225         roll    $30,%r12d
226         addl    %eax,%edi
227         movl    60(%r9),%edx
228         movl    %r13d,%eax
229         movl    %r14d,56(%rsp)
230         movl    %edi,%ecx
231         bswapl  %edx
232         xorl    %r12d,%eax
233         roll    $5,%ecx
234         andl    %r11d,%eax
235         leal    1518500249(%r14,%rsi,1),%esi
236         addl    %ecx,%esi
237         xorl    %r13d,%eax
238         roll    $30,%r11d
239         addl    %eax,%esi
240         xorl    0(%rsp),%ebp
241         movl    %r12d,%eax
242         movl    %edx,60(%rsp)
243         movl    %esi,%ecx
244         xorl    8(%rsp),%ebp
245         xorl    %r11d,%eax
246         roll    $5,%ecx
247         xorl    32(%rsp),%ebp
248         andl    %edi,%eax
249         leal    1518500249(%rdx,%r13,1),%r13d
250         roll    $30,%edi
251         xorl    %r12d,%eax
252         addl    %ecx,%r13d
253         roll    $1,%ebp
254         addl    %eax,%r13d
255         xorl    4(%rsp),%r14d
256         movl    %r11d,%eax
257         movl    %ebp,0(%rsp)
258         movl    %r13d,%ecx
259         xorl    12(%rsp),%r14d
260         xorl    %edi,%eax
261         roll    $5,%ecx
262         xorl    36(%rsp),%r14d
263         andl    %esi,%eax
264         leal    1518500249(%rbp,%r12,1),%r12d
265         roll    $30,%esi
266         xorl    %r11d,%eax
267         addl    %ecx,%r12d
268         roll    $1,%r14d
269         addl    %eax,%r12d
270         xorl    8(%rsp),%edx
271         movl    %edi,%eax
272         movl    %r14d,4(%rsp)
273         movl    %r12d,%ecx
274         xorl    16(%rsp),%edx
275         xorl    %esi,%eax
276         roll    $5,%ecx
277         xorl    40(%rsp),%edx
278         andl    %r13d,%eax
279         leal    1518500249(%r14,%r11,1),%r11d
280         roll    $30,%r13d
281         xorl    %edi,%eax
282         addl    %ecx,%r11d
283         roll    $1,%edx
284         addl    %eax,%r11d
285         xorl    12(%rsp),%ebp
286         movl    %esi,%eax
287         movl    %edx,8(%rsp)
288         movl    %r11d,%ecx
289         xorl    20(%rsp),%ebp
290         xorl    %r13d,%eax
291         roll    $5,%ecx
292         xorl    44(%rsp),%ebp
293         andl    %r12d,%eax
294         leal    1518500249(%rdx,%rdi,1),%edi
295         roll    $30,%r12d
296         xorl    %esi,%eax
297         addl    %ecx,%edi
298         roll    $1,%ebp
299         addl    %eax,%edi
300         xorl    16(%rsp),%r14d
301         movl    %r13d,%eax
302         movl    %ebp,12(%rsp)
303         movl    %edi,%ecx
304         xorl    24(%rsp),%r14d
305         xorl    %r12d,%eax
306         roll    $5,%ecx
307         xorl    48(%rsp),%r14d
308         andl    %r11d,%eax
309         leal    1518500249(%rbp,%rsi,1),%esi
310         roll    $30,%r11d
311         xorl    %r13d,%eax
312         addl    %ecx,%esi
313         roll    $1,%r14d
314         addl    %eax,%esi
315         xorl    20(%rsp),%edx
316         movl    %edi,%eax
317         movl    %r14d,16(%rsp)
318         movl    %esi,%ecx
319         xorl    28(%rsp),%edx
320         xorl    %r12d,%eax
321         roll    $5,%ecx
322         xorl    52(%rsp),%edx
323         leal    1859775393(%r14,%r13,1),%r13d
324         xorl    %r11d,%eax
325         addl    %ecx,%r13d
326         roll    $30,%edi
327         addl    %eax,%r13d
328         roll    $1,%edx
329         xorl    24(%rsp),%ebp
330         movl    %esi,%eax
331         movl    %edx,20(%rsp)
332         movl    %r13d,%ecx
333         xorl    32(%rsp),%ebp
334         xorl    %r11d,%eax
335         roll    $5,%ecx
336         xorl    56(%rsp),%ebp
337         leal    1859775393(%rdx,%r12,1),%r12d
338         xorl    %edi,%eax
339         addl    %ecx,%r12d
340         roll    $30,%esi
341         addl    %eax,%r12d
342         roll    $1,%ebp
343         xorl    28(%rsp),%r14d
344         movl    %r13d,%eax
345         movl    %ebp,24(%rsp)
346         movl    %r12d,%ecx
347         xorl    36(%rsp),%r14d
348         xorl    %edi,%eax
349         roll    $5,%ecx
350         xorl    60(%rsp),%r14d
351         leal    1859775393(%rbp,%r11,1),%r11d
352         xorl    %esi,%eax
353         addl    %ecx,%r11d
354         roll    $30,%r13d
355         addl    %eax,%r11d
356         roll    $1,%r14d
357         xorl    32(%rsp),%edx
358         movl    %r12d,%eax
359         movl    %r14d,28(%rsp)
360         movl    %r11d,%ecx
361         xorl    40(%rsp),%edx
362         xorl    %esi,%eax
363         roll    $5,%ecx
364         xorl    0(%rsp),%edx
365         leal    1859775393(%r14,%rdi,1),%edi
366         xorl    %r13d,%eax
367         addl    %ecx,%edi
368         roll    $30,%r12d
369         addl    %eax,%edi
370         roll    $1,%edx
371         xorl    36(%rsp),%ebp
372         movl    %r11d,%eax
373         movl    %edx,32(%rsp)
374         movl    %edi,%ecx
375         xorl    44(%rsp),%ebp
376         xorl    %r13d,%eax
377         roll    $5,%ecx
378         xorl    4(%rsp),%ebp
379         leal    1859775393(%rdx,%rsi,1),%esi
380         xorl    %r12d,%eax
381         addl    %ecx,%esi
382         roll    $30,%r11d
383         addl    %eax,%esi
384         roll    $1,%ebp
385         xorl    40(%rsp),%r14d
386         movl    %edi,%eax
387         movl    %ebp,36(%rsp)
388         movl    %esi,%ecx
389         xorl    48(%rsp),%r14d
390         xorl    %r12d,%eax
391         roll    $5,%ecx
392         xorl    8(%rsp),%r14d
393         leal    1859775393(%rbp,%r13,1),%r13d
394         xorl    %r11d,%eax
395         addl    %ecx,%r13d
396         roll    $30,%edi
397         addl    %eax,%r13d
398         roll    $1,%r14d
399         xorl    44(%rsp),%edx
400         movl    %esi,%eax
401         movl    %r14d,40(%rsp)
402         movl    %r13d,%ecx
403         xorl    52(%rsp),%edx
404         xorl    %r11d,%eax
405         roll    $5,%ecx
406         xorl    12(%rsp),%edx
407         leal    1859775393(%r14,%r12,1),%r12d
408         xorl    %edi,%eax
409         addl    %ecx,%r12d
410         roll    $30,%esi
411         addl    %eax,%r12d
412         roll    $1,%edx
413         xorl    48(%rsp),%ebp
414         movl    %r13d,%eax
415         movl    %edx,44(%rsp)
416         movl    %r12d,%ecx
417         xorl    56(%rsp),%ebp
418         xorl    %edi,%eax
419         roll    $5,%ecx
420         xorl    16(%rsp),%ebp
421         leal    1859775393(%rdx,%r11,1),%r11d
422         xorl    %esi,%eax
423         addl    %ecx,%r11d
424         roll    $30,%r13d
425         addl    %eax,%r11d
426         roll    $1,%ebp
427         xorl    52(%rsp),%r14d
428         movl    %r12d,%eax
429         movl    %ebp,48(%rsp)
430         movl    %r11d,%ecx
431         xorl    60(%rsp),%r14d
432         xorl    %esi,%eax
433         roll    $5,%ecx
434         xorl    20(%rsp),%r14d
435         leal    1859775393(%rbp,%rdi,1),%edi
436         xorl    %r13d,%eax
437         addl    %ecx,%edi
438         roll    $30,%r12d
439         addl    %eax,%edi
440         roll    $1,%r14d
441         xorl    56(%rsp),%edx
442         movl    %r11d,%eax
443         movl    %r14d,52(%rsp)
444         movl    %edi,%ecx
445         xorl    0(%rsp),%edx
446         xorl    %r13d,%eax
447         roll    $5,%ecx
448         xorl    24(%rsp),%edx
449         leal    1859775393(%r14,%rsi,1),%esi
450         xorl    %r12d,%eax
451         addl    %ecx,%esi
452         roll    $30,%r11d
453         addl    %eax,%esi
454         roll    $1,%edx
455         xorl    60(%rsp),%ebp
456         movl    %edi,%eax
457         movl    %edx,56(%rsp)
458         movl    %esi,%ecx
459         xorl    4(%rsp),%ebp
460         xorl    %r12d,%eax
461         roll    $5,%ecx
462         xorl    28(%rsp),%ebp
463         leal    1859775393(%rdx,%r13,1),%r13d
464         xorl    %r11d,%eax
465         addl    %ecx,%r13d
466         roll    $30,%edi
467         addl    %eax,%r13d
468         roll    $1,%ebp
469         xorl    0(%rsp),%r14d
470         movl    %esi,%eax
471         movl    %ebp,60(%rsp)
472         movl    %r13d,%ecx
473         xorl    8(%rsp),%r14d
474         xorl    %r11d,%eax
475         roll    $5,%ecx
476         xorl    32(%rsp),%r14d
477         leal    1859775393(%rbp,%r12,1),%r12d
478         xorl    %edi,%eax
479         addl    %ecx,%r12d
480         roll    $30,%esi
481         addl    %eax,%r12d
482         roll    $1,%r14d
483         xorl    4(%rsp),%edx
484         movl    %r13d,%eax
485         movl    %r14d,0(%rsp)
486         movl    %r12d,%ecx
487         xorl    12(%rsp),%edx
488         xorl    %edi,%eax
489         roll    $5,%ecx
490         xorl    36(%rsp),%edx
491         leal    1859775393(%r14,%r11,1),%r11d
492         xorl    %esi,%eax
493         addl    %ecx,%r11d
494         roll    $30,%r13d
495         addl    %eax,%r11d
496         roll    $1,%edx
497         xorl    8(%rsp),%ebp
498         movl    %r12d,%eax
499         movl    %edx,4(%rsp)
500         movl    %r11d,%ecx
501         xorl    16(%rsp),%ebp
502         xorl    %esi,%eax
503         roll    $5,%ecx
504         xorl    40(%rsp),%ebp
505         leal    1859775393(%rdx,%rdi,1),%edi
506         xorl    %r13d,%eax
507         addl    %ecx,%edi
508         roll    $30,%r12d
509         addl    %eax,%edi
510         roll    $1,%ebp
511         xorl    12(%rsp),%r14d
512         movl    %r11d,%eax
513         movl    %ebp,8(%rsp)
514         movl    %edi,%ecx
515         xorl    20(%rsp),%r14d
516         xorl    %r13d,%eax
517         roll    $5,%ecx
518         xorl    44(%rsp),%r14d
519         leal    1859775393(%rbp,%rsi,1),%esi
520         xorl    %r12d,%eax
521         addl    %ecx,%esi
522         roll    $30,%r11d
523         addl    %eax,%esi
524         roll    $1,%r14d
525         xorl    16(%rsp),%edx
526         movl    %edi,%eax
527         movl    %r14d,12(%rsp)
528         movl    %esi,%ecx
529         xorl    24(%rsp),%edx
530         xorl    %r12d,%eax
531         roll    $5,%ecx
532         xorl    48(%rsp),%edx
533         leal    1859775393(%r14,%r13,1),%r13d
534         xorl    %r11d,%eax
535         addl    %ecx,%r13d
536         roll    $30,%edi
537         addl    %eax,%r13d
538         roll    $1,%edx
539         xorl    20(%rsp),%ebp
540         movl    %esi,%eax
541         movl    %edx,16(%rsp)
542         movl    %r13d,%ecx
543         xorl    28(%rsp),%ebp
544         xorl    %r11d,%eax
545         roll    $5,%ecx
546         xorl    52(%rsp),%ebp
547         leal    1859775393(%rdx,%r12,1),%r12d
548         xorl    %edi,%eax
549         addl    %ecx,%r12d
550         roll    $30,%esi
551         addl    %eax,%r12d
552         roll    $1,%ebp
553         xorl    24(%rsp),%r14d
554         movl    %r13d,%eax
555         movl    %ebp,20(%rsp)
556         movl    %r12d,%ecx
557         xorl    32(%rsp),%r14d
558         xorl    %edi,%eax
559         roll    $5,%ecx
560         xorl    56(%rsp),%r14d
561         leal    1859775393(%rbp,%r11,1),%r11d
562         xorl    %esi,%eax
563         addl    %ecx,%r11d
564         roll    $30,%r13d
565         addl    %eax,%r11d
566         roll    $1,%r14d
567         xorl    28(%rsp),%edx
568         movl    %r12d,%eax
569         movl    %r14d,24(%rsp)
570         movl    %r11d,%ecx
571         xorl    36(%rsp),%edx
572         xorl    %esi,%eax
573         roll    $5,%ecx
574         xorl    60(%rsp),%edx
575         leal    1859775393(%r14,%rdi,1),%edi
576         xorl    %r13d,%eax
577         addl    %ecx,%edi
578         roll    $30,%r12d
579         addl    %eax,%edi
580         roll    $1,%edx
581         xorl    32(%rsp),%ebp
582         movl    %r11d,%eax
583         movl    %edx,28(%rsp)
584         movl    %edi,%ecx
585         xorl    40(%rsp),%ebp
586         xorl    %r13d,%eax
587         roll    $5,%ecx
588         xorl    0(%rsp),%ebp
589         leal    1859775393(%rdx,%rsi,1),%esi
590         xorl    %r12d,%eax
591         addl    %ecx,%esi
592         roll    $30,%r11d
593         addl    %eax,%esi
594         roll    $1,%ebp
595         xorl    36(%rsp),%r14d
596         movl    %r12d,%eax
597         movl    %ebp,32(%rsp)
598         movl    %r12d,%ebx
599         xorl    44(%rsp),%r14d
600         andl    %r11d,%eax
601         movl    %esi,%ecx
602         xorl    4(%rsp),%r14d
603         leal    -1894007588(%rbp,%r13,1),%r13d
604         xorl    %r11d,%ebx
605         roll    $5,%ecx
606         addl    %eax,%r13d
607         roll    $1,%r14d
608         andl    %edi,%ebx
609         addl    %ecx,%r13d
610         roll    $30,%edi
611         addl    %ebx,%r13d
612         xorl    40(%rsp),%edx
613         movl    %r11d,%eax
614         movl    %r14d,36(%rsp)
615         movl    %r11d,%ebx
616         xorl    48(%rsp),%edx
617         andl    %edi,%eax
618         movl    %r13d,%ecx
619         xorl    8(%rsp),%edx
620         leal    -1894007588(%r14,%r12,1),%r12d
621         xorl    %edi,%ebx
622         roll    $5,%ecx
623         addl    %eax,%r12d
624         roll    $1,%edx
625         andl    %esi,%ebx
626         addl    %ecx,%r12d
627         roll    $30,%esi
628         addl    %ebx,%r12d
629         xorl    44(%rsp),%ebp
630         movl    %edi,%eax
631         movl    %edx,40(%rsp)
632         movl    %edi,%ebx
633         xorl    52(%rsp),%ebp
634         andl    %esi,%eax
635         movl    %r12d,%ecx
636         xorl    12(%rsp),%ebp
637         leal    -1894007588(%rdx,%r11,1),%r11d
638         xorl    %esi,%ebx
639         roll    $5,%ecx
640         addl    %eax,%r11d
641         roll    $1,%ebp
642         andl    %r13d,%ebx
643         addl    %ecx,%r11d
644         roll    $30,%r13d
645         addl    %ebx,%r11d
646         xorl    48(%rsp),%r14d
647         movl    %esi,%eax
648         movl    %ebp,44(%rsp)
649         movl    %esi,%ebx
650         xorl    56(%rsp),%r14d
651         andl    %r13d,%eax
652         movl    %r11d,%ecx
653         xorl    16(%rsp),%r14d
654         leal    -1894007588(%rbp,%rdi,1),%edi
655         xorl    %r13d,%ebx
656         roll    $5,%ecx
657         addl    %eax,%edi
658         roll    $1,%r14d
659         andl    %r12d,%ebx
660         addl    %ecx,%edi
661         roll    $30,%r12d
662         addl    %ebx,%edi
663         xorl    52(%rsp),%edx
664         movl    %r13d,%eax
665         movl    %r14d,48(%rsp)
666         movl    %r13d,%ebx
667         xorl    60(%rsp),%edx
668         andl    %r12d,%eax
669         movl    %edi,%ecx
670         xorl    20(%rsp),%edx
671         leal    -1894007588(%r14,%rsi,1),%esi
672         xorl    %r12d,%ebx
673         roll    $5,%ecx
674         addl    %eax,%esi
675         roll    $1,%edx
676         andl    %r11d,%ebx
677         addl    %ecx,%esi
678         roll    $30,%r11d
679         addl    %ebx,%esi
680         xorl    56(%rsp),%ebp
681         movl    %r12d,%eax
682         movl    %edx,52(%rsp)
683         movl    %r12d,%ebx
684         xorl    0(%rsp),%ebp
685         andl    %r11d,%eax
686         movl    %esi,%ecx
687         xorl    24(%rsp),%ebp
688         leal    -1894007588(%rdx,%r13,1),%r13d
689         xorl    %r11d,%ebx
690         roll    $5,%ecx
691         addl    %eax,%r13d
692         roll    $1,%ebp
693         andl    %edi,%ebx
694         addl    %ecx,%r13d
695         roll    $30,%edi
696         addl    %ebx,%r13d
697         xorl    60(%rsp),%r14d
698         movl    %r11d,%eax
699         movl    %ebp,56(%rsp)
700         movl    %r11d,%ebx
701         xorl    4(%rsp),%r14d
702         andl    %edi,%eax
703         movl    %r13d,%ecx
704         xorl    28(%rsp),%r14d
705         leal    -1894007588(%rbp,%r12,1),%r12d
706         xorl    %edi,%ebx
707         roll    $5,%ecx
708         addl    %eax,%r12d
709         roll    $1,%r14d
710         andl    %esi,%ebx
711         addl    %ecx,%r12d
712         roll    $30,%esi
713         addl    %ebx,%r12d
714         xorl    0(%rsp),%edx
715         movl    %edi,%eax
716         movl    %r14d,60(%rsp)
717         movl    %edi,%ebx
718         xorl    8(%rsp),%edx
719         andl    %esi,%eax
720         movl    %r12d,%ecx
721         xorl    32(%rsp),%edx
722         leal    -1894007588(%r14,%r11,1),%r11d
723         xorl    %esi,%ebx
724         roll    $5,%ecx
725         addl    %eax,%r11d
726         roll    $1,%edx
727         andl    %r13d,%ebx
728         addl    %ecx,%r11d
729         roll    $30,%r13d
730         addl    %ebx,%r11d
731         xorl    4(%rsp),%ebp
732         movl    %esi,%eax
733         movl    %edx,0(%rsp)
734         movl    %esi,%ebx
735         xorl    12(%rsp),%ebp
736         andl    %r13d,%eax
737         movl    %r11d,%ecx
738         xorl    36(%rsp),%ebp
739         leal    -1894007588(%rdx,%rdi,1),%edi
740         xorl    %r13d,%ebx
741         roll    $5,%ecx
742         addl    %eax,%edi
743         roll    $1,%ebp
744         andl    %r12d,%ebx
745         addl    %ecx,%edi
746         roll    $30,%r12d
747         addl    %ebx,%edi
748         xorl    8(%rsp),%r14d
749         movl    %r13d,%eax
750         movl    %ebp,4(%rsp)
751         movl    %r13d,%ebx
752         xorl    16(%rsp),%r14d
753         andl    %r12d,%eax
754         movl    %edi,%ecx
755         xorl    40(%rsp),%r14d
756         leal    -1894007588(%rbp,%rsi,1),%esi
757         xorl    %r12d,%ebx
758         roll    $5,%ecx
759         addl    %eax,%esi
760         roll    $1,%r14d
761         andl    %r11d,%ebx
762         addl    %ecx,%esi
763         roll    $30,%r11d
764         addl    %ebx,%esi
765         xorl    12(%rsp),%edx
766         movl    %r12d,%eax
767         movl    %r14d,8(%rsp)
768         movl    %r12d,%ebx
769         xorl    20(%rsp),%edx
770         andl    %r11d,%eax
771         movl    %esi,%ecx
772         xorl    44(%rsp),%edx
773         leal    -1894007588(%r14,%r13,1),%r13d
774         xorl    %r11d,%ebx
775         roll    $5,%ecx
776         addl    %eax,%r13d
777         roll    $1,%edx
778         andl    %edi,%ebx
779         addl    %ecx,%r13d
780         roll    $30,%edi
781         addl    %ebx,%r13d
782         xorl    16(%rsp),%ebp
783         movl    %r11d,%eax
784         movl    %edx,12(%rsp)
785         movl    %r11d,%ebx
786         xorl    24(%rsp),%ebp
787         andl    %edi,%eax
788         movl    %r13d,%ecx
789         xorl    48(%rsp),%ebp
790         leal    -1894007588(%rdx,%r12,1),%r12d
791         xorl    %edi,%ebx
792         roll    $5,%ecx
793         addl    %eax,%r12d
794         roll    $1,%ebp
795         andl    %esi,%ebx
796         addl    %ecx,%r12d
797         roll    $30,%esi
798         addl    %ebx,%r12d
799         xorl    20(%rsp),%r14d
800         movl    %edi,%eax
801         movl    %ebp,16(%rsp)
802         movl    %edi,%ebx
803         xorl    28(%rsp),%r14d
804         andl    %esi,%eax
805         movl    %r12d,%ecx
806         xorl    52(%rsp),%r14d
807         leal    -1894007588(%rbp,%r11,1),%r11d
808         xorl    %esi,%ebx
809         roll    $5,%ecx
810         addl    %eax,%r11d
811         roll    $1,%r14d
812         andl    %r13d,%ebx
813         addl    %ecx,%r11d
814         roll    $30,%r13d
815         addl    %ebx,%r11d
816         xorl    24(%rsp),%edx
817         movl    %esi,%eax
818         movl    %r14d,20(%rsp)
819         movl    %esi,%ebx
820         xorl    32(%rsp),%edx
821         andl    %r13d,%eax
822         movl    %r11d,%ecx
823         xorl    56(%rsp),%edx
824         leal    -1894007588(%r14,%rdi,1),%edi
825         xorl    %r13d,%ebx
826         roll    $5,%ecx
827         addl    %eax,%edi
828         roll    $1,%edx
829         andl    %r12d,%ebx
830         addl    %ecx,%edi
831         roll    $30,%r12d
832         addl    %ebx,%edi
833         xorl    28(%rsp),%ebp
834         movl    %r13d,%eax
835         movl    %edx,24(%rsp)
836         movl    %r13d,%ebx
837         xorl    36(%rsp),%ebp
838         andl    %r12d,%eax
839         movl    %edi,%ecx
840         xorl    60(%rsp),%ebp
841         leal    -1894007588(%rdx,%rsi,1),%esi
842         xorl    %r12d,%ebx
843         roll    $5,%ecx
844         addl    %eax,%esi
845         roll    $1,%ebp
846         andl    %r11d,%ebx
847         addl    %ecx,%esi
848         roll    $30,%r11d
849         addl    %ebx,%esi
850         xorl    32(%rsp),%r14d
851         movl    %r12d,%eax
852         movl    %ebp,28(%rsp)
853         movl    %r12d,%ebx
854         xorl    40(%rsp),%r14d
855         andl    %r11d,%eax
856         movl    %esi,%ecx
857         xorl    0(%rsp),%r14d
858         leal    -1894007588(%rbp,%r13,1),%r13d
859         xorl    %r11d,%ebx
860         roll    $5,%ecx
861         addl    %eax,%r13d
862         roll    $1,%r14d
863         andl    %edi,%ebx
864         addl    %ecx,%r13d
865         roll    $30,%edi
866         addl    %ebx,%r13d
867         xorl    36(%rsp),%edx
868         movl    %r11d,%eax
869         movl    %r14d,32(%rsp)
870         movl    %r11d,%ebx
871         xorl    44(%rsp),%edx
872         andl    %edi,%eax
873         movl    %r13d,%ecx
874         xorl    4(%rsp),%edx
875         leal    -1894007588(%r14,%r12,1),%r12d
876         xorl    %edi,%ebx
877         roll    $5,%ecx
878         addl    %eax,%r12d
879         roll    $1,%edx
880         andl    %esi,%ebx
881         addl    %ecx,%r12d
882         roll    $30,%esi
883         addl    %ebx,%r12d
884         xorl    40(%rsp),%ebp
885         movl    %edi,%eax
886         movl    %edx,36(%rsp)
887         movl    %edi,%ebx
888         xorl    48(%rsp),%ebp
889         andl    %esi,%eax
890         movl    %r12d,%ecx
891         xorl    8(%rsp),%ebp
892         leal    -1894007588(%rdx,%r11,1),%r11d
893         xorl    %esi,%ebx
894         roll    $5,%ecx
895         addl    %eax,%r11d
896         roll    $1,%ebp
897         andl    %r13d,%ebx
898         addl    %ecx,%r11d
899         roll    $30,%r13d
900         addl    %ebx,%r11d
901         xorl    44(%rsp),%r14d
902         movl    %esi,%eax
903         movl    %ebp,40(%rsp)
904         movl    %esi,%ebx
905         xorl    52(%rsp),%r14d
906         andl    %r13d,%eax
907         movl    %r11d,%ecx
908         xorl    12(%rsp),%r14d
909         leal    -1894007588(%rbp,%rdi,1),%edi
910         xorl    %r13d,%ebx
911         roll    $5,%ecx
912         addl    %eax,%edi
913         roll    $1,%r14d
914         andl    %r12d,%ebx
915         addl    %ecx,%edi
916         roll    $30,%r12d
917         addl    %ebx,%edi
918         xorl    48(%rsp),%edx
919         movl    %r13d,%eax
920         movl    %r14d,44(%rsp)
921         movl    %r13d,%ebx
922         xorl    56(%rsp),%edx
923         andl    %r12d,%eax
924         movl    %edi,%ecx
925         xorl    16(%rsp),%edx
926         leal    -1894007588(%r14,%rsi,1),%esi
927         xorl    %r12d,%ebx
928         roll    $5,%ecx
929         addl    %eax,%esi
930         roll    $1,%edx
931         andl    %r11d,%ebx
932         addl    %ecx,%esi
933         roll    $30,%r11d
934         addl    %ebx,%esi
935         xorl    52(%rsp),%ebp
936         movl    %edi,%eax
937         movl    %edx,48(%rsp)
938         movl    %esi,%ecx
939         xorl    60(%rsp),%ebp
940         xorl    %r12d,%eax
941         roll    $5,%ecx
942         xorl    20(%rsp),%ebp
943         leal    -899497514(%rdx,%r13,1),%r13d
944         xorl    %r11d,%eax
945         addl    %ecx,%r13d
946         roll    $30,%edi
947         addl    %eax,%r13d
948         roll    $1,%ebp
949         xorl    56(%rsp),%r14d
950         movl    %esi,%eax
951         movl    %ebp,52(%rsp)
952         movl    %r13d,%ecx
953         xorl    0(%rsp),%r14d
954         xorl    %r11d,%eax
955         roll    $5,%ecx
956         xorl    24(%rsp),%r14d
957         leal    -899497514(%rbp,%r12,1),%r12d
958         xorl    %edi,%eax
959         addl    %ecx,%r12d
960         roll    $30,%esi
961         addl    %eax,%r12d
962         roll    $1,%r14d
963         xorl    60(%rsp),%edx
964         movl    %r13d,%eax
965         movl    %r14d,56(%rsp)
966         movl    %r12d,%ecx
967         xorl    4(%rsp),%edx
968         xorl    %edi,%eax
969         roll    $5,%ecx
970         xorl    28(%rsp),%edx
971         leal    -899497514(%r14,%r11,1),%r11d
972         xorl    %esi,%eax
973         addl    %ecx,%r11d
974         roll    $30,%r13d
975         addl    %eax,%r11d
976         roll    $1,%edx
977         xorl    0(%rsp),%ebp
978         movl    %r12d,%eax
979         movl    %edx,60(%rsp)
980         movl    %r11d,%ecx
981         xorl    8(%rsp),%ebp
982         xorl    %esi,%eax
983         roll    $5,%ecx
984         xorl    32(%rsp),%ebp
985         leal    -899497514(%rdx,%rdi,1),%edi
986         xorl    %r13d,%eax
987         addl    %ecx,%edi
988         roll    $30,%r12d
989         addl    %eax,%edi
990         roll    $1,%ebp
991         xorl    4(%rsp),%r14d
992         movl    %r11d,%eax
993         movl    %ebp,0(%rsp)
994         movl    %edi,%ecx
995         xorl    12(%rsp),%r14d
996         xorl    %r13d,%eax
997         roll    $5,%ecx
998         xorl    36(%rsp),%r14d
999         leal    -899497514(%rbp,%rsi,1),%esi
1000         xorl    %r12d,%eax
1001         addl    %ecx,%esi
1002         roll    $30,%r11d
1003         addl    %eax,%esi
1004         roll    $1,%r14d
1005         xorl    8(%rsp),%edx
1006         movl    %edi,%eax
1007         movl    %r14d,4(%rsp)
1008         movl    %esi,%ecx
1009         xorl    16(%rsp),%edx
1010         xorl    %r12d,%eax
1011         roll    $5,%ecx
1012         xorl    40(%rsp),%edx
1013         leal    -899497514(%r14,%r13,1),%r13d
1014         xorl    %r11d,%eax
1015         addl    %ecx,%r13d
1016         roll    $30,%edi
1017         addl    %eax,%r13d
1018         roll    $1,%edx
1019         xorl    12(%rsp),%ebp
1020         movl    %esi,%eax
1021         movl    %edx,8(%rsp)
1022         movl    %r13d,%ecx
1023         xorl    20(%rsp),%ebp
1024         xorl    %r11d,%eax
1025         roll    $5,%ecx
1026         xorl    44(%rsp),%ebp
1027         leal    -899497514(%rdx,%r12,1),%r12d
1028         xorl    %edi,%eax
1029         addl    %ecx,%r12d
1030         roll    $30,%esi
1031         addl    %eax,%r12d
1032         roll    $1,%ebp
1033         xorl    16(%rsp),%r14d
1034         movl    %r13d,%eax
1035         movl    %ebp,12(%rsp)
1036         movl    %r12d,%ecx
1037         xorl    24(%rsp),%r14d
1038         xorl    %edi,%eax
1039         roll    $5,%ecx
1040         xorl    48(%rsp),%r14d
1041         leal    -899497514(%rbp,%r11,1),%r11d
1042         xorl    %esi,%eax
1043         addl    %ecx,%r11d
1044         roll    $30,%r13d
1045         addl    %eax,%r11d
1046         roll    $1,%r14d
1047         xorl    20(%rsp),%edx
1048         movl    %r12d,%eax
1049         movl    %r14d,16(%rsp)
1050         movl    %r11d,%ecx
1051         xorl    28(%rsp),%edx
1052         xorl    %esi,%eax
1053         roll    $5,%ecx
1054         xorl    52(%rsp),%edx
1055         leal    -899497514(%r14,%rdi,1),%edi
1056         xorl    %r13d,%eax
1057         addl    %ecx,%edi
1058         roll    $30,%r12d
1059         addl    %eax,%edi
1060         roll    $1,%edx
1061         xorl    24(%rsp),%ebp
1062         movl    %r11d,%eax
1063         movl    %edx,20(%rsp)
1064         movl    %edi,%ecx
1065         xorl    32(%rsp),%ebp
1066         xorl    %r13d,%eax
1067         roll    $5,%ecx
1068         xorl    56(%rsp),%ebp
1069         leal    -899497514(%rdx,%rsi,1),%esi
1070         xorl    %r12d,%eax
1071         addl    %ecx,%esi
1072         roll    $30,%r11d
1073         addl    %eax,%esi
1074         roll    $1,%ebp
1075         xorl    28(%rsp),%r14d
1076         movl    %edi,%eax
1077         movl    %ebp,24(%rsp)
1078         movl    %esi,%ecx
1079         xorl    36(%rsp),%r14d
1080         xorl    %r12d,%eax
1081         roll    $5,%ecx
1082         xorl    60(%rsp),%r14d
1083         leal    -899497514(%rbp,%r13,1),%r13d
1084         xorl    %r11d,%eax
1085         addl    %ecx,%r13d
1086         roll    $30,%edi
1087         addl    %eax,%r13d
1088         roll    $1,%r14d
1089         xorl    32(%rsp),%edx
1090         movl    %esi,%eax
1091         movl    %r14d,28(%rsp)
1092         movl    %r13d,%ecx
1093         xorl    40(%rsp),%edx
1094         xorl    %r11d,%eax
1095         roll    $5,%ecx
1096         xorl    0(%rsp),%edx
1097         leal    -899497514(%r14,%r12,1),%r12d
1098         xorl    %edi,%eax
1099         addl    %ecx,%r12d
1100         roll    $30,%esi
1101         addl    %eax,%r12d
1102         roll    $1,%edx
1103         xorl    36(%rsp),%ebp
1104         movl    %r13d,%eax
1106         movl    %r12d,%ecx
1107         xorl    44(%rsp),%ebp
1108         xorl    %edi,%eax
1109         roll    $5,%ecx
1110         xorl    4(%rsp),%ebp
1111         leal    -899497514(%rdx,%r11,1),%r11d
1112         xorl    %esi,%eax
1113         addl    %ecx,%r11d
1114         roll    $30,%r13d
1115         addl    %eax,%r11d
1116         roll    $1,%ebp
1117         xorl    40(%rsp),%r14d
1118         movl    %r12d,%eax
1120         movl    %r11d,%ecx
1121         xorl    48(%rsp),%r14d
1122         xorl    %esi,%eax
1123         roll    $5,%ecx
1124         xorl    8(%rsp),%r14d
1125         leal    -899497514(%rbp,%rdi,1),%edi
1126         xorl    %r13d,%eax
1127         addl    %ecx,%edi
1128         roll    $30,%r12d
1129         addl    %eax,%edi
1130         roll    $1,%r14d
1131         xorl    44(%rsp),%edx
1132         movl    %r11d,%eax
1134         movl    %edi,%ecx
1135         xorl    52(%rsp),%edx
1136         xorl    %r13d,%eax
1137         roll    $5,%ecx
1138         xorl    12(%rsp),%edx
1139         leal    -899497514(%r14,%rsi,1),%esi
1140         xorl    %r12d,%eax
1141         addl    %ecx,%esi
1142         roll    $30,%r11d
1143         addl    %eax,%esi
1144         roll    $1,%edx
1145         xorl    48(%rsp),%ebp
1146         movl    %edi,%eax
1148         movl    %esi,%ecx
1149         xorl    56(%rsp),%ebp
1150         xorl    %r12d,%eax
1151         roll    $5,%ecx
1152         xorl    16(%rsp),%ebp
1153         leal    -899497514(%rdx,%r13,1),%r13d
1154         xorl    %r11d,%eax
1155         addl    %ecx,%r13d
1156         roll    $30,%edi
1157         addl    %eax,%r13d
1158         roll    $1,%ebp
1159         xorl    52(%rsp),%r14d
1160         movl    %esi,%eax
1162         movl    %r13d,%ecx
1163         xorl    60(%rsp),%r14d
1164         xorl    %r11d,%eax
1165         roll    $5,%ecx
1166         xorl    20(%rsp),%r14d
1167         leal    -899497514(%rbp,%r12,1),%r12d
1168         xorl    %edi,%eax
1169         addl    %ecx,%r12d
1170         roll    $30,%esi
1171         addl    %eax,%r12d
1172         roll    $1,%r14d
1173         xorl    56(%rsp),%edx
1174         movl    %r13d,%eax
1176         movl    %r12d,%ecx
1177         xorl    0(%rsp),%edx
1178         xorl    %edi,%eax
1179         roll    $5,%ecx
1180         xorl    24(%rsp),%edx
1181         leal    -899497514(%r14,%r11,1),%r11d
1182         xorl    %esi,%eax
1183         addl    %ecx,%r11d
1184         roll    $30,%r13d
1185         addl    %eax,%r11d
1186         roll    $1,%edx
1187         xorl    60(%rsp),%ebp
1188         movl    %r12d,%eax
1190         movl    %r11d,%ecx
1191         xorl    4(%rsp),%ebp
1192         xorl    %esi,%eax
1193         roll    $5,%ecx
1194         xorl    28(%rsp),%ebp
1195         leal    -899497514(%rdx,%rdi,1),%edi
1196         xorl    %r13d,%eax
1197         addl    %ecx,%edi
1198         roll    $30,%r12d
1199         addl    %eax,%edi
1200         roll    $1,%ebp
1201         movl    %r11d,%eax
1202         movl    %edi,%ecx
1203         xorl    %r13d,%eax
1204         leal    -899497514(%rbp,%rsi,1),%esi
1205         roll    $5,%ecx
1206         xorl    %r12d,%eax
1207         addl    %ecx,%esi
1208         roll    $30,%r11d
1209         addl    %eax,%esi
1210         addl    0(%r8),%esi
1211         addl    4(%r8),%edi
1212         addl    8(%r8),%r11d
1213         addl    12(%r8),%r12d
1214         addl    16(%r8),%r13d
1215         movl    %esi,0(%r8)
1216         movl    %edi,4(%r8)
1217         movl    %r11d,8(%r8)
1218         movl    %r12d,12(%r8)
1219         movl    %r13d,16(%r8)
1221         subq    $1,%r10
1222         leaq    64(%r9),%r9
1223         jnz     .Lloop
1225         movq    64(%rsp),%rsi
1226         movq    -40(%rsi),%r14
1227         movq    -32(%rsi),%r13
1228         movq    -24(%rsi),%r12
1229         movq    -16(%rsi),%rbp
1230         movq    -8(%rsi),%rbx
1231         leaq    (%rsi),%rsp
1232 .Lepilogue:
1233         .byte   0xf3,0xc3
1234 .size   sha1_block_data_order,.-sha1_block_data_order
1235 .type   sha1_block_data_order_ssse3,@function
1236 .align  16
1237 sha1_block_data_order_ssse3:
1238 _ssse3_shortcut:
1239         movq    %rsp,%rax
1240         pushq   %rbx
1241         pushq   %rbp
1242         pushq   %r12
1243         pushq   %r13
1244         pushq   %r14
1245         leaq    -64(%rsp),%rsp
1246         movq    %rax,%r14
1247         andq    $-64,%rsp
1248         movq    %rdi,%r8
1249         movq    %rsi,%r9
1250         movq    %rdx,%r10
1252         shlq    $6,%r10
1253         addq    %r9,%r10
1254         leaq    K_XX_XX+64(%rip),%r11
1256         movl    0(%r8),%eax
1257         movl    4(%r8),%ebx
1258         movl    8(%r8),%ecx
1259         movl    12(%r8),%edx
1260         movl    %ebx,%esi
1261         movl    16(%r8),%ebp
1262         movl    %ecx,%edi
1263         xorl    %edx,%edi
1264         andl    %edi,%esi
1266         movdqa  64(%r11),%xmm6
1267         movdqa  -64(%r11),%xmm9
1268         movdqu  0(%r9),%xmm0
1269         movdqu  16(%r9),%xmm1
1270         movdqu  32(%r9),%xmm2
1271         movdqu  48(%r9),%xmm3
1272 .byte   102,15,56,0,198
1273 .byte   102,15,56,0,206
1274 .byte   102,15,56,0,214
1275         addq    $64,%r9
1276         paddd   %xmm9,%xmm0
1277 .byte   102,15,56,0,222
1278         paddd   %xmm9,%xmm1
1279         paddd   %xmm9,%xmm2
1280         movdqa  %xmm0,0(%rsp)
1281         psubd   %xmm9,%xmm0
1282         movdqa  %xmm1,16(%rsp)
1283         psubd   %xmm9,%xmm1
1284         movdqa  %xmm2,32(%rsp)
1285         psubd   %xmm9,%xmm2
1286         jmp     .Loop_ssse3
1287 .align  16
1288 .Loop_ssse3:
1289         rorl    $2,%ebx
1290         pshufd  $238,%xmm0,%xmm4
1291         xorl    %edx,%esi
1292         movdqa  %xmm3,%xmm8
1293         paddd   %xmm3,%xmm9
1294         movl    %eax,%edi
1295         addl    0(%rsp),%ebp
1296         punpcklqdq      %xmm1,%xmm4
1297         xorl    %ecx,%ebx
1298         roll    $5,%eax
1299         addl    %esi,%ebp
1300         psrldq  $4,%xmm8
1301         andl    %ebx,%edi
1302         xorl    %ecx,%ebx
1303         pxor    %xmm0,%xmm4
1304         addl    %eax,%ebp
1305         rorl    $7,%eax
1306         pxor    %xmm2,%xmm8
1307         xorl    %ecx,%edi
1308         movl    %ebp,%esi
1309         addl    4(%rsp),%edx
1310         pxor    %xmm8,%xmm4
1311         xorl    %ebx,%eax
1312         roll    $5,%ebp
1313         movdqa  %xmm9,48(%rsp)
1314         addl    %edi,%edx
1315         andl    %eax,%esi
1316         movdqa  %xmm4,%xmm10
1317         xorl    %ebx,%eax
1318         addl    %ebp,%edx
1319         rorl    $7,%ebp
1320         movdqa  %xmm4,%xmm8
1321         xorl    %ebx,%esi
1322         pslldq  $12,%xmm10
1323         paddd   %xmm4,%xmm4
1324         movl    %edx,%edi
1325         addl    8(%rsp),%ecx
1326         psrld   $31,%xmm8
1327         xorl    %eax,%ebp
1328         roll    $5,%edx
1329         addl    %esi,%ecx
1330         movdqa  %xmm10,%xmm9
1331         andl    %ebp,%edi
1332         xorl    %eax,%ebp
1333         psrld   $30,%xmm10
1334         addl    %edx,%ecx
1335         rorl    $7,%edx
1336         por     %xmm8,%xmm4
1337         xorl    %eax,%edi
1338         movl    %ecx,%esi
1339         addl    12(%rsp),%ebx
1340         pslld   $2,%xmm9
1341         pxor    %xmm10,%xmm4
1342         xorl    %ebp,%edx
1343         movdqa  -64(%r11),%xmm10
1344         roll    $5,%ecx
1345         addl    %edi,%ebx
1346         andl    %edx,%esi
1347         pxor    %xmm9,%xmm4
1348         xorl    %ebp,%edx
1349         addl    %ecx,%ebx
1350         rorl    $7,%ecx
1351         pshufd  $238,%xmm1,%xmm5
1352         xorl    %ebp,%esi
1353         movdqa  %xmm4,%xmm9
1354         paddd   %xmm4,%xmm10
1355         movl    %ebx,%edi
1356         addl    16(%rsp),%eax
1357         punpcklqdq      %xmm2,%xmm5
1358         xorl    %edx,%ecx
1359         roll    $5,%ebx
1360         addl    %esi,%eax
1361         psrldq  $4,%xmm9
1362         andl    %ecx,%edi
1363         xorl    %edx,%ecx
1364         pxor    %xmm1,%xmm5
1365         addl    %ebx,%eax
1366         rorl    $7,%ebx
1367         pxor    %xmm3,%xmm9
1368         xorl    %edx,%edi
1369         movl    %eax,%esi
1370         addl    20(%rsp),%ebp
1371         pxor    %xmm9,%xmm5
1372         xorl    %ecx,%ebx
1373         roll    $5,%eax
1374         movdqa  %xmm10,0(%rsp)
1375         addl    %edi,%ebp
1376         andl    %ebx,%esi
1377         movdqa  %xmm5,%xmm8
1378         xorl    %ecx,%ebx
1379         addl    %eax,%ebp
1380         rorl    $7,%eax
1381         movdqa  %xmm5,%xmm9
1382         xorl    %ecx,%esi
1383         pslldq  $12,%xmm8
1384         paddd   %xmm5,%xmm5
1385         movl    %ebp,%edi
1386         addl    24(%rsp),%edx
1387         psrld   $31,%xmm9
1388         xorl    %ebx,%eax
1389         roll    $5,%ebp
1390         addl    %esi,%edx
1391         movdqa  %xmm8,%xmm10
1392         andl    %eax,%edi
1393         xorl    %ebx,%eax
1394         psrld   $30,%xmm8
1395         addl    %ebp,%edx
1396         rorl    $7,%ebp
1397         por     %xmm9,%xmm5
1398         xorl    %ebx,%edi
1399         movl    %edx,%esi
1400         addl    28(%rsp),%ecx
1401         pslld   $2,%xmm10
1402         pxor    %xmm8,%xmm5
1403         xorl    %eax,%ebp
1404         movdqa  -32(%r11),%xmm8
1405         roll    $5,%edx
1406         addl    %edi,%ecx
1407         andl    %ebp,%esi
1408         pxor    %xmm10,%xmm5
1409         xorl    %eax,%ebp
1410         addl    %edx,%ecx
1411         rorl    $7,%edx
1412         pshufd  $238,%xmm2,%xmm6
1413         xorl    %eax,%esi
1414         movdqa  %xmm5,%xmm10
1415         paddd   %xmm5,%xmm8
1416         movl    %ecx,%edi
1417         addl    32(%rsp),%ebx
1418         punpcklqdq      %xmm3,%xmm6
1419         xorl    %ebp,%edx
1420         roll    $5,%ecx
1421         addl    %esi,%ebx
1422         psrldq  $4,%xmm10
1423         andl    %edx,%edi
1424         xorl    %ebp,%edx
1425         pxor    %xmm2,%xmm6
1426         addl    %ecx,%ebx
1427         rorl    $7,%ecx
1428         pxor    %xmm4,%xmm10
1429         xorl    %ebp,%edi
1430         movl    %ebx,%esi
1431         addl    36(%rsp),%eax
1432         pxor    %xmm10,%xmm6
1433         xorl    %edx,%ecx
1434         roll    $5,%ebx
1435         movdqa  %xmm8,16(%rsp)
1436         addl    %edi,%eax
1437         andl    %ecx,%esi
1438         movdqa  %xmm6,%xmm9
1439         xorl    %edx,%ecx
1440         addl    %ebx,%eax
1441         rorl    $7,%ebx
1442         movdqa  %xmm6,%xmm10
1443         xorl    %edx,%esi
1444         pslldq  $12,%xmm9
1445         paddd   %xmm6,%xmm6
1446         movl    %eax,%edi
1447         addl    40(%rsp),%ebp
1448         psrld   $31,%xmm10
1449         xorl    %ecx,%ebx
1450         roll    $5,%eax
1451         addl    %esi,%ebp
1452         movdqa  %xmm9,%xmm8
1453         andl    %ebx,%edi
1454         xorl    %ecx,%ebx
1455         psrld   $30,%xmm9
1456         addl    %eax,%ebp
1457         rorl    $7,%eax
1458         por     %xmm10,%xmm6
1459         xorl    %ecx,%edi
1460         movl    %ebp,%esi
1461         addl    44(%rsp),%edx
1462         pslld   $2,%xmm8
1463         pxor    %xmm9,%xmm6
1464         xorl    %ebx,%eax
1465         movdqa  -32(%r11),%xmm9
1466         roll    $5,%ebp
1467         addl    %edi,%edx
1468         andl    %eax,%esi
1469         pxor    %xmm8,%xmm6
1470         xorl    %ebx,%eax
1471         addl    %ebp,%edx
1472         rorl    $7,%ebp
1473         pshufd  $238,%xmm3,%xmm7
1474         xorl    %ebx,%esi
1475         movdqa  %xmm6,%xmm8
1476         paddd   %xmm6,%xmm9
1477         movl    %edx,%edi
1478         addl    48(%rsp),%ecx
1479         punpcklqdq      %xmm4,%xmm7
1480         xorl    %eax,%ebp
1481         roll    $5,%edx
1482         addl    %esi,%ecx
1483         psrldq  $4,%xmm8
1484         andl    %ebp,%edi
1485         xorl    %eax,%ebp
1486         pxor    %xmm3,%xmm7
1487         addl    %edx,%ecx
1488         rorl    $7,%edx
1489         pxor    %xmm5,%xmm8
1490         xorl    %eax,%edi
1491         movl    %ecx,%esi
1492         addl    52(%rsp),%ebx
1493         pxor    %xmm8,%xmm7
1494         xorl    %ebp,%edx
1495         roll    $5,%ecx
1496         movdqa  %xmm9,32(%rsp)
1497         addl    %edi,%ebx
1498         andl    %edx,%esi
1499         movdqa  %xmm7,%xmm10
1500         xorl    %ebp,%edx
1501         addl    %ecx,%ebx
1502         rorl    $7,%ecx
1503         movdqa  %xmm7,%xmm8
1504         xorl    %ebp,%esi
1505         pslldq  $12,%xmm10
1506         paddd   %xmm7,%xmm7
1507         movl    %ebx,%edi
1508         addl    56(%rsp),%eax
1509         psrld   $31,%xmm8
1510         xorl    %edx,%ecx
1511         roll    $5,%ebx
1512         addl    %esi,%eax
1513         movdqa  %xmm10,%xmm9
1514         andl    %ecx,%edi
1515         xorl    %edx,%ecx
1516         psrld   $30,%xmm10
1517         addl    %ebx,%eax
1518         rorl    $7,%ebx
1519         por     %xmm8,%xmm7
1520         xorl    %edx,%edi
1521         movl    %eax,%esi
1522         addl    60(%rsp),%ebp
1523         pslld   $2,%xmm9
1524         pxor    %xmm10,%xmm7
1525         xorl    %ecx,%ebx
1526         movdqa  -32(%r11),%xmm10
1527         roll    $5,%eax
1528         addl    %edi,%ebp
1529         andl    %ebx,%esi
1530         pxor    %xmm9,%xmm7
1531         pshufd  $238,%xmm6,%xmm9
1532         xorl    %ecx,%ebx
1533         addl    %eax,%ebp
1534         rorl    $7,%eax
1535         pxor    %xmm4,%xmm0
1536         xorl    %ecx,%esi
1537         movl    %ebp,%edi
1538         addl    0(%rsp),%edx
1539         punpcklqdq      %xmm7,%xmm9
1540         xorl    %ebx,%eax
1541         roll    $5,%ebp
1542         pxor    %xmm1,%xmm0
1543         addl    %esi,%edx
1544         andl    %eax,%edi
1545         movdqa  %xmm10,%xmm8
1546         xorl    %ebx,%eax
1547         paddd   %xmm7,%xmm10
1548         addl    %ebp,%edx
1549         pxor    %xmm9,%xmm0
1550         rorl    $7,%ebp
1551         xorl    %ebx,%edi
1552         movl    %edx,%esi
1553         addl    4(%rsp),%ecx
1554         movdqa  %xmm0,%xmm9
1555         xorl    %eax,%ebp
1556         roll    $5,%edx
1557         movdqa  %xmm10,48(%rsp)
1558         addl    %edi,%ecx
1559         andl    %ebp,%esi
1560         xorl    %eax,%ebp
1561         pslld   $2,%xmm0
1562         addl    %edx,%ecx
1563         rorl    $7,%edx
1564         psrld   $30,%xmm9
1565         xorl    %eax,%esi
1566         movl    %ecx,%edi
1567         addl    8(%rsp),%ebx
1568         por     %xmm9,%xmm0
1569         xorl    %ebp,%edx
1570         roll    $5,%ecx
1571         pshufd  $238,%xmm7,%xmm10
1572         addl    %esi,%ebx
1573         andl    %edx,%edi
1574         xorl    %ebp,%edx
1575         addl    %ecx,%ebx
1576         addl    12(%rsp),%eax
1577         xorl    %ebp,%edi
1578         movl    %ebx,%esi
1579         roll    $5,%ebx
1580         addl    %edi,%eax
1581         xorl    %edx,%esi
1582         rorl    $7,%ecx
1583         addl    %ebx,%eax
1584         pxor    %xmm5,%xmm1
1585         addl    16(%rsp),%ebp
1586         xorl    %ecx,%esi
1587         punpcklqdq      %xmm0,%xmm10
1588         movl    %eax,%edi
1589         roll    $5,%eax
1590         pxor    %xmm2,%xmm1
1591         addl    %esi,%ebp
1592         xorl    %ecx,%edi
1593         movdqa  %xmm8,%xmm9
1594         rorl    $7,%ebx
1595         paddd   %xmm0,%xmm8
1596         addl    %eax,%ebp
1597         pxor    %xmm10,%xmm1
1598         addl    20(%rsp),%edx
1599         xorl    %ebx,%edi
1600         movl    %ebp,%esi
1601         roll    $5,%ebp
1602         movdqa  %xmm1,%xmm10
1603         addl    %edi,%edx
1604         xorl    %ebx,%esi
1605         movdqa  %xmm8,0(%rsp)
1606         rorl    $7,%eax
1607         addl    %ebp,%edx
1608         addl    24(%rsp),%ecx
1609         pslld   $2,%xmm1
1610         xorl    %eax,%esi
1611         movl    %edx,%edi
1612         psrld   $30,%xmm10
1613         roll    $5,%edx
1614         addl    %esi,%ecx
1615         xorl    %eax,%edi
1616         rorl    $7,%ebp
1617         por     %xmm10,%xmm1
1618         addl    %edx,%ecx
1619         addl    28(%rsp),%ebx
1620         pshufd  $238,%xmm0,%xmm8
1621         xorl    %ebp,%edi
1622         movl    %ecx,%esi
1623         roll    $5,%ecx
1624         addl    %edi,%ebx
1625         xorl    %ebp,%esi
1626         rorl    $7,%edx
1627         addl    %ecx,%ebx
1628         pxor    %xmm6,%xmm2
1629         addl    32(%rsp),%eax
1630         xorl    %edx,%esi
1631         punpcklqdq      %xmm1,%xmm8
1632         movl    %ebx,%edi
1633         roll    $5,%ebx
1634         pxor    %xmm3,%xmm2
1635         addl    %esi,%eax
1636         xorl    %edx,%edi
1637         movdqa  0(%r11),%xmm10
1638         rorl    $7,%ecx
1639         paddd   %xmm1,%xmm9
1640         addl    %ebx,%eax
1641         pxor    %xmm8,%xmm2
1642         addl    36(%rsp),%ebp
1643         xorl    %ecx,%edi
1644         movl    %eax,%esi
1645         roll    $5,%eax
1646         movdqa  %xmm2,%xmm8
1647         addl    %edi,%ebp
1648         xorl    %ecx,%esi
1649         movdqa  %xmm9,16(%rsp)
1650         rorl    $7,%ebx
1651         addl    %eax,%ebp
1652         addl    40(%rsp),%edx
1653         pslld   $2,%xmm2
1654         xorl    %ebx,%esi
1655         movl    %ebp,%edi
1656         psrld   $30,%xmm8
1657         roll    $5,%ebp
1658         addl    %esi,%edx
1659         xorl    %ebx,%edi
1660         rorl    $7,%eax
1661         por     %xmm8,%xmm2
1662         addl    %ebp,%edx
1663         addl    44(%rsp),%ecx
1664         pshufd  $238,%xmm1,%xmm9
1665         xorl    %eax,%edi
1666         movl    %edx,%esi
1667         roll    $5,%edx
1668         addl    %edi,%ecx
1669         xorl    %eax,%esi
1670         rorl    $7,%ebp
1671         addl    %edx,%ecx
1672         pxor    %xmm7,%xmm3
1673         addl    48(%rsp),%ebx
1674         xorl    %ebp,%esi
1675         punpcklqdq      %xmm2,%xmm9
1676         movl    %ecx,%edi
1677         roll    $5,%ecx
1678         pxor    %xmm4,%xmm3
1679         addl    %esi,%ebx
1680         xorl    %ebp,%edi
1681         movdqa  %xmm10,%xmm8
1682         rorl    $7,%edx
1683         paddd   %xmm2,%xmm10
1684         addl    %ecx,%ebx
1685         pxor    %xmm9,%xmm3
1686         addl    52(%rsp),%eax
1687         xorl    %edx,%edi
1688         movl    %ebx,%esi
1689         roll    $5,%ebx
1690         movdqa  %xmm3,%xmm9
1691         addl    %edi,%eax
1692         xorl    %edx,%esi
1693         movdqa  %xmm10,32(%rsp)
1694         rorl    $7,%ecx
1695         addl    %ebx,%eax
1696         addl    56(%rsp),%ebp
1697         pslld   $2,%xmm3
1698         xorl    %ecx,%esi
1699         movl    %eax,%edi
1700         psrld   $30,%xmm9
1701         roll    $5,%eax
1702         addl    %esi,%ebp
1703         xorl    %ecx,%edi
1704         rorl    $7,%ebx
1705         por     %xmm9,%xmm3
1706         addl    %eax,%ebp
1707         addl    60(%rsp),%edx
1708         pshufd  $238,%xmm2,%xmm10
1709         xorl    %ebx,%edi
1710         movl    %ebp,%esi
1711         roll    $5,%ebp
1712         addl    %edi,%edx
1713         xorl    %ebx,%esi
1714         rorl    $7,%eax
1715         addl    %ebp,%edx
1716         pxor    %xmm0,%xmm4
1717         addl    0(%rsp),%ecx
1718         xorl    %eax,%esi
1719         punpcklqdq      %xmm3,%xmm10
1720         movl    %edx,%edi
1721         roll    $5,%edx
1722         pxor    %xmm5,%xmm4
1723         addl    %esi,%ecx
1724         xorl    %eax,%edi
1725         movdqa  %xmm8,%xmm9
1726         rorl    $7,%ebp
1727         paddd   %xmm3,%xmm8
1728         addl    %edx,%ecx
1729         pxor    %xmm10,%xmm4
1730         addl    4(%rsp),%ebx
1731         xorl    %ebp,%edi
1732         movl    %ecx,%esi
1733         roll    $5,%ecx
1734         movdqa  %xmm4,%xmm10
1735         addl    %edi,%ebx
1736         xorl    %ebp,%esi
1737         movdqa  %xmm8,48(%rsp)
1738         rorl    $7,%edx
1739         addl    %ecx,%ebx
1740         addl    8(%rsp),%eax
1741         pslld   $2,%xmm4
1742         xorl    %edx,%esi
1743         movl    %ebx,%edi
1744         psrld   $30,%xmm10
1745         roll    $5,%ebx
1746         addl    %esi,%eax
1747         xorl    %edx,%edi
1748         rorl    $7,%ecx
1749         por     %xmm10,%xmm4
1750         addl    %ebx,%eax
1751         addl    12(%rsp),%ebp
1752         pshufd  $238,%xmm3,%xmm8
1753         xorl    %ecx,%edi
1754         movl    %eax,%esi
1755         roll    $5,%eax
1756         addl    %edi,%ebp
1757         xorl    %ecx,%esi
1758         rorl    $7,%ebx
1759         addl    %eax,%ebp
1760         pxor    %xmm1,%xmm5
1761         addl    16(%rsp),%edx
1762         xorl    %ebx,%esi
1763         punpcklqdq      %xmm4,%xmm8
1764         movl    %ebp,%edi
1765         roll    $5,%ebp
1766         pxor    %xmm6,%xmm5
1767         addl    %esi,%edx
1768         xorl    %ebx,%edi
1769         movdqa  %xmm9,%xmm10
1770         rorl    $7,%eax
1771         paddd   %xmm4,%xmm9
1772         addl    %ebp,%edx
1773         pxor    %xmm8,%xmm5
1774         addl    20(%rsp),%ecx
1775         xorl    %eax,%edi
1776         movl    %edx,%esi
1777         roll    $5,%edx
1778         movdqa  %xmm5,%xmm8
1779         addl    %edi,%ecx
1780         xorl    %eax,%esi
1781         movdqa  %xmm9,0(%rsp)
1782         rorl    $7,%ebp
1783         addl    %edx,%ecx
1784         addl    24(%rsp),%ebx
1785         pslld   $2,%xmm5
1786         xorl    %ebp,%esi
1787         movl    %ecx,%edi
1788         psrld   $30,%xmm8
1789         roll    $5,%ecx
1790         addl    %esi,%ebx
1791         xorl    %ebp,%edi
1792         rorl    $7,%edx
1793         por     %xmm8,%xmm5
1794         addl    %ecx,%ebx
1795         addl    28(%rsp),%eax
1796         pshufd  $238,%xmm4,%xmm9
1797         rorl    $7,%ecx
1798         movl    %ebx,%esi
1799         xorl    %edx,%edi
1800         roll    $5,%ebx
1801         addl    %edi,%eax
1802         xorl    %ecx,%esi
1803         xorl    %edx,%ecx
1804         addl    %ebx,%eax
1805         pxor    %xmm2,%xmm6
1806         addl    32(%rsp),%ebp
1807         andl    %ecx,%esi
1808         xorl    %edx,%ecx
1809         rorl    $7,%ebx
1810         punpcklqdq      %xmm5,%xmm9
1811         movl    %eax,%edi
1812         xorl    %ecx,%esi
1813         pxor    %xmm7,%xmm6
1814         roll    $5,%eax
1815         addl    %esi,%ebp
1816         movdqa  %xmm10,%xmm8
1817         xorl    %ebx,%edi
1818         paddd   %xmm5,%xmm10
1819         xorl    %ecx,%ebx
1820         pxor    %xmm9,%xmm6
1821         addl    %eax,%ebp
1822         addl    36(%rsp),%edx
1823         andl    %ebx,%edi
1824         xorl    %ecx,%ebx
1825         rorl    $7,%eax
1826         movdqa  %xmm6,%xmm9
1827         movl    %ebp,%esi
1828         xorl    %ebx,%edi
1829         movdqa  %xmm10,16(%rsp)
1830         roll    $5,%ebp
1831         addl    %edi,%edx
1832         xorl    %eax,%esi
1833         pslld   $2,%xmm6
1834         xorl    %ebx,%eax
1835         addl    %ebp,%edx
1836         psrld   $30,%xmm9
1837         addl    40(%rsp),%ecx
1838         andl    %eax,%esi
1839         xorl    %ebx,%eax
1840         por     %xmm9,%xmm6
1841         rorl    $7,%ebp
1842         movl    %edx,%edi
1843         xorl    %eax,%esi
1844         roll    $5,%edx
1845         pshufd  $238,%xmm5,%xmm10
1846         addl    %esi,%ecx
1847         xorl    %ebp,%edi
1848         xorl    %eax,%ebp
1849         addl    %edx,%ecx
1850         addl    44(%rsp),%ebx
1851         andl    %ebp,%edi
1852         xorl    %eax,%ebp
1853         rorl    $7,%edx
1854         movl    %ecx,%esi
1855         xorl    %ebp,%edi
1856         roll    $5,%ecx
1857         addl    %edi,%ebx
1858         xorl    %edx,%esi
1859         xorl    %ebp,%edx
1860         addl    %ecx,%ebx
1861         pxor    %xmm3,%xmm7
1862         addl    48(%rsp),%eax
1863         andl    %edx,%esi
1864         xorl    %ebp,%edx
1865         rorl    $7,%ecx
1866         punpcklqdq      %xmm6,%xmm10
1867         movl    %ebx,%edi
1868         xorl    %edx,%esi
1869         pxor    %xmm0,%xmm7
1870         roll    $5,%ebx
1871         addl    %esi,%eax
1872         movdqa  32(%r11),%xmm9
1873         xorl    %ecx,%edi
1874         paddd   %xmm6,%xmm8
1875         xorl    %edx,%ecx
1876         pxor    %xmm10,%xmm7
1877         addl    %ebx,%eax
1878         addl    52(%rsp),%ebp
1879         andl    %ecx,%edi
1880         xorl    %edx,%ecx
1881         rorl    $7,%ebx
1882         movdqa  %xmm7,%xmm10
1883         movl    %eax,%esi
1884         xorl    %ecx,%edi
1885         movdqa  %xmm8,32(%rsp)
1886         roll    $5,%eax
1887         addl    %edi,%ebp
1888         xorl    %ebx,%esi
1889         pslld   $2,%xmm7
1890         xorl    %ecx,%ebx
1891         addl    %eax,%ebp
1892         psrld   $30,%xmm10
1893         addl    56(%rsp),%edx
1894         andl    %ebx,%esi
1895         xorl    %ecx,%ebx
1896         por     %xmm10,%xmm7
1897         rorl    $7,%eax
1898         movl    %ebp,%edi
1899         xorl    %ebx,%esi
1900         roll    $5,%ebp
1901         pshufd  $238,%xmm6,%xmm8
1902         addl    %esi,%edx
1903         xorl    %eax,%edi
1904         xorl    %ebx,%eax
1905         addl    %ebp,%edx
1906         addl    60(%rsp),%ecx
1907         andl    %eax,%edi
1908         xorl    %ebx,%eax
1909         rorl    $7,%ebp
1910         movl    %edx,%esi
1911         xorl    %eax,%edi
1912         roll    $5,%edx
1913         addl    %edi,%ecx
1914         xorl    %ebp,%esi
1915         xorl    %eax,%ebp
1916         addl    %edx,%ecx
1917         pxor    %xmm4,%xmm0
1918         addl    0(%rsp),%ebx
1919         andl    %ebp,%esi
1920         xorl    %eax,%ebp
1921         rorl    $7,%edx
1922         punpcklqdq      %xmm7,%xmm8
1923         movl    %ecx,%edi
1924         xorl    %ebp,%esi
1925         pxor    %xmm1,%xmm0
1926         roll    $5,%ecx
1927         addl    %esi,%ebx
1928         movdqa  %xmm9,%xmm10
1929         xorl    %edx,%edi
1930         paddd   %xmm7,%xmm9
1931         xorl    %ebp,%edx
1932         pxor    %xmm8,%xmm0
1933         addl    %ecx,%ebx
1934         addl    4(%rsp),%eax
1935         andl    %edx,%edi
1936         xorl    %ebp,%edx
1937         rorl    $7,%ecx
1938         movdqa  %xmm0,%xmm8
1939         movl    %ebx,%esi
1940         xorl    %edx,%edi
1941         movdqa  %xmm9,48(%rsp)
1942         roll    $5,%ebx
1943         addl    %edi,%eax
1944         xorl    %ecx,%esi
1945         pslld   $2,%xmm0
1946         xorl    %edx,%ecx
1947         addl    %ebx,%eax
1948         psrld   $30,%xmm8
1949         addl    8(%rsp),%ebp
1950         andl    %ecx,%esi
1951         xorl    %edx,%ecx
1952         por     %xmm8,%xmm0
1953         rorl    $7,%ebx
1954         movl    %eax,%edi
1955         xorl    %ecx,%esi
1956         roll    $5,%eax
1957         pshufd  $238,%xmm7,%xmm9
1958         addl    %esi,%ebp
1959         xorl    %ebx,%edi
1960         xorl    %ecx,%ebx
1961         addl    %eax,%ebp
1962         addl    12(%rsp),%edx
1963         andl    %ebx,%edi
1964         xorl    %ecx,%ebx
1965         rorl    $7,%eax
1966         movl    %ebp,%esi
1967         xorl    %ebx,%edi
1968         roll    $5,%ebp
1969         addl    %edi,%edx
1970         xorl    %eax,%esi
1971         xorl    %ebx,%eax
1972         addl    %ebp,%edx
1973         pxor    %xmm5,%xmm1
1974         addl    16(%rsp),%ecx
1975         andl    %eax,%esi
1976         xorl    %ebx,%eax
1977         rorl    $7,%ebp
1978         punpcklqdq      %xmm0,%xmm9
1979         movl    %edx,%edi
1980         xorl    %eax,%esi
1981         pxor    %xmm2,%xmm1
1982         roll    $5,%edx
1983         addl    %esi,%ecx
1984         movdqa  %xmm10,%xmm8
1985         xorl    %ebp,%edi
1986         paddd   %xmm0,%xmm10
1987         xorl    %eax,%ebp
1988         pxor    %xmm9,%xmm1
1989         addl    %edx,%ecx
1990         addl    20(%rsp),%ebx
1991         andl    %ebp,%edi
1992         xorl    %eax,%ebp
1993         rorl    $7,%edx
1994         movdqa  %xmm1,%xmm9
1995         movl    %ecx,%esi
1996         xorl    %ebp,%edi
1997         movdqa  %xmm10,0(%rsp)
1998         roll    $5,%ecx
1999         addl    %edi,%ebx
2000         xorl    %edx,%esi
2001         pslld   $2,%xmm1
2002         xorl    %ebp,%edx
2003         addl    %ecx,%ebx
2004         psrld   $30,%xmm9
2005         addl    24(%rsp),%eax
2006         andl    %edx,%esi
2007         xorl    %ebp,%edx
2008         por     %xmm9,%xmm1
2009         rorl    $7,%ecx
2010         movl    %ebx,%edi
2011         xorl    %edx,%esi
2012         roll    $5,%ebx
2013         pshufd  $238,%xmm0,%xmm10
2014         addl    %esi,%eax
2015         xorl    %ecx,%edi
2016         xorl    %edx,%ecx
2017         addl    %ebx,%eax
2018         addl    28(%rsp),%ebp
2019         andl    %ecx,%edi
2020         xorl    %edx,%ecx
2021         rorl    $7,%ebx
2022         movl    %eax,%esi
2023         xorl    %ecx,%edi
2024         roll    $5,%eax
2025         addl    %edi,%ebp
2026         xorl    %ebx,%esi
2027         xorl    %ecx,%ebx
2028         addl    %eax,%ebp
2029         pxor    %xmm6,%xmm2
2030         addl    32(%rsp),%edx
2031         andl    %ebx,%esi
2032         xorl    %ecx,%ebx
2033         rorl    $7,%eax
2034         punpcklqdq      %xmm1,%xmm10
2035         movl    %ebp,%edi
2036         xorl    %ebx,%esi
2037         pxor    %xmm3,%xmm2
2038         roll    $5,%ebp
2039         addl    %esi,%edx
2040         movdqa  %xmm8,%xmm9
2041         xorl    %eax,%edi
2042         paddd   %xmm1,%xmm8
2043         xorl    %ebx,%eax
2044         pxor    %xmm10,%xmm2
2045         addl    %ebp,%edx
2046         addl    36(%rsp),%ecx
2047         andl    %eax,%edi
2048         xorl    %ebx,%eax
2049         rorl    $7,%ebp
2050         movdqa  %xmm2,%xmm10
2051         movl    %edx,%esi
2052         xorl    %eax,%edi
2053         movdqa  %xmm8,16(%rsp)
2054         roll    $5,%edx
2055         addl    %edi,%ecx
2056         xorl    %ebp,%esi
2057         pslld   $2,%xmm2
2058         xorl    %eax,%ebp
2059         addl    %edx,%ecx
2060         psrld   $30,%xmm10
2061         addl    40(%rsp),%ebx
2062         andl    %ebp,%esi
2063         xorl    %eax,%ebp
2064         por     %xmm10,%xmm2
2065         rorl    $7,%edx
2066         movl    %ecx,%edi
2067         xorl    %ebp,%esi
2068         roll    $5,%ecx
2069         pshufd  $238,%xmm1,%xmm8
2070         addl    %esi,%ebx
2071         xorl    %edx,%edi
2072         xorl    %ebp,%edx
2073         addl    %ecx,%ebx
2074         addl    44(%rsp),%eax
2075         andl    %edx,%edi
2076         xorl    %ebp,%edx
2077         rorl    $7,%ecx
2078         movl    %ebx,%esi
2079         xorl    %edx,%edi
2080         roll    $5,%ebx
2081         addl    %edi,%eax
2082         xorl    %edx,%esi
2083         addl    %ebx,%eax
2084         pxor    %xmm7,%xmm3
2085         addl    48(%rsp),%ebp
2086         xorl    %ecx,%esi
2087         punpcklqdq      %xmm2,%xmm8
2088         movl    %eax,%edi
2089         roll    $5,%eax
2090         pxor    %xmm4,%xmm3
2091         addl    %esi,%ebp
2092         xorl    %ecx,%edi
2093         movdqa  %xmm9,%xmm10
2094         rorl    $7,%ebx
2095         paddd   %xmm2,%xmm9
2096         addl    %eax,%ebp
2097         pxor    %xmm8,%xmm3
2098         addl    52(%rsp),%edx
2099         xorl    %ebx,%edi
2100         movl    %ebp,%esi
2101         roll    $5,%ebp
2102         movdqa  %xmm3,%xmm8
2103         addl    %edi,%edx
2104         xorl    %ebx,%esi
2105         movdqa  %xmm9,32(%rsp)
2106         rorl    $7,%eax
2107         addl    %ebp,%edx
2108         addl    56(%rsp),%ecx
2109         pslld   $2,%xmm3
2110         xorl    %eax,%esi
2111         movl    %edx,%edi
2112         psrld   $30,%xmm8
2113         roll    $5,%edx
2114         addl    %esi,%ecx
2115         xorl    %eax,%edi
2116         rorl    $7,%ebp
2117         por     %xmm8,%xmm3
2118         addl    %edx,%ecx
2119         addl    60(%rsp),%ebx
2120         xorl    %ebp,%edi
2121         movl    %ecx,%esi
2122         roll    $5,%ecx
2123         addl    %edi,%ebx
2124         xorl    %ebp,%esi
2125         rorl    $7,%edx
2126         addl    %ecx,%ebx
2127         addl    0(%rsp),%eax
2128         xorl    %edx,%esi
2129         movl    %ebx,%edi
2130         roll    $5,%ebx
2131         paddd   %xmm3,%xmm10
2132         addl    %esi,%eax
2133         xorl    %edx,%edi
2134         movdqa  %xmm10,48(%rsp)
2135         rorl    $7,%ecx
2136         addl    %ebx,%eax
2137         addl    4(%rsp),%ebp
2138         xorl    %ecx,%edi
2139         movl    %eax,%esi
2140         roll    $5,%eax
2141         addl    %edi,%ebp
2142         xorl    %ecx,%esi
2143         rorl    $7,%ebx
2144         addl    %eax,%ebp
2145         addl    8(%rsp),%edx
2146         xorl    %ebx,%esi
2147         movl    %ebp,%edi
2148         roll    $5,%ebp
2149         addl    %esi,%edx
2150         xorl    %ebx,%edi
2151         rorl    $7,%eax
2152         addl    %ebp,%edx
2153         addl    12(%rsp),%ecx
2154         xorl    %eax,%edi
2155         movl    %edx,%esi
2156         roll    $5,%edx
2157         addl    %edi,%ecx
2158         xorl    %eax,%esi
2159         rorl    $7,%ebp
2160         addl    %edx,%ecx
2161         cmpq    %r10,%r9
2162         je      .Ldone_ssse3
2163         movdqa  64(%r11),%xmm6
2164         movdqa  -64(%r11),%xmm9
2165         movdqu  0(%r9),%xmm0
2166         movdqu  16(%r9),%xmm1
2167         movdqu  32(%r9),%xmm2
2168         movdqu  48(%r9),%xmm3
2169 .byte   102,15,56,0,198
2170         addq    $64,%r9
2171         addl    16(%rsp),%ebx
2172         xorl    %ebp,%esi
2173         movl    %ecx,%edi
2174 .byte   102,15,56,0,206
2175         roll    $5,%ecx
2176         addl    %esi,%ebx
2177         xorl    %ebp,%edi
2178         rorl    $7,%edx
2179         paddd   %xmm9,%xmm0
2180         addl    %ecx,%ebx
2181         addl    20(%rsp),%eax
2182         xorl    %edx,%edi
2183         movl    %ebx,%esi
2184         movdqa  %xmm0,0(%rsp)
2185         roll    $5,%ebx
2186         addl    %edi,%eax
2187         xorl    %edx,%esi
2188         rorl    $7,%ecx
2189         psubd   %xmm9,%xmm0
2190         addl    %ebx,%eax
2191         addl    24(%rsp),%ebp
2192         xorl    %ecx,%esi
2193         movl    %eax,%edi
2194         roll    $5,%eax
2195         addl    %esi,%ebp
2196         xorl    %ecx,%edi
2197         rorl    $7,%ebx
2198         addl    %eax,%ebp
2199         addl    28(%rsp),%edx
2200         xorl    %ebx,%edi
2201         movl    %ebp,%esi
2202         roll    $5,%ebp
2203         addl    %edi,%edx
2204         xorl    %ebx,%esi
2205         rorl    $7,%eax
2206         addl    %ebp,%edx
2207         addl    32(%rsp),%ecx
2208         xorl    %eax,%esi
2209         movl    %edx,%edi
2210 .byte   102,15,56,0,214
2211         roll    $5,%edx
2212         addl    %esi,%ecx
2213         xorl    %eax,%edi
2214         rorl    $7,%ebp
2215         paddd   %xmm9,%xmm1
2216         addl    %edx,%ecx
2217         addl    36(%rsp),%ebx
2218         xorl    %ebp,%edi
2219         movl    %ecx,%esi
2220         movdqa  %xmm1,16(%rsp)
2221         roll    $5,%ecx
2222         addl    %edi,%ebx
2223         xorl    %ebp,%esi
2224         rorl    $7,%edx
2225         psubd   %xmm9,%xmm1
2226         addl    %ecx,%ebx
2227         addl    40(%rsp),%eax
2228         xorl    %edx,%esi
2229         movl    %ebx,%edi
2230         roll    $5,%ebx
2231         addl    %esi,%eax
2232         xorl    %edx,%edi
2233         rorl    $7,%ecx
2234         addl    %ebx,%eax
2235         addl    44(%rsp),%ebp
2236         xorl    %ecx,%edi
2237         movl    %eax,%esi
2238         roll    $5,%eax
2239         addl    %edi,%ebp
2240         xorl    %ecx,%esi
2241         rorl    $7,%ebx
2242         addl    %eax,%ebp
2243         addl    48(%rsp),%edx
2244         xorl    %ebx,%esi
2245         movl    %ebp,%edi
2246 .byte   102,15,56,0,222
2247         roll    $5,%ebp
2248         addl    %esi,%edx
2249         xorl    %ebx,%edi
2250         rorl    $7,%eax
2251         paddd   %xmm9,%xmm2
2252         addl    %ebp,%edx
2253         addl    52(%rsp),%ecx
2254         xorl    %eax,%edi
2255         movl    %edx,%esi
2256         movdqa  %xmm2,32(%rsp)
2257         roll    $5,%edx
2258         addl    %edi,%ecx
2259         xorl    %eax,%esi
2260         rorl    $7,%ebp
2261         psubd   %xmm9,%xmm2
2262         addl    %edx,%ecx
2263         addl    56(%rsp),%ebx
2264         xorl    %ebp,%esi
2265         movl    %ecx,%edi
2266         roll    $5,%ecx
2267         addl    %esi,%ebx
2268         xorl    %ebp,%edi
2269         rorl    $7,%edx
2270         addl    %ecx,%ebx
2271         addl    60(%rsp),%eax
2272         xorl    %edx,%edi
2273         movl    %ebx,%esi
2274         roll    $5,%ebx
2275         addl    %edi,%eax
2276         rorl    $7,%ecx
2277         addl    %ebx,%eax
2278         addl    0(%r8),%eax
2279         addl    4(%r8),%esi
2280         addl    8(%r8),%ecx
2281         addl    12(%r8),%edx
2282         movl    %eax,0(%r8)
2283         addl    16(%r8),%ebp
2284         movl    %esi,4(%r8)
2285         movl    %esi,%ebx
2286         movl    %ecx,8(%r8)
2287         movl    %ecx,%edi
2288         movl    %edx,12(%r8)
2289         xorl    %edx,%edi
2290         movl    %ebp,16(%r8)
2291         andl    %edi,%esi
2292         jmp     .Loop_ssse3
2294 .align  16
2295 .Ldone_ssse3:
2296         addl    16(%rsp),%ebx
2297         xorl    %ebp,%esi
2298         movl    %ecx,%edi
2299         roll    $5,%ecx
2300         addl    %esi,%ebx
2301         xorl    %ebp,%edi
2302         rorl    $7,%edx
2303         addl    %ecx,%ebx
2304         addl    20(%rsp),%eax
2305         xorl    %edx,%edi
2306         movl    %ebx,%esi
2307         roll    $5,%ebx
2308         addl    %edi,%eax
2309         xorl    %edx,%esi
2310         rorl    $7,%ecx
2311         addl    %ebx,%eax
2312         addl    24(%rsp),%ebp
2313         xorl    %ecx,%esi
2314         movl    %eax,%edi
2315         roll    $5,%eax
2316         addl    %esi,%ebp
2317         xorl    %ecx,%edi
2318         rorl    $7,%ebx
2319         addl    %eax,%ebp
2320         addl    28(%rsp),%edx
2321         xorl    %ebx,%edi
2322         movl    %ebp,%esi
2323         roll    $5,%ebp
2324         addl    %edi,%edx
2325         xorl    %ebx,%esi
2326         rorl    $7,%eax
2327         addl    %ebp,%edx
2328         addl    32(%rsp),%ecx
2329         xorl    %eax,%esi
2330         movl    %edx,%edi
2331         roll    $5,%edx
2332         addl    %esi,%ecx
2333         xorl    %eax,%edi
2334         rorl    $7,%ebp
2335         addl    %edx,%ecx
2336         addl    36(%rsp),%ebx
2337         xorl    %ebp,%edi
2338         movl    %ecx,%esi
2339         roll    $5,%ecx
2340         addl    %edi,%ebx
2341         xorl    %ebp,%esi
2342         rorl    $7,%edx
2343         addl    %ecx,%ebx
2344         addl    40(%rsp),%eax
2345         xorl    %edx,%esi
2346         movl    %ebx,%edi
2347         roll    $5,%ebx
2348         addl    %esi,%eax
2349         xorl    %edx,%edi
2350         rorl    $7,%ecx
2351         addl    %ebx,%eax
2352         addl    44(%rsp),%ebp
2353         xorl    %ecx,%edi
2354         movl    %eax,%esi
2355         roll    $5,%eax
2356         addl    %edi,%ebp
2357         xorl    %ecx,%esi
2358         rorl    $7,%ebx
2359         addl    %eax,%ebp
2360         addl    48(%rsp),%edx
2361         xorl    %ebx,%esi
2362         movl    %ebp,%edi
2363         roll    $5,%ebp
2364         addl    %esi,%edx
2365         xorl    %ebx,%edi
2366         rorl    $7,%eax
2367         addl    %ebp,%edx
2368         addl    52(%rsp),%ecx
2369         xorl    %eax,%edi
2370         movl    %edx,%esi
2371         roll    $5,%edx
2372         addl    %edi,%ecx
2373         xorl    %eax,%esi
2374         rorl    $7,%ebp
2375         addl    %edx,%ecx
2376         addl    56(%rsp),%ebx
2377         xorl    %ebp,%esi
2378         movl    %ecx,%edi
2379         roll    $5,%ecx
2380         addl    %esi,%ebx
2381         xorl    %ebp,%edi
2382         rorl    $7,%edx
2383         addl    %ecx,%ebx
2384         addl    60(%rsp),%eax
2385         xorl    %edx,%edi
2386         movl    %ebx,%esi
2387         roll    $5,%ebx
2388         addl    %edi,%eax
2389         rorl    $7,%ecx
2390         addl    %ebx,%eax
2391         addl    0(%r8),%eax
2392         addl    4(%r8),%esi
2393         addl    8(%r8),%ecx
2394         movl    %eax,0(%r8)
2395         addl    12(%r8),%edx
2396         movl    %esi,4(%r8)
2397         addl    16(%r8),%ebp
2398         movl    %ecx,8(%r8)
2399         movl    %edx,12(%r8)
2400         movl    %ebp,16(%r8)
2401         leaq    (%r14),%rsi
2402         movq    -40(%rsi),%r14
2403         movq    -32(%rsi),%r13
2404         movq    -24(%rsi),%r12
2405         movq    -16(%rsi),%rbp
2406         movq    -8(%rsi),%rbx
2407         leaq    (%rsi),%rsp
2408 .Lepilogue_ssse3:
2409         .byte   0xf3,0xc3
2410 .size   sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3
2411 .align  64
2412 K_XX_XX:
2413 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
2414 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
2415 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
2416 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
2417 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
2418 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
2419 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
2420 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
2421 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
2422 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
2423 .byte   0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
2424 .byte   83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
2425 .align  64
2426 #endif