Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(443)

Side by Side Diff: third_party/boringssl/linux-x86_64/crypto/sha/sha1-x86_64.S

Issue 2811393005: Roll src/third_party/boringssl/src c8ff30cbe..bc6a76b0e (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
2 .text
3 .extern OPENSSL_ia32cap_P
4 .hidden OPENSSL_ia32cap_P
5
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 andl $268435456,%r8d
17 andl $1073741824,%r9d
18 orl %r9d,%r8d
19 cmpl $1342177280,%r8d
20 je _avx_shortcut
21 jmp _ssse3_shortcut
22
23 .align 16
24 .Lialu:
25 movq %rsp,%rax
26 pushq %rbx
27 pushq %rbp
28 pushq %r12
29 pushq %r13
30 pushq %r14
31 movq %rdi,%r8
32 subq $72,%rsp
33 movq %rsi,%r9
34 andq $-64,%rsp
35 movq %rdx,%r10
36 movq %rax,64(%rsp)
37 .Lprologue:
38
39 movl 0(%r8),%esi
40 movl 4(%r8),%edi
41 movl 8(%r8),%r11d
42 movl 12(%r8),%r12d
43 movl 16(%r8),%r13d
44 jmp .Lloop
45
46 .align 16
47 .Lloop:
48 movl 0(%r9),%edx
49 bswapl %edx
50 movl 4(%r9),%ebp
51 movl %r12d,%eax
52 movl %edx,0(%rsp)
53 movl %esi,%ecx
54 bswapl %ebp
55 xorl %r11d,%eax
56 roll $5,%ecx
57 andl %edi,%eax
58 leal 1518500249(%rdx,%r13,1),%r13d
59 addl %ecx,%r13d
60 xorl %r12d,%eax
61 roll $30,%edi
62 addl %eax,%r13d
63 movl 8(%r9),%r14d
64 movl %r11d,%eax
65 movl %ebp,4(%rsp)
66 movl %r13d,%ecx
67 bswapl %r14d
68 xorl %edi,%eax
69 roll $5,%ecx
70 andl %esi,%eax
71 leal 1518500249(%rbp,%r12,1),%r12d
72 addl %ecx,%r12d
73 xorl %r11d,%eax
74 roll $30,%esi
75 addl %eax,%r12d
76 movl 12(%r9),%edx
77 movl %edi,%eax
78 movl %r14d,8(%rsp)
79 movl %r12d,%ecx
80 bswapl %edx
81 xorl %esi,%eax
82 roll $5,%ecx
83 andl %r13d,%eax
84 leal 1518500249(%r14,%r11,1),%r11d
85 addl %ecx,%r11d
86 xorl %edi,%eax
87 roll $30,%r13d
88 addl %eax,%r11d
89 movl 16(%r9),%ebp
90 movl %esi,%eax
91 movl %edx,12(%rsp)
92 movl %r11d,%ecx
93 bswapl %ebp
94 xorl %r13d,%eax
95 roll $5,%ecx
96 andl %r12d,%eax
97 leal 1518500249(%rdx,%rdi,1),%edi
98 addl %ecx,%edi
99 xorl %esi,%eax
100 roll $30,%r12d
101 addl %eax,%edi
102 movl 20(%r9),%r14d
103 movl %r13d,%eax
104 movl %ebp,16(%rsp)
105 movl %edi,%ecx
106 bswapl %r14d
107 xorl %r12d,%eax
108 roll $5,%ecx
109 andl %r11d,%eax
110 leal 1518500249(%rbp,%rsi,1),%esi
111 addl %ecx,%esi
112 xorl %r13d,%eax
113 roll $30,%r11d
114 addl %eax,%esi
115 movl 24(%r9),%edx
116 movl %r12d,%eax
117 movl %r14d,20(%rsp)
118 movl %esi,%ecx
119 bswapl %edx
120 xorl %r11d,%eax
121 roll $5,%ecx
122 andl %edi,%eax
123 leal 1518500249(%r14,%r13,1),%r13d
124 addl %ecx,%r13d
125 xorl %r12d,%eax
126 roll $30,%edi
127 addl %eax,%r13d
128 movl 28(%r9),%ebp
129 movl %r11d,%eax
130 movl %edx,24(%rsp)
131 movl %r13d,%ecx
132 bswapl %ebp
133 xorl %edi,%eax
134 roll $5,%ecx
135 andl %esi,%eax
136 leal 1518500249(%rdx,%r12,1),%r12d
137 addl %ecx,%r12d
138 xorl %r11d,%eax
139 roll $30,%esi
140 addl %eax,%r12d
141 movl 32(%r9),%r14d
142 movl %edi,%eax
143 movl %ebp,28(%rsp)
144 movl %r12d,%ecx
145 bswapl %r14d
146 xorl %esi,%eax
147 roll $5,%ecx
148 andl %r13d,%eax
149 leal 1518500249(%rbp,%r11,1),%r11d
150 addl %ecx,%r11d
151 xorl %edi,%eax
152 roll $30,%r13d
153 addl %eax,%r11d
154 movl 36(%r9),%edx
155 movl %esi,%eax
156 movl %r14d,32(%rsp)
157 movl %r11d,%ecx
158 bswapl %edx
159 xorl %r13d,%eax
160 roll $5,%ecx
161 andl %r12d,%eax
162 leal 1518500249(%r14,%rdi,1),%edi
163 addl %ecx,%edi
164 xorl %esi,%eax
165 roll $30,%r12d
166 addl %eax,%edi
167 movl 40(%r9),%ebp
168 movl %r13d,%eax
169 movl %edx,36(%rsp)
170 movl %edi,%ecx
171 bswapl %ebp
172 xorl %r12d,%eax
173 roll $5,%ecx
174 andl %r11d,%eax
175 leal 1518500249(%rdx,%rsi,1),%esi
176 addl %ecx,%esi
177 xorl %r13d,%eax
178 roll $30,%r11d
179 addl %eax,%esi
180 movl 44(%r9),%r14d
181 movl %r12d,%eax
182 movl %ebp,40(%rsp)
183 movl %esi,%ecx
184 bswapl %r14d
185 xorl %r11d,%eax
186 roll $5,%ecx
187 andl %edi,%eax
188 leal 1518500249(%rbp,%r13,1),%r13d
189 addl %ecx,%r13d
190 xorl %r12d,%eax
191 roll $30,%edi
192 addl %eax,%r13d
193 movl 48(%r9),%edx
194 movl %r11d,%eax
195 movl %r14d,44(%rsp)
196 movl %r13d,%ecx
197 bswapl %edx
198 xorl %edi,%eax
199 roll $5,%ecx
200 andl %esi,%eax
201 leal 1518500249(%r14,%r12,1),%r12d
202 addl %ecx,%r12d
203 xorl %r11d,%eax
204 roll $30,%esi
205 addl %eax,%r12d
206 movl 52(%r9),%ebp
207 movl %edi,%eax
208 movl %edx,48(%rsp)
209 movl %r12d,%ecx
210 bswapl %ebp
211 xorl %esi,%eax
212 roll $5,%ecx
213 andl %r13d,%eax
214 leal 1518500249(%rdx,%r11,1),%r11d
215 addl %ecx,%r11d
216 xorl %edi,%eax
217 roll $30,%r13d
218 addl %eax,%r11d
219 movl 56(%r9),%r14d
220 movl %esi,%eax
221 movl %ebp,52(%rsp)
222 movl %r11d,%ecx
223 bswapl %r14d
224 xorl %r13d,%eax
225 roll $5,%ecx
226 andl %r12d,%eax
227 leal 1518500249(%rbp,%rdi,1),%edi
228 addl %ecx,%edi
229 xorl %esi,%eax
230 roll $30,%r12d
231 addl %eax,%edi
232 movl 60(%r9),%edx
233 movl %r13d,%eax
234 movl %r14d,56(%rsp)
235 movl %edi,%ecx
236 bswapl %edx
237 xorl %r12d,%eax
238 roll $5,%ecx
239 andl %r11d,%eax
240 leal 1518500249(%r14,%rsi,1),%esi
241 addl %ecx,%esi
242 xorl %r13d,%eax
243 roll $30,%r11d
244 addl %eax,%esi
245 xorl 0(%rsp),%ebp
246 movl %r12d,%eax
247 movl %edx,60(%rsp)
248 movl %esi,%ecx
249 xorl 8(%rsp),%ebp
250 xorl %r11d,%eax
251 roll $5,%ecx
252 xorl 32(%rsp),%ebp
253 andl %edi,%eax
254 leal 1518500249(%rdx,%r13,1),%r13d
255 roll $30,%edi
256 xorl %r12d,%eax
257 addl %ecx,%r13d
258 roll $1,%ebp
259 addl %eax,%r13d
260 xorl 4(%rsp),%r14d
261 movl %r11d,%eax
262 movl %ebp,0(%rsp)
263 movl %r13d,%ecx
264 xorl 12(%rsp),%r14d
265 xorl %edi,%eax
266 roll $5,%ecx
267 xorl 36(%rsp),%r14d
268 andl %esi,%eax
269 leal 1518500249(%rbp,%r12,1),%r12d
270 roll $30,%esi
271 xorl %r11d,%eax
272 addl %ecx,%r12d
273 roll $1,%r14d
274 addl %eax,%r12d
275 xorl 8(%rsp),%edx
276 movl %edi,%eax
277 movl %r14d,4(%rsp)
278 movl %r12d,%ecx
279 xorl 16(%rsp),%edx
280 xorl %esi,%eax
281 roll $5,%ecx
282 xorl 40(%rsp),%edx
283 andl %r13d,%eax
284 leal 1518500249(%r14,%r11,1),%r11d
285 roll $30,%r13d
286 xorl %edi,%eax
287 addl %ecx,%r11d
288 roll $1,%edx
289 addl %eax,%r11d
290 xorl 12(%rsp),%ebp
291 movl %esi,%eax
292 movl %edx,8(%rsp)
293 movl %r11d,%ecx
294 xorl 20(%rsp),%ebp
295 xorl %r13d,%eax
296 roll $5,%ecx
297 xorl 44(%rsp),%ebp
298 andl %r12d,%eax
299 leal 1518500249(%rdx,%rdi,1),%edi
300 roll $30,%r12d
301 xorl %esi,%eax
302 addl %ecx,%edi
303 roll $1,%ebp
304 addl %eax,%edi
305 xorl 16(%rsp),%r14d
306 movl %r13d,%eax
307 movl %ebp,12(%rsp)
308 movl %edi,%ecx
309 xorl 24(%rsp),%r14d
310 xorl %r12d,%eax
311 roll $5,%ecx
312 xorl 48(%rsp),%r14d
313 andl %r11d,%eax
314 leal 1518500249(%rbp,%rsi,1),%esi
315 roll $30,%r11d
316 xorl %r13d,%eax
317 addl %ecx,%esi
318 roll $1,%r14d
319 addl %eax,%esi
320 xorl 20(%rsp),%edx
321 movl %edi,%eax
322 movl %r14d,16(%rsp)
323 movl %esi,%ecx
324 xorl 28(%rsp),%edx
325 xorl %r12d,%eax
326 roll $5,%ecx
327 xorl 52(%rsp),%edx
328 leal 1859775393(%r14,%r13,1),%r13d
329 xorl %r11d,%eax
330 addl %ecx,%r13d
331 roll $30,%edi
332 addl %eax,%r13d
333 roll $1,%edx
334 xorl 24(%rsp),%ebp
335 movl %esi,%eax
336 movl %edx,20(%rsp)
337 movl %r13d,%ecx
338 xorl 32(%rsp),%ebp
339 xorl %r11d,%eax
340 roll $5,%ecx
341 xorl 56(%rsp),%ebp
342 leal 1859775393(%rdx,%r12,1),%r12d
343 xorl %edi,%eax
344 addl %ecx,%r12d
345 roll $30,%esi
346 addl %eax,%r12d
347 roll $1,%ebp
348 xorl 28(%rsp),%r14d
349 movl %r13d,%eax
350 movl %ebp,24(%rsp)
351 movl %r12d,%ecx
352 xorl 36(%rsp),%r14d
353 xorl %edi,%eax
354 roll $5,%ecx
355 xorl 60(%rsp),%r14d
356 leal 1859775393(%rbp,%r11,1),%r11d
357 xorl %esi,%eax
358 addl %ecx,%r11d
359 roll $30,%r13d
360 addl %eax,%r11d
361 roll $1,%r14d
362 xorl 32(%rsp),%edx
363 movl %r12d,%eax
364 movl %r14d,28(%rsp)
365 movl %r11d,%ecx
366 xorl 40(%rsp),%edx
367 xorl %esi,%eax
368 roll $5,%ecx
369 xorl 0(%rsp),%edx
370 leal 1859775393(%r14,%rdi,1),%edi
371 xorl %r13d,%eax
372 addl %ecx,%edi
373 roll $30,%r12d
374 addl %eax,%edi
375 roll $1,%edx
376 xorl 36(%rsp),%ebp
377 movl %r11d,%eax
378 movl %edx,32(%rsp)
379 movl %edi,%ecx
380 xorl 44(%rsp),%ebp
381 xorl %r13d,%eax
382 roll $5,%ecx
383 xorl 4(%rsp),%ebp
384 leal 1859775393(%rdx,%rsi,1),%esi
385 xorl %r12d,%eax
386 addl %ecx,%esi
387 roll $30,%r11d
388 addl %eax,%esi
389 roll $1,%ebp
390 xorl 40(%rsp),%r14d
391 movl %edi,%eax
392 movl %ebp,36(%rsp)
393 movl %esi,%ecx
394 xorl 48(%rsp),%r14d
395 xorl %r12d,%eax
396 roll $5,%ecx
397 xorl 8(%rsp),%r14d
398 leal 1859775393(%rbp,%r13,1),%r13d
399 xorl %r11d,%eax
400 addl %ecx,%r13d
401 roll $30,%edi
402 addl %eax,%r13d
403 roll $1,%r14d
404 xorl 44(%rsp),%edx
405 movl %esi,%eax
406 movl %r14d,40(%rsp)
407 movl %r13d,%ecx
408 xorl 52(%rsp),%edx
409 xorl %r11d,%eax
410 roll $5,%ecx
411 xorl 12(%rsp),%edx
412 leal 1859775393(%r14,%r12,1),%r12d
413 xorl %edi,%eax
414 addl %ecx,%r12d
415 roll $30,%esi
416 addl %eax,%r12d
417 roll $1,%edx
418 xorl 48(%rsp),%ebp
419 movl %r13d,%eax
420 movl %edx,44(%rsp)
421 movl %r12d,%ecx
422 xorl 56(%rsp),%ebp
423 xorl %edi,%eax
424 roll $5,%ecx
425 xorl 16(%rsp),%ebp
426 leal 1859775393(%rdx,%r11,1),%r11d
427 xorl %esi,%eax
428 addl %ecx,%r11d
429 roll $30,%r13d
430 addl %eax,%r11d
431 roll $1,%ebp
432 xorl 52(%rsp),%r14d
433 movl %r12d,%eax
434 movl %ebp,48(%rsp)
435 movl %r11d,%ecx
436 xorl 60(%rsp),%r14d
437 xorl %esi,%eax
438 roll $5,%ecx
439 xorl 20(%rsp),%r14d
440 leal 1859775393(%rbp,%rdi,1),%edi
441 xorl %r13d,%eax
442 addl %ecx,%edi
443 roll $30,%r12d
444 addl %eax,%edi
445 roll $1,%r14d
446 xorl 56(%rsp),%edx
447 movl %r11d,%eax
448 movl %r14d,52(%rsp)
449 movl %edi,%ecx
450 xorl 0(%rsp),%edx
451 xorl %r13d,%eax
452 roll $5,%ecx
453 xorl 24(%rsp),%edx
454 leal 1859775393(%r14,%rsi,1),%esi
455 xorl %r12d,%eax
456 addl %ecx,%esi
457 roll $30,%r11d
458 addl %eax,%esi
459 roll $1,%edx
460 xorl 60(%rsp),%ebp
461 movl %edi,%eax
462 movl %edx,56(%rsp)
463 movl %esi,%ecx
464 xorl 4(%rsp),%ebp
465 xorl %r12d,%eax
466 roll $5,%ecx
467 xorl 28(%rsp),%ebp
468 leal 1859775393(%rdx,%r13,1),%r13d
469 xorl %r11d,%eax
470 addl %ecx,%r13d
471 roll $30,%edi
472 addl %eax,%r13d
473 roll $1,%ebp
474 xorl 0(%rsp),%r14d
475 movl %esi,%eax
476 movl %ebp,60(%rsp)
477 movl %r13d,%ecx
478 xorl 8(%rsp),%r14d
479 xorl %r11d,%eax
480 roll $5,%ecx
481 xorl 32(%rsp),%r14d
482 leal 1859775393(%rbp,%r12,1),%r12d
483 xorl %edi,%eax
484 addl %ecx,%r12d
485 roll $30,%esi
486 addl %eax,%r12d
487 roll $1,%r14d
488 xorl 4(%rsp),%edx
489 movl %r13d,%eax
490 movl %r14d,0(%rsp)
491 movl %r12d,%ecx
492 xorl 12(%rsp),%edx
493 xorl %edi,%eax
494 roll $5,%ecx
495 xorl 36(%rsp),%edx
496 leal 1859775393(%r14,%r11,1),%r11d
497 xorl %esi,%eax
498 addl %ecx,%r11d
499 roll $30,%r13d
500 addl %eax,%r11d
501 roll $1,%edx
502 xorl 8(%rsp),%ebp
503 movl %r12d,%eax
504 movl %edx,4(%rsp)
505 movl %r11d,%ecx
506 xorl 16(%rsp),%ebp
507 xorl %esi,%eax
508 roll $5,%ecx
509 xorl 40(%rsp),%ebp
510 leal 1859775393(%rdx,%rdi,1),%edi
511 xorl %r13d,%eax
512 addl %ecx,%edi
513 roll $30,%r12d
514 addl %eax,%edi
515 roll $1,%ebp
516 xorl 12(%rsp),%r14d
517 movl %r11d,%eax
518 movl %ebp,8(%rsp)
519 movl %edi,%ecx
520 xorl 20(%rsp),%r14d
521 xorl %r13d,%eax
522 roll $5,%ecx
523 xorl 44(%rsp),%r14d
524 leal 1859775393(%rbp,%rsi,1),%esi
525 xorl %r12d,%eax
526 addl %ecx,%esi
527 roll $30,%r11d
528 addl %eax,%esi
529 roll $1,%r14d
530 xorl 16(%rsp),%edx
531 movl %edi,%eax
532 movl %r14d,12(%rsp)
533 movl %esi,%ecx
534 xorl 24(%rsp),%edx
535 xorl %r12d,%eax
536 roll $5,%ecx
537 xorl 48(%rsp),%edx
538 leal 1859775393(%r14,%r13,1),%r13d
539 xorl %r11d,%eax
540 addl %ecx,%r13d
541 roll $30,%edi
542 addl %eax,%r13d
543 roll $1,%edx
544 xorl 20(%rsp),%ebp
545 movl %esi,%eax
546 movl %edx,16(%rsp)
547 movl %r13d,%ecx
548 xorl 28(%rsp),%ebp
549 xorl %r11d,%eax
550 roll $5,%ecx
551 xorl 52(%rsp),%ebp
552 leal 1859775393(%rdx,%r12,1),%r12d
553 xorl %edi,%eax
554 addl %ecx,%r12d
555 roll $30,%esi
556 addl %eax,%r12d
557 roll $1,%ebp
558 xorl 24(%rsp),%r14d
559 movl %r13d,%eax
560 movl %ebp,20(%rsp)
561 movl %r12d,%ecx
562 xorl 32(%rsp),%r14d
563 xorl %edi,%eax
564 roll $5,%ecx
565 xorl 56(%rsp),%r14d
566 leal 1859775393(%rbp,%r11,1),%r11d
567 xorl %esi,%eax
568 addl %ecx,%r11d
569 roll $30,%r13d
570 addl %eax,%r11d
571 roll $1,%r14d
572 xorl 28(%rsp),%edx
573 movl %r12d,%eax
574 movl %r14d,24(%rsp)
575 movl %r11d,%ecx
576 xorl 36(%rsp),%edx
577 xorl %esi,%eax
578 roll $5,%ecx
579 xorl 60(%rsp),%edx
580 leal 1859775393(%r14,%rdi,1),%edi
581 xorl %r13d,%eax
582 addl %ecx,%edi
583 roll $30,%r12d
584 addl %eax,%edi
585 roll $1,%edx
586 xorl 32(%rsp),%ebp
587 movl %r11d,%eax
588 movl %edx,28(%rsp)
589 movl %edi,%ecx
590 xorl 40(%rsp),%ebp
591 xorl %r13d,%eax
592 roll $5,%ecx
593 xorl 0(%rsp),%ebp
594 leal 1859775393(%rdx,%rsi,1),%esi
595 xorl %r12d,%eax
596 addl %ecx,%esi
597 roll $30,%r11d
598 addl %eax,%esi
599 roll $1,%ebp
600 xorl 36(%rsp),%r14d
601 movl %r12d,%eax
602 movl %ebp,32(%rsp)
603 movl %r12d,%ebx
604 xorl 44(%rsp),%r14d
605 andl %r11d,%eax
606 movl %esi,%ecx
607 xorl 4(%rsp),%r14d
608 leal -1894007588(%rbp,%r13,1),%r13d
609 xorl %r11d,%ebx
610 roll $5,%ecx
611 addl %eax,%r13d
612 roll $1,%r14d
613 andl %edi,%ebx
614 addl %ecx,%r13d
615 roll $30,%edi
616 addl %ebx,%r13d
617 xorl 40(%rsp),%edx
618 movl %r11d,%eax
619 movl %r14d,36(%rsp)
620 movl %r11d,%ebx
621 xorl 48(%rsp),%edx
622 andl %edi,%eax
623 movl %r13d,%ecx
624 xorl 8(%rsp),%edx
625 leal -1894007588(%r14,%r12,1),%r12d
626 xorl %edi,%ebx
627 roll $5,%ecx
628 addl %eax,%r12d
629 roll $1,%edx
630 andl %esi,%ebx
631 addl %ecx,%r12d
632 roll $30,%esi
633 addl %ebx,%r12d
634 xorl 44(%rsp),%ebp
635 movl %edi,%eax
636 movl %edx,40(%rsp)
637 movl %edi,%ebx
638 xorl 52(%rsp),%ebp
639 andl %esi,%eax
640 movl %r12d,%ecx
641 xorl 12(%rsp),%ebp
642 leal -1894007588(%rdx,%r11,1),%r11d
643 xorl %esi,%ebx
644 roll $5,%ecx
645 addl %eax,%r11d
646 roll $1,%ebp
647 andl %r13d,%ebx
648 addl %ecx,%r11d
649 roll $30,%r13d
650 addl %ebx,%r11d
651 xorl 48(%rsp),%r14d
652 movl %esi,%eax
653 movl %ebp,44(%rsp)
654 movl %esi,%ebx
655 xorl 56(%rsp),%r14d
656 andl %r13d,%eax
657 movl %r11d,%ecx
658 xorl 16(%rsp),%r14d
659 leal -1894007588(%rbp,%rdi,1),%edi
660 xorl %r13d,%ebx
661 roll $5,%ecx
662 addl %eax,%edi
663 roll $1,%r14d
664 andl %r12d,%ebx
665 addl %ecx,%edi
666 roll $30,%r12d
667 addl %ebx,%edi
668 xorl 52(%rsp),%edx
669 movl %r13d,%eax
670 movl %r14d,48(%rsp)
671 movl %r13d,%ebx
672 xorl 60(%rsp),%edx
673 andl %r12d,%eax
674 movl %edi,%ecx
675 xorl 20(%rsp),%edx
676 leal -1894007588(%r14,%rsi,1),%esi
677 xorl %r12d,%ebx
678 roll $5,%ecx
679 addl %eax,%esi
680 roll $1,%edx
681 andl %r11d,%ebx
682 addl %ecx,%esi
683 roll $30,%r11d
684 addl %ebx,%esi
685 xorl 56(%rsp),%ebp
686 movl %r12d,%eax
687 movl %edx,52(%rsp)
688 movl %r12d,%ebx
689 xorl 0(%rsp),%ebp
690 andl %r11d,%eax
691 movl %esi,%ecx
692 xorl 24(%rsp),%ebp
693 leal -1894007588(%rdx,%r13,1),%r13d
694 xorl %r11d,%ebx
695 roll $5,%ecx
696 addl %eax,%r13d
697 roll $1,%ebp
698 andl %edi,%ebx
699 addl %ecx,%r13d
700 roll $30,%edi
701 addl %ebx,%r13d
702 xorl 60(%rsp),%r14d
703 movl %r11d,%eax
704 movl %ebp,56(%rsp)
705 movl %r11d,%ebx
706 xorl 4(%rsp),%r14d
707 andl %edi,%eax
708 movl %r13d,%ecx
709 xorl 28(%rsp),%r14d
710 leal -1894007588(%rbp,%r12,1),%r12d
711 xorl %edi,%ebx
712 roll $5,%ecx
713 addl %eax,%r12d
714 roll $1,%r14d
715 andl %esi,%ebx
716 addl %ecx,%r12d
717 roll $30,%esi
718 addl %ebx,%r12d
719 xorl 0(%rsp),%edx
720 movl %edi,%eax
721 movl %r14d,60(%rsp)
722 movl %edi,%ebx
723 xorl 8(%rsp),%edx
724 andl %esi,%eax
725 movl %r12d,%ecx
726 xorl 32(%rsp),%edx
727 leal -1894007588(%r14,%r11,1),%r11d
728 xorl %esi,%ebx
729 roll $5,%ecx
730 addl %eax,%r11d
731 roll $1,%edx
732 andl %r13d,%ebx
733 addl %ecx,%r11d
734 roll $30,%r13d
735 addl %ebx,%r11d
736 xorl 4(%rsp),%ebp
737 movl %esi,%eax
738 movl %edx,0(%rsp)
739 movl %esi,%ebx
740 xorl 12(%rsp),%ebp
741 andl %r13d,%eax
742 movl %r11d,%ecx
743 xorl 36(%rsp),%ebp
744 leal -1894007588(%rdx,%rdi,1),%edi
745 xorl %r13d,%ebx
746 roll $5,%ecx
747 addl %eax,%edi
748 roll $1,%ebp
749 andl %r12d,%ebx
750 addl %ecx,%edi
751 roll $30,%r12d
752 addl %ebx,%edi
753 xorl 8(%rsp),%r14d
754 movl %r13d,%eax
755 movl %ebp,4(%rsp)
756 movl %r13d,%ebx
757 xorl 16(%rsp),%r14d
758 andl %r12d,%eax
759 movl %edi,%ecx
760 xorl 40(%rsp),%r14d
761 leal -1894007588(%rbp,%rsi,1),%esi
762 xorl %r12d,%ebx
763 roll $5,%ecx
764 addl %eax,%esi
765 roll $1,%r14d
766 andl %r11d,%ebx
767 addl %ecx,%esi
768 roll $30,%r11d
769 addl %ebx,%esi
770 xorl 12(%rsp),%edx
771 movl %r12d,%eax
772 movl %r14d,8(%rsp)
773 movl %r12d,%ebx
774 xorl 20(%rsp),%edx
775 andl %r11d,%eax
776 movl %esi,%ecx
777 xorl 44(%rsp),%edx
778 leal -1894007588(%r14,%r13,1),%r13d
779 xorl %r11d,%ebx
780 roll $5,%ecx
781 addl %eax,%r13d
782 roll $1,%edx
783 andl %edi,%ebx
784 addl %ecx,%r13d
785 roll $30,%edi
786 addl %ebx,%r13d
787 xorl 16(%rsp),%ebp
788 movl %r11d,%eax
789 movl %edx,12(%rsp)
790 movl %r11d,%ebx
791 xorl 24(%rsp),%ebp
792 andl %edi,%eax
793 movl %r13d,%ecx
794 xorl 48(%rsp),%ebp
795 leal -1894007588(%rdx,%r12,1),%r12d
796 xorl %edi,%ebx
797 roll $5,%ecx
798 addl %eax,%r12d
799 roll $1,%ebp
800 andl %esi,%ebx
801 addl %ecx,%r12d
802 roll $30,%esi
803 addl %ebx,%r12d
804 xorl 20(%rsp),%r14d
805 movl %edi,%eax
806 movl %ebp,16(%rsp)
807 movl %edi,%ebx
808 xorl 28(%rsp),%r14d
809 andl %esi,%eax
810 movl %r12d,%ecx
811 xorl 52(%rsp),%r14d
812 leal -1894007588(%rbp,%r11,1),%r11d
813 xorl %esi,%ebx
814 roll $5,%ecx
815 addl %eax,%r11d
816 roll $1,%r14d
817 andl %r13d,%ebx
818 addl %ecx,%r11d
819 roll $30,%r13d
820 addl %ebx,%r11d
821 xorl 24(%rsp),%edx
822 movl %esi,%eax
823 movl %r14d,20(%rsp)
824 movl %esi,%ebx
825 xorl 32(%rsp),%edx
826 andl %r13d,%eax
827 movl %r11d,%ecx
828 xorl 56(%rsp),%edx
829 leal -1894007588(%r14,%rdi,1),%edi
830 xorl %r13d,%ebx
831 roll $5,%ecx
832 addl %eax,%edi
833 roll $1,%edx
834 andl %r12d,%ebx
835 addl %ecx,%edi
836 roll $30,%r12d
837 addl %ebx,%edi
838 xorl 28(%rsp),%ebp
839 movl %r13d,%eax
840 movl %edx,24(%rsp)
841 movl %r13d,%ebx
842 xorl 36(%rsp),%ebp
843 andl %r12d,%eax
844 movl %edi,%ecx
845 xorl 60(%rsp),%ebp
846 leal -1894007588(%rdx,%rsi,1),%esi
847 xorl %r12d,%ebx
848 roll $5,%ecx
849 addl %eax,%esi
850 roll $1,%ebp
851 andl %r11d,%ebx
852 addl %ecx,%esi
853 roll $30,%r11d
854 addl %ebx,%esi
855 xorl 32(%rsp),%r14d
856 movl %r12d,%eax
857 movl %ebp,28(%rsp)
858 movl %r12d,%ebx
859 xorl 40(%rsp),%r14d
860 andl %r11d,%eax
861 movl %esi,%ecx
862 xorl 0(%rsp),%r14d
863 leal -1894007588(%rbp,%r13,1),%r13d
864 xorl %r11d,%ebx
865 roll $5,%ecx
866 addl %eax,%r13d
867 roll $1,%r14d
868 andl %edi,%ebx
869 addl %ecx,%r13d
870 roll $30,%edi
871 addl %ebx,%r13d
872 xorl 36(%rsp),%edx
873 movl %r11d,%eax
874 movl %r14d,32(%rsp)
875 movl %r11d,%ebx
876 xorl 44(%rsp),%edx
877 andl %edi,%eax
878 movl %r13d,%ecx
879 xorl 4(%rsp),%edx
880 leal -1894007588(%r14,%r12,1),%r12d
881 xorl %edi,%ebx
882 roll $5,%ecx
883 addl %eax,%r12d
884 roll $1,%edx
885 andl %esi,%ebx
886 addl %ecx,%r12d
887 roll $30,%esi
888 addl %ebx,%r12d
889 xorl 40(%rsp),%ebp
890 movl %edi,%eax
891 movl %edx,36(%rsp)
892 movl %edi,%ebx
893 xorl 48(%rsp),%ebp
894 andl %esi,%eax
895 movl %r12d,%ecx
896 xorl 8(%rsp),%ebp
897 leal -1894007588(%rdx,%r11,1),%r11d
898 xorl %esi,%ebx
899 roll $5,%ecx
900 addl %eax,%r11d
901 roll $1,%ebp
902 andl %r13d,%ebx
903 addl %ecx,%r11d
904 roll $30,%r13d
905 addl %ebx,%r11d
906 xorl 44(%rsp),%r14d
907 movl %esi,%eax
908 movl %ebp,40(%rsp)
909 movl %esi,%ebx
910 xorl 52(%rsp),%r14d
911 andl %r13d,%eax
912 movl %r11d,%ecx
913 xorl 12(%rsp),%r14d
914 leal -1894007588(%rbp,%rdi,1),%edi
915 xorl %r13d,%ebx
916 roll $5,%ecx
917 addl %eax,%edi
918 roll $1,%r14d
919 andl %r12d,%ebx
920 addl %ecx,%edi
921 roll $30,%r12d
922 addl %ebx,%edi
923 xorl 48(%rsp),%edx
924 movl %r13d,%eax
925 movl %r14d,44(%rsp)
926 movl %r13d,%ebx
927 xorl 56(%rsp),%edx
928 andl %r12d,%eax
929 movl %edi,%ecx
930 xorl 16(%rsp),%edx
931 leal -1894007588(%r14,%rsi,1),%esi
932 xorl %r12d,%ebx
933 roll $5,%ecx
934 addl %eax,%esi
935 roll $1,%edx
936 andl %r11d,%ebx
937 addl %ecx,%esi
938 roll $30,%r11d
939 addl %ebx,%esi
940 xorl 52(%rsp),%ebp
941 movl %edi,%eax
942 movl %edx,48(%rsp)
943 movl %esi,%ecx
944 xorl 60(%rsp),%ebp
945 xorl %r12d,%eax
946 roll $5,%ecx
947 xorl 20(%rsp),%ebp
948 leal -899497514(%rdx,%r13,1),%r13d
949 xorl %r11d,%eax
950 addl %ecx,%r13d
951 roll $30,%edi
952 addl %eax,%r13d
953 roll $1,%ebp
954 xorl 56(%rsp),%r14d
955 movl %esi,%eax
956 movl %ebp,52(%rsp)
957 movl %r13d,%ecx
958 xorl 0(%rsp),%r14d
959 xorl %r11d,%eax
960 roll $5,%ecx
961 xorl 24(%rsp),%r14d
962 leal -899497514(%rbp,%r12,1),%r12d
963 xorl %edi,%eax
964 addl %ecx,%r12d
965 roll $30,%esi
966 addl %eax,%r12d
967 roll $1,%r14d
968 xorl 60(%rsp),%edx
969 movl %r13d,%eax
970 movl %r14d,56(%rsp)
971 movl %r12d,%ecx
972 xorl 4(%rsp),%edx
973 xorl %edi,%eax
974 roll $5,%ecx
975 xorl 28(%rsp),%edx
976 leal -899497514(%r14,%r11,1),%r11d
977 xorl %esi,%eax
978 addl %ecx,%r11d
979 roll $30,%r13d
980 addl %eax,%r11d
981 roll $1,%edx
982 xorl 0(%rsp),%ebp
983 movl %r12d,%eax
984 movl %edx,60(%rsp)
985 movl %r11d,%ecx
986 xorl 8(%rsp),%ebp
987 xorl %esi,%eax
988 roll $5,%ecx
989 xorl 32(%rsp),%ebp
990 leal -899497514(%rdx,%rdi,1),%edi
991 xorl %r13d,%eax
992 addl %ecx,%edi
993 roll $30,%r12d
994 addl %eax,%edi
995 roll $1,%ebp
996 xorl 4(%rsp),%r14d
997 movl %r11d,%eax
998 movl %ebp,0(%rsp)
999 movl %edi,%ecx
1000 xorl 12(%rsp),%r14d
1001 xorl %r13d,%eax
1002 roll $5,%ecx
1003 xorl 36(%rsp),%r14d
1004 leal -899497514(%rbp,%rsi,1),%esi
1005 xorl %r12d,%eax
1006 addl %ecx,%esi
1007 roll $30,%r11d
1008 addl %eax,%esi
1009 roll $1,%r14d
1010 xorl 8(%rsp),%edx
1011 movl %edi,%eax
1012 movl %r14d,4(%rsp)
1013 movl %esi,%ecx
1014 xorl 16(%rsp),%edx
1015 xorl %r12d,%eax
1016 roll $5,%ecx
1017 xorl 40(%rsp),%edx
1018 leal -899497514(%r14,%r13,1),%r13d
1019 xorl %r11d,%eax
1020 addl %ecx,%r13d
1021 roll $30,%edi
1022 addl %eax,%r13d
1023 roll $1,%edx
1024 xorl 12(%rsp),%ebp
1025 movl %esi,%eax
1026 movl %edx,8(%rsp)
1027 movl %r13d,%ecx
1028 xorl 20(%rsp),%ebp
1029 xorl %r11d,%eax
1030 roll $5,%ecx
1031 xorl 44(%rsp),%ebp
1032 leal -899497514(%rdx,%r12,1),%r12d
1033 xorl %edi,%eax
1034 addl %ecx,%r12d
1035 roll $30,%esi
1036 addl %eax,%r12d
1037 roll $1,%ebp
1038 xorl 16(%rsp),%r14d
1039 movl %r13d,%eax
1040 movl %ebp,12(%rsp)
1041 movl %r12d,%ecx
1042 xorl 24(%rsp),%r14d
1043 xorl %edi,%eax
1044 roll $5,%ecx
1045 xorl 48(%rsp),%r14d
1046 leal -899497514(%rbp,%r11,1),%r11d
1047 xorl %esi,%eax
1048 addl %ecx,%r11d
1049 roll $30,%r13d
1050 addl %eax,%r11d
1051 roll $1,%r14d
1052 xorl 20(%rsp),%edx
1053 movl %r12d,%eax
1054 movl %r14d,16(%rsp)
1055 movl %r11d,%ecx
1056 xorl 28(%rsp),%edx
1057 xorl %esi,%eax
1058 roll $5,%ecx
1059 xorl 52(%rsp),%edx
1060 leal -899497514(%r14,%rdi,1),%edi
1061 xorl %r13d,%eax
1062 addl %ecx,%edi
1063 roll $30,%r12d
1064 addl %eax,%edi
1065 roll $1,%edx
1066 xorl 24(%rsp),%ebp
1067 movl %r11d,%eax
1068 movl %edx,20(%rsp)
1069 movl %edi,%ecx
1070 xorl 32(%rsp),%ebp
1071 xorl %r13d,%eax
1072 roll $5,%ecx
1073 xorl 56(%rsp),%ebp
1074 leal -899497514(%rdx,%rsi,1),%esi
1075 xorl %r12d,%eax
1076 addl %ecx,%esi
1077 roll $30,%r11d
1078 addl %eax,%esi
1079 roll $1,%ebp
1080 xorl 28(%rsp),%r14d
1081 movl %edi,%eax
1082 movl %ebp,24(%rsp)
1083 movl %esi,%ecx
1084 xorl 36(%rsp),%r14d
1085 xorl %r12d,%eax
1086 roll $5,%ecx
1087 xorl 60(%rsp),%r14d
1088 leal -899497514(%rbp,%r13,1),%r13d
1089 xorl %r11d,%eax
1090 addl %ecx,%r13d
1091 roll $30,%edi
1092 addl %eax,%r13d
1093 roll $1,%r14d
1094 xorl 32(%rsp),%edx
1095 movl %esi,%eax
1096 movl %r14d,28(%rsp)
1097 movl %r13d,%ecx
1098 xorl 40(%rsp),%edx
1099 xorl %r11d,%eax
1100 roll $5,%ecx
1101 xorl 0(%rsp),%edx
1102 leal -899497514(%r14,%r12,1),%r12d
1103 xorl %edi,%eax
1104 addl %ecx,%r12d
1105 roll $30,%esi
1106 addl %eax,%r12d
1107 roll $1,%edx
1108 xorl 36(%rsp),%ebp
1109 movl %r13d,%eax
1110
1111 movl %r12d,%ecx
1112 xorl 44(%rsp),%ebp
1113 xorl %edi,%eax
1114 roll $5,%ecx
1115 xorl 4(%rsp),%ebp
1116 leal -899497514(%rdx,%r11,1),%r11d
1117 xorl %esi,%eax
1118 addl %ecx,%r11d
1119 roll $30,%r13d
1120 addl %eax,%r11d
1121 roll $1,%ebp
1122 xorl 40(%rsp),%r14d
1123 movl %r12d,%eax
1124
1125 movl %r11d,%ecx
1126 xorl 48(%rsp),%r14d
1127 xorl %esi,%eax
1128 roll $5,%ecx
1129 xorl 8(%rsp),%r14d
1130 leal -899497514(%rbp,%rdi,1),%edi
1131 xorl %r13d,%eax
1132 addl %ecx,%edi
1133 roll $30,%r12d
1134 addl %eax,%edi
1135 roll $1,%r14d
1136 xorl 44(%rsp),%edx
1137 movl %r11d,%eax
1138
1139 movl %edi,%ecx
1140 xorl 52(%rsp),%edx
1141 xorl %r13d,%eax
1142 roll $5,%ecx
1143 xorl 12(%rsp),%edx
1144 leal -899497514(%r14,%rsi,1),%esi
1145 xorl %r12d,%eax
1146 addl %ecx,%esi
1147 roll $30,%r11d
1148 addl %eax,%esi
1149 roll $1,%edx
1150 xorl 48(%rsp),%ebp
1151 movl %edi,%eax
1152
1153 movl %esi,%ecx
1154 xorl 56(%rsp),%ebp
1155 xorl %r12d,%eax
1156 roll $5,%ecx
1157 xorl 16(%rsp),%ebp
1158 leal -899497514(%rdx,%r13,1),%r13d
1159 xorl %r11d,%eax
1160 addl %ecx,%r13d
1161 roll $30,%edi
1162 addl %eax,%r13d
1163 roll $1,%ebp
1164 xorl 52(%rsp),%r14d
1165 movl %esi,%eax
1166
1167 movl %r13d,%ecx
1168 xorl 60(%rsp),%r14d
1169 xorl %r11d,%eax
1170 roll $5,%ecx
1171 xorl 20(%rsp),%r14d
1172 leal -899497514(%rbp,%r12,1),%r12d
1173 xorl %edi,%eax
1174 addl %ecx,%r12d
1175 roll $30,%esi
1176 addl %eax,%r12d
1177 roll $1,%r14d
1178 xorl 56(%rsp),%edx
1179 movl %r13d,%eax
1180
1181 movl %r12d,%ecx
1182 xorl 0(%rsp),%edx
1183 xorl %edi,%eax
1184 roll $5,%ecx
1185 xorl 24(%rsp),%edx
1186 leal -899497514(%r14,%r11,1),%r11d
1187 xorl %esi,%eax
1188 addl %ecx,%r11d
1189 roll $30,%r13d
1190 addl %eax,%r11d
1191 roll $1,%edx
1192 xorl 60(%rsp),%ebp
1193 movl %r12d,%eax
1194
1195 movl %r11d,%ecx
1196 xorl 4(%rsp),%ebp
1197 xorl %esi,%eax
1198 roll $5,%ecx
1199 xorl 28(%rsp),%ebp
1200 leal -899497514(%rdx,%rdi,1),%edi
1201 xorl %r13d,%eax
1202 addl %ecx,%edi
1203 roll $30,%r12d
1204 addl %eax,%edi
1205 roll $1,%ebp
1206 movl %r11d,%eax
1207 movl %edi,%ecx
1208 xorl %r13d,%eax
1209 leal -899497514(%rbp,%rsi,1),%esi
1210 roll $5,%ecx
1211 xorl %r12d,%eax
1212 addl %ecx,%esi
1213 roll $30,%r11d
1214 addl %eax,%esi
1215 addl 0(%r8),%esi
1216 addl 4(%r8),%edi
1217 addl 8(%r8),%r11d
1218 addl 12(%r8),%r12d
1219 addl 16(%r8),%r13d
1220 movl %esi,0(%r8)
1221 movl %edi,4(%r8)
1222 movl %r11d,8(%r8)
1223 movl %r12d,12(%r8)
1224 movl %r13d,16(%r8)
1225
1226 subq $1,%r10
1227 leaq 64(%r9),%r9
1228 jnz .Lloop
1229
1230 movq 64(%rsp),%rsi
1231 movq -40(%rsi),%r14
1232 movq -32(%rsi),%r13
1233 movq -24(%rsi),%r12
1234 movq -16(%rsi),%rbp
1235 movq -8(%rsi),%rbx
1236 leaq (%rsi),%rsp
1237 .Lepilogue:
1238 .byte 0xf3,0xc3
1239 .size sha1_block_data_order,.-sha1_block_data_order
1240 .type sha1_block_data_order_ssse3,@function
1241 .align 16
1242 sha1_block_data_order_ssse3:
1243 _ssse3_shortcut:
1244 movq %rsp,%r11
1245 pushq %rbx
1246 pushq %rbp
1247 pushq %r12
1248 pushq %r13
1249 pushq %r14
1250 leaq -64(%rsp),%rsp
1251 andq $-64,%rsp
1252 movq %rdi,%r8
1253 movq %rsi,%r9
1254 movq %rdx,%r10
1255
1256 shlq $6,%r10
1257 addq %r9,%r10
1258 leaq K_XX_XX+64(%rip),%r14
1259
1260 movl 0(%r8),%eax
1261 movl 4(%r8),%ebx
1262 movl 8(%r8),%ecx
1263 movl 12(%r8),%edx
1264 movl %ebx,%esi
1265 movl 16(%r8),%ebp
1266 movl %ecx,%edi
1267 xorl %edx,%edi
1268 andl %edi,%esi
1269
1270 movdqa 64(%r14),%xmm6
1271 movdqa -64(%r14),%xmm9
1272 movdqu 0(%r9),%xmm0
1273 movdqu 16(%r9),%xmm1
1274 movdqu 32(%r9),%xmm2
1275 movdqu 48(%r9),%xmm3
1276 .byte 102,15,56,0,198
1277 .byte 102,15,56,0,206
1278 .byte 102,15,56,0,214
1279 addq $64,%r9
1280 paddd %xmm9,%xmm0
1281 .byte 102,15,56,0,222
1282 paddd %xmm9,%xmm1
1283 paddd %xmm9,%xmm2
1284 movdqa %xmm0,0(%rsp)
1285 psubd %xmm9,%xmm0
1286 movdqa %xmm1,16(%rsp)
1287 psubd %xmm9,%xmm1
1288 movdqa %xmm2,32(%rsp)
1289 psubd %xmm9,%xmm2
1290 jmp .Loop_ssse3
1291 .align 16
1292 .Loop_ssse3:
1293 rorl $2,%ebx
1294 pshufd $238,%xmm0,%xmm4
1295 xorl %edx,%esi
1296 movdqa %xmm3,%xmm8
1297 paddd %xmm3,%xmm9
1298 movl %eax,%edi
1299 addl 0(%rsp),%ebp
1300 punpcklqdq %xmm1,%xmm4
1301 xorl %ecx,%ebx
1302 roll $5,%eax
1303 addl %esi,%ebp
1304 psrldq $4,%xmm8
1305 andl %ebx,%edi
1306 xorl %ecx,%ebx
1307 pxor %xmm0,%xmm4
1308 addl %eax,%ebp
1309 rorl $7,%eax
1310 pxor %xmm2,%xmm8
1311 xorl %ecx,%edi
1312 movl %ebp,%esi
1313 addl 4(%rsp),%edx
1314 pxor %xmm8,%xmm4
1315 xorl %ebx,%eax
1316 roll $5,%ebp
1317 movdqa %xmm9,48(%rsp)
1318 addl %edi,%edx
1319 andl %eax,%esi
1320 movdqa %xmm4,%xmm10
1321 xorl %ebx,%eax
1322 addl %ebp,%edx
1323 rorl $7,%ebp
1324 movdqa %xmm4,%xmm8
1325 xorl %ebx,%esi
1326 pslldq $12,%xmm10
1327 paddd %xmm4,%xmm4
1328 movl %edx,%edi
1329 addl 8(%rsp),%ecx
1330 psrld $31,%xmm8
1331 xorl %eax,%ebp
1332 roll $5,%edx
1333 addl %esi,%ecx
1334 movdqa %xmm10,%xmm9
1335 andl %ebp,%edi
1336 xorl %eax,%ebp
1337 psrld $30,%xmm10
1338 addl %edx,%ecx
1339 rorl $7,%edx
1340 por %xmm8,%xmm4
1341 xorl %eax,%edi
1342 movl %ecx,%esi
1343 addl 12(%rsp),%ebx
1344 pslld $2,%xmm9
1345 pxor %xmm10,%xmm4
1346 xorl %ebp,%edx
1347 movdqa -64(%r14),%xmm10
1348 roll $5,%ecx
1349 addl %edi,%ebx
1350 andl %edx,%esi
1351 pxor %xmm9,%xmm4
1352 xorl %ebp,%edx
1353 addl %ecx,%ebx
1354 rorl $7,%ecx
1355 pshufd $238,%xmm1,%xmm5
1356 xorl %ebp,%esi
1357 movdqa %xmm4,%xmm9
1358 paddd %xmm4,%xmm10
1359 movl %ebx,%edi
1360 addl 16(%rsp),%eax
1361 punpcklqdq %xmm2,%xmm5
1362 xorl %edx,%ecx
1363 roll $5,%ebx
1364 addl %esi,%eax
1365 psrldq $4,%xmm9
1366 andl %ecx,%edi
1367 xorl %edx,%ecx
1368 pxor %xmm1,%xmm5
1369 addl %ebx,%eax
1370 rorl $7,%ebx
1371 pxor %xmm3,%xmm9
1372 xorl %edx,%edi
1373 movl %eax,%esi
1374 addl 20(%rsp),%ebp
1375 pxor %xmm9,%xmm5
1376 xorl %ecx,%ebx
1377 roll $5,%eax
1378 movdqa %xmm10,0(%rsp)
1379 addl %edi,%ebp
1380 andl %ebx,%esi
1381 movdqa %xmm5,%xmm8
1382 xorl %ecx,%ebx
1383 addl %eax,%ebp
1384 rorl $7,%eax
1385 movdqa %xmm5,%xmm9
1386 xorl %ecx,%esi
1387 pslldq $12,%xmm8
1388 paddd %xmm5,%xmm5
1389 movl %ebp,%edi
1390 addl 24(%rsp),%edx
1391 psrld $31,%xmm9
1392 xorl %ebx,%eax
1393 roll $5,%ebp
1394 addl %esi,%edx
1395 movdqa %xmm8,%xmm10
1396 andl %eax,%edi
1397 xorl %ebx,%eax
1398 psrld $30,%xmm8
1399 addl %ebp,%edx
1400 rorl $7,%ebp
1401 por %xmm9,%xmm5
1402 xorl %ebx,%edi
1403 movl %edx,%esi
1404 addl 28(%rsp),%ecx
1405 pslld $2,%xmm10
1406 pxor %xmm8,%xmm5
1407 xorl %eax,%ebp
1408 movdqa -32(%r14),%xmm8
1409 roll $5,%edx
1410 addl %edi,%ecx
1411 andl %ebp,%esi
1412 pxor %xmm10,%xmm5
1413 xorl %eax,%ebp
1414 addl %edx,%ecx
1415 rorl $7,%edx
1416 pshufd $238,%xmm2,%xmm6
1417 xorl %eax,%esi
1418 movdqa %xmm5,%xmm10
1419 paddd %xmm5,%xmm8
1420 movl %ecx,%edi
1421 addl 32(%rsp),%ebx
1422 punpcklqdq %xmm3,%xmm6
1423 xorl %ebp,%edx
1424 roll $5,%ecx
1425 addl %esi,%ebx
1426 psrldq $4,%xmm10
1427 andl %edx,%edi
1428 xorl %ebp,%edx
1429 pxor %xmm2,%xmm6
1430 addl %ecx,%ebx
1431 rorl $7,%ecx
1432 pxor %xmm4,%xmm10
1433 xorl %ebp,%edi
1434 movl %ebx,%esi
1435 addl 36(%rsp),%eax
1436 pxor %xmm10,%xmm6
1437 xorl %edx,%ecx
1438 roll $5,%ebx
1439 movdqa %xmm8,16(%rsp)
1440 addl %edi,%eax
1441 andl %ecx,%esi
1442 movdqa %xmm6,%xmm9
1443 xorl %edx,%ecx
1444 addl %ebx,%eax
1445 rorl $7,%ebx
1446 movdqa %xmm6,%xmm10
1447 xorl %edx,%esi
1448 pslldq $12,%xmm9
1449 paddd %xmm6,%xmm6
1450 movl %eax,%edi
1451 addl 40(%rsp),%ebp
1452 psrld $31,%xmm10
1453 xorl %ecx,%ebx
1454 roll $5,%eax
1455 addl %esi,%ebp
1456 movdqa %xmm9,%xmm8
1457 andl %ebx,%edi
1458 xorl %ecx,%ebx
1459 psrld $30,%xmm9
1460 addl %eax,%ebp
1461 rorl $7,%eax
1462 por %xmm10,%xmm6
1463 xorl %ecx,%edi
1464 movl %ebp,%esi
1465 addl 44(%rsp),%edx
1466 pslld $2,%xmm8
1467 pxor %xmm9,%xmm6
1468 xorl %ebx,%eax
1469 movdqa -32(%r14),%xmm9
1470 roll $5,%ebp
1471 addl %edi,%edx
1472 andl %eax,%esi
1473 pxor %xmm8,%xmm6
1474 xorl %ebx,%eax
1475 addl %ebp,%edx
1476 rorl $7,%ebp
1477 pshufd $238,%xmm3,%xmm7
1478 xorl %ebx,%esi
1479 movdqa %xmm6,%xmm8
1480 paddd %xmm6,%xmm9
1481 movl %edx,%edi
1482 addl 48(%rsp),%ecx
1483 punpcklqdq %xmm4,%xmm7
1484 xorl %eax,%ebp
1485 roll $5,%edx
1486 addl %esi,%ecx
1487 psrldq $4,%xmm8
1488 andl %ebp,%edi
1489 xorl %eax,%ebp
1490 pxor %xmm3,%xmm7
1491 addl %edx,%ecx
1492 rorl $7,%edx
1493 pxor %xmm5,%xmm8
1494 xorl %eax,%edi
1495 movl %ecx,%esi
1496 addl 52(%rsp),%ebx
1497 pxor %xmm8,%xmm7
1498 xorl %ebp,%edx
1499 roll $5,%ecx
1500 movdqa %xmm9,32(%rsp)
1501 addl %edi,%ebx
1502 andl %edx,%esi
1503 movdqa %xmm7,%xmm10
1504 xorl %ebp,%edx
1505 addl %ecx,%ebx
1506 rorl $7,%ecx
1507 movdqa %xmm7,%xmm8
1508 xorl %ebp,%esi
1509 pslldq $12,%xmm10
1510 paddd %xmm7,%xmm7
1511 movl %ebx,%edi
1512 addl 56(%rsp),%eax
1513 psrld $31,%xmm8
1514 xorl %edx,%ecx
1515 roll $5,%ebx
1516 addl %esi,%eax
1517 movdqa %xmm10,%xmm9
1518 andl %ecx,%edi
1519 xorl %edx,%ecx
1520 psrld $30,%xmm10
1521 addl %ebx,%eax
1522 rorl $7,%ebx
1523 por %xmm8,%xmm7
1524 xorl %edx,%edi
1525 movl %eax,%esi
1526 addl 60(%rsp),%ebp
1527 pslld $2,%xmm9
1528 pxor %xmm10,%xmm7
1529 xorl %ecx,%ebx
1530 movdqa -32(%r14),%xmm10
1531 roll $5,%eax
1532 addl %edi,%ebp
1533 andl %ebx,%esi
1534 pxor %xmm9,%xmm7
1535 pshufd $238,%xmm6,%xmm9
1536 xorl %ecx,%ebx
1537 addl %eax,%ebp
1538 rorl $7,%eax
1539 pxor %xmm4,%xmm0
1540 xorl %ecx,%esi
1541 movl %ebp,%edi
1542 addl 0(%rsp),%edx
1543 punpcklqdq %xmm7,%xmm9
1544 xorl %ebx,%eax
1545 roll $5,%ebp
1546 pxor %xmm1,%xmm0
1547 addl %esi,%edx
1548 andl %eax,%edi
1549 movdqa %xmm10,%xmm8
1550 xorl %ebx,%eax
1551 paddd %xmm7,%xmm10
1552 addl %ebp,%edx
1553 pxor %xmm9,%xmm0
1554 rorl $7,%ebp
1555 xorl %ebx,%edi
1556 movl %edx,%esi
1557 addl 4(%rsp),%ecx
1558 movdqa %xmm0,%xmm9
1559 xorl %eax,%ebp
1560 roll $5,%edx
1561 movdqa %xmm10,48(%rsp)
1562 addl %edi,%ecx
1563 andl %ebp,%esi
1564 xorl %eax,%ebp
1565 pslld $2,%xmm0
1566 addl %edx,%ecx
1567 rorl $7,%edx
1568 psrld $30,%xmm9
1569 xorl %eax,%esi
1570 movl %ecx,%edi
1571 addl 8(%rsp),%ebx
1572 por %xmm9,%xmm0
1573 xorl %ebp,%edx
1574 roll $5,%ecx
1575 pshufd $238,%xmm7,%xmm10
1576 addl %esi,%ebx
1577 andl %edx,%edi
1578 xorl %ebp,%edx
1579 addl %ecx,%ebx
1580 addl 12(%rsp),%eax
1581 xorl %ebp,%edi
1582 movl %ebx,%esi
1583 roll $5,%ebx
1584 addl %edi,%eax
1585 xorl %edx,%esi
1586 rorl $7,%ecx
1587 addl %ebx,%eax
1588 pxor %xmm5,%xmm1
1589 addl 16(%rsp),%ebp
1590 xorl %ecx,%esi
1591 punpcklqdq %xmm0,%xmm10
1592 movl %eax,%edi
1593 roll $5,%eax
1594 pxor %xmm2,%xmm1
1595 addl %esi,%ebp
1596 xorl %ecx,%edi
1597 movdqa %xmm8,%xmm9
1598 rorl $7,%ebx
1599 paddd %xmm0,%xmm8
1600 addl %eax,%ebp
1601 pxor %xmm10,%xmm1
1602 addl 20(%rsp),%edx
1603 xorl %ebx,%edi
1604 movl %ebp,%esi
1605 roll $5,%ebp
1606 movdqa %xmm1,%xmm10
1607 addl %edi,%edx
1608 xorl %ebx,%esi
1609 movdqa %xmm8,0(%rsp)
1610 rorl $7,%eax
1611 addl %ebp,%edx
1612 addl 24(%rsp),%ecx
1613 pslld $2,%xmm1
1614 xorl %eax,%esi
1615 movl %edx,%edi
1616 psrld $30,%xmm10
1617 roll $5,%edx
1618 addl %esi,%ecx
1619 xorl %eax,%edi
1620 rorl $7,%ebp
1621 por %xmm10,%xmm1
1622 addl %edx,%ecx
1623 addl 28(%rsp),%ebx
1624 pshufd $238,%xmm0,%xmm8
1625 xorl %ebp,%edi
1626 movl %ecx,%esi
1627 roll $5,%ecx
1628 addl %edi,%ebx
1629 xorl %ebp,%esi
1630 rorl $7,%edx
1631 addl %ecx,%ebx
1632 pxor %xmm6,%xmm2
1633 addl 32(%rsp),%eax
1634 xorl %edx,%esi
1635 punpcklqdq %xmm1,%xmm8
1636 movl %ebx,%edi
1637 roll $5,%ebx
1638 pxor %xmm3,%xmm2
1639 addl %esi,%eax
1640 xorl %edx,%edi
1641 movdqa 0(%r14),%xmm10
1642 rorl $7,%ecx
1643 paddd %xmm1,%xmm9
1644 addl %ebx,%eax
1645 pxor %xmm8,%xmm2
1646 addl 36(%rsp),%ebp
1647 xorl %ecx,%edi
1648 movl %eax,%esi
1649 roll $5,%eax
1650 movdqa %xmm2,%xmm8
1651 addl %edi,%ebp
1652 xorl %ecx,%esi
1653 movdqa %xmm9,16(%rsp)
1654 rorl $7,%ebx
1655 addl %eax,%ebp
1656 addl 40(%rsp),%edx
1657 pslld $2,%xmm2
1658 xorl %ebx,%esi
1659 movl %ebp,%edi
1660 psrld $30,%xmm8
1661 roll $5,%ebp
1662 addl %esi,%edx
1663 xorl %ebx,%edi
1664 rorl $7,%eax
1665 por %xmm8,%xmm2
1666 addl %ebp,%edx
1667 addl 44(%rsp),%ecx
1668 pshufd $238,%xmm1,%xmm9
1669 xorl %eax,%edi
1670 movl %edx,%esi
1671 roll $5,%edx
1672 addl %edi,%ecx
1673 xorl %eax,%esi
1674 rorl $7,%ebp
1675 addl %edx,%ecx
1676 pxor %xmm7,%xmm3
1677 addl 48(%rsp),%ebx
1678 xorl %ebp,%esi
1679 punpcklqdq %xmm2,%xmm9
1680 movl %ecx,%edi
1681 roll $5,%ecx
1682 pxor %xmm4,%xmm3
1683 addl %esi,%ebx
1684 xorl %ebp,%edi
1685 movdqa %xmm10,%xmm8
1686 rorl $7,%edx
1687 paddd %xmm2,%xmm10
1688 addl %ecx,%ebx
1689 pxor %xmm9,%xmm3
1690 addl 52(%rsp),%eax
1691 xorl %edx,%edi
1692 movl %ebx,%esi
1693 roll $5,%ebx
1694 movdqa %xmm3,%xmm9
1695 addl %edi,%eax
1696 xorl %edx,%esi
1697 movdqa %xmm10,32(%rsp)
1698 rorl $7,%ecx
1699 addl %ebx,%eax
1700 addl 56(%rsp),%ebp
1701 pslld $2,%xmm3
1702 xorl %ecx,%esi
1703 movl %eax,%edi
1704 psrld $30,%xmm9
1705 roll $5,%eax
1706 addl %esi,%ebp
1707 xorl %ecx,%edi
1708 rorl $7,%ebx
1709 por %xmm9,%xmm3
1710 addl %eax,%ebp
1711 addl 60(%rsp),%edx
1712 pshufd $238,%xmm2,%xmm10
1713 xorl %ebx,%edi
1714 movl %ebp,%esi
1715 roll $5,%ebp
1716 addl %edi,%edx
1717 xorl %ebx,%esi
1718 rorl $7,%eax
1719 addl %ebp,%edx
1720 pxor %xmm0,%xmm4
1721 addl 0(%rsp),%ecx
1722 xorl %eax,%esi
1723 punpcklqdq %xmm3,%xmm10
1724 movl %edx,%edi
1725 roll $5,%edx
1726 pxor %xmm5,%xmm4
1727 addl %esi,%ecx
1728 xorl %eax,%edi
1729 movdqa %xmm8,%xmm9
1730 rorl $7,%ebp
1731 paddd %xmm3,%xmm8
1732 addl %edx,%ecx
1733 pxor %xmm10,%xmm4
1734 addl 4(%rsp),%ebx
1735 xorl %ebp,%edi
1736 movl %ecx,%esi
1737 roll $5,%ecx
1738 movdqa %xmm4,%xmm10
1739 addl %edi,%ebx
1740 xorl %ebp,%esi
1741 movdqa %xmm8,48(%rsp)
1742 rorl $7,%edx
1743 addl %ecx,%ebx
1744 addl 8(%rsp),%eax
1745 pslld $2,%xmm4
1746 xorl %edx,%esi
1747 movl %ebx,%edi
1748 psrld $30,%xmm10
1749 roll $5,%ebx
1750 addl %esi,%eax
1751 xorl %edx,%edi
1752 rorl $7,%ecx
1753 por %xmm10,%xmm4
1754 addl %ebx,%eax
1755 addl 12(%rsp),%ebp
1756 pshufd $238,%xmm3,%xmm8
1757 xorl %ecx,%edi
1758 movl %eax,%esi
1759 roll $5,%eax
1760 addl %edi,%ebp
1761 xorl %ecx,%esi
1762 rorl $7,%ebx
1763 addl %eax,%ebp
1764 pxor %xmm1,%xmm5
1765 addl 16(%rsp),%edx
1766 xorl %ebx,%esi
1767 punpcklqdq %xmm4,%xmm8
1768 movl %ebp,%edi
1769 roll $5,%ebp
1770 pxor %xmm6,%xmm5
1771 addl %esi,%edx
1772 xorl %ebx,%edi
1773 movdqa %xmm9,%xmm10
1774 rorl $7,%eax
1775 paddd %xmm4,%xmm9
1776 addl %ebp,%edx
1777 pxor %xmm8,%xmm5
1778 addl 20(%rsp),%ecx
1779 xorl %eax,%edi
1780 movl %edx,%esi
1781 roll $5,%edx
1782 movdqa %xmm5,%xmm8
1783 addl %edi,%ecx
1784 xorl %eax,%esi
1785 movdqa %xmm9,0(%rsp)
1786 rorl $7,%ebp
1787 addl %edx,%ecx
1788 addl 24(%rsp),%ebx
1789 pslld $2,%xmm5
1790 xorl %ebp,%esi
1791 movl %ecx,%edi
1792 psrld $30,%xmm8
1793 roll $5,%ecx
1794 addl %esi,%ebx
1795 xorl %ebp,%edi
1796 rorl $7,%edx
1797 por %xmm8,%xmm5
1798 addl %ecx,%ebx
1799 addl 28(%rsp),%eax
1800 pshufd $238,%xmm4,%xmm9
1801 rorl $7,%ecx
1802 movl %ebx,%esi
1803 xorl %edx,%edi
1804 roll $5,%ebx
1805 addl %edi,%eax
1806 xorl %ecx,%esi
1807 xorl %edx,%ecx
1808 addl %ebx,%eax
1809 pxor %xmm2,%xmm6
1810 addl 32(%rsp),%ebp
1811 andl %ecx,%esi
1812 xorl %edx,%ecx
1813 rorl $7,%ebx
1814 punpcklqdq %xmm5,%xmm9
1815 movl %eax,%edi
1816 xorl %ecx,%esi
1817 pxor %xmm7,%xmm6
1818 roll $5,%eax
1819 addl %esi,%ebp
1820 movdqa %xmm10,%xmm8
1821 xorl %ebx,%edi
1822 paddd %xmm5,%xmm10
1823 xorl %ecx,%ebx
1824 pxor %xmm9,%xmm6
1825 addl %eax,%ebp
1826 addl 36(%rsp),%edx
1827 andl %ebx,%edi
1828 xorl %ecx,%ebx
1829 rorl $7,%eax
1830 movdqa %xmm6,%xmm9
1831 movl %ebp,%esi
1832 xorl %ebx,%edi
1833 movdqa %xmm10,16(%rsp)
1834 roll $5,%ebp
1835 addl %edi,%edx
1836 xorl %eax,%esi
1837 pslld $2,%xmm6
1838 xorl %ebx,%eax
1839 addl %ebp,%edx
1840 psrld $30,%xmm9
1841 addl 40(%rsp),%ecx
1842 andl %eax,%esi
1843 xorl %ebx,%eax
1844 por %xmm9,%xmm6
1845 rorl $7,%ebp
1846 movl %edx,%edi
1847 xorl %eax,%esi
1848 roll $5,%edx
1849 pshufd $238,%xmm5,%xmm10
1850 addl %esi,%ecx
1851 xorl %ebp,%edi
1852 xorl %eax,%ebp
1853 addl %edx,%ecx
1854 addl 44(%rsp),%ebx
1855 andl %ebp,%edi
1856 xorl %eax,%ebp
1857 rorl $7,%edx
1858 movl %ecx,%esi
1859 xorl %ebp,%edi
1860 roll $5,%ecx
1861 addl %edi,%ebx
1862 xorl %edx,%esi
1863 xorl %ebp,%edx
1864 addl %ecx,%ebx
1865 pxor %xmm3,%xmm7
1866 addl 48(%rsp),%eax
1867 andl %edx,%esi
1868 xorl %ebp,%edx
1869 rorl $7,%ecx
1870 punpcklqdq %xmm6,%xmm10
1871 movl %ebx,%edi
1872 xorl %edx,%esi
1873 pxor %xmm0,%xmm7
1874 roll $5,%ebx
1875 addl %esi,%eax
1876 movdqa 32(%r14),%xmm9
1877 xorl %ecx,%edi
1878 paddd %xmm6,%xmm8
1879 xorl %edx,%ecx
1880 pxor %xmm10,%xmm7
1881 addl %ebx,%eax
1882 addl 52(%rsp),%ebp
1883 andl %ecx,%edi
1884 xorl %edx,%ecx
1885 rorl $7,%ebx
1886 movdqa %xmm7,%xmm10
1887 movl %eax,%esi
1888 xorl %ecx,%edi
1889 movdqa %xmm8,32(%rsp)
1890 roll $5,%eax
1891 addl %edi,%ebp
1892 xorl %ebx,%esi
1893 pslld $2,%xmm7
1894 xorl %ecx,%ebx
1895 addl %eax,%ebp
1896 psrld $30,%xmm10
1897 addl 56(%rsp),%edx
1898 andl %ebx,%esi
1899 xorl %ecx,%ebx
1900 por %xmm10,%xmm7
1901 rorl $7,%eax
1902 movl %ebp,%edi
1903 xorl %ebx,%esi
1904 roll $5,%ebp
1905 pshufd $238,%xmm6,%xmm8
1906 addl %esi,%edx
1907 xorl %eax,%edi
1908 xorl %ebx,%eax
1909 addl %ebp,%edx
1910 addl 60(%rsp),%ecx
1911 andl %eax,%edi
1912 xorl %ebx,%eax
1913 rorl $7,%ebp
1914 movl %edx,%esi
1915 xorl %eax,%edi
1916 roll $5,%edx
1917 addl %edi,%ecx
1918 xorl %ebp,%esi
1919 xorl %eax,%ebp
1920 addl %edx,%ecx
1921 pxor %xmm4,%xmm0
1922 addl 0(%rsp),%ebx
1923 andl %ebp,%esi
1924 xorl %eax,%ebp
1925 rorl $7,%edx
1926 punpcklqdq %xmm7,%xmm8
1927 movl %ecx,%edi
1928 xorl %ebp,%esi
1929 pxor %xmm1,%xmm0
1930 roll $5,%ecx
1931 addl %esi,%ebx
1932 movdqa %xmm9,%xmm10
1933 xorl %edx,%edi
1934 paddd %xmm7,%xmm9
1935 xorl %ebp,%edx
1936 pxor %xmm8,%xmm0
1937 addl %ecx,%ebx
1938 addl 4(%rsp),%eax
1939 andl %edx,%edi
1940 xorl %ebp,%edx
1941 rorl $7,%ecx
1942 movdqa %xmm0,%xmm8
1943 movl %ebx,%esi
1944 xorl %edx,%edi
1945 movdqa %xmm9,48(%rsp)
1946 roll $5,%ebx
1947 addl %edi,%eax
1948 xorl %ecx,%esi
1949 pslld $2,%xmm0
1950 xorl %edx,%ecx
1951 addl %ebx,%eax
1952 psrld $30,%xmm8
1953 addl 8(%rsp),%ebp
1954 andl %ecx,%esi
1955 xorl %edx,%ecx
1956 por %xmm8,%xmm0
1957 rorl $7,%ebx
1958 movl %eax,%edi
1959 xorl %ecx,%esi
1960 roll $5,%eax
1961 pshufd $238,%xmm7,%xmm9
1962 addl %esi,%ebp
1963 xorl %ebx,%edi
1964 xorl %ecx,%ebx
1965 addl %eax,%ebp
1966 addl 12(%rsp),%edx
1967 andl %ebx,%edi
1968 xorl %ecx,%ebx
1969 rorl $7,%eax
1970 movl %ebp,%esi
1971 xorl %ebx,%edi
1972 roll $5,%ebp
1973 addl %edi,%edx
1974 xorl %eax,%esi
1975 xorl %ebx,%eax
1976 addl %ebp,%edx
1977 pxor %xmm5,%xmm1
1978 addl 16(%rsp),%ecx
1979 andl %eax,%esi
1980 xorl %ebx,%eax
1981 rorl $7,%ebp
1982 punpcklqdq %xmm0,%xmm9
1983 movl %edx,%edi
1984 xorl %eax,%esi
1985 pxor %xmm2,%xmm1
1986 roll $5,%edx
1987 addl %esi,%ecx
1988 movdqa %xmm10,%xmm8
1989 xorl %ebp,%edi
1990 paddd %xmm0,%xmm10
1991 xorl %eax,%ebp
1992 pxor %xmm9,%xmm1
1993 addl %edx,%ecx
1994 addl 20(%rsp),%ebx
1995 andl %ebp,%edi
1996 xorl %eax,%ebp
1997 rorl $7,%edx
1998 movdqa %xmm1,%xmm9
1999 movl %ecx,%esi
2000 xorl %ebp,%edi
2001 movdqa %xmm10,0(%rsp)
2002 roll $5,%ecx
2003 addl %edi,%ebx
2004 xorl %edx,%esi
2005 pslld $2,%xmm1
2006 xorl %ebp,%edx
2007 addl %ecx,%ebx
2008 psrld $30,%xmm9
2009 addl 24(%rsp),%eax
2010 andl %edx,%esi
2011 xorl %ebp,%edx
2012 por %xmm9,%xmm1
2013 rorl $7,%ecx
2014 movl %ebx,%edi
2015 xorl %edx,%esi
2016 roll $5,%ebx
2017 pshufd $238,%xmm0,%xmm10
2018 addl %esi,%eax
2019 xorl %ecx,%edi
2020 xorl %edx,%ecx
2021 addl %ebx,%eax
2022 addl 28(%rsp),%ebp
2023 andl %ecx,%edi
2024 xorl %edx,%ecx
2025 rorl $7,%ebx
2026 movl %eax,%esi
2027 xorl %ecx,%edi
2028 roll $5,%eax
2029 addl %edi,%ebp
2030 xorl %ebx,%esi
2031 xorl %ecx,%ebx
2032 addl %eax,%ebp
2033 pxor %xmm6,%xmm2
2034 addl 32(%rsp),%edx
2035 andl %ebx,%esi
2036 xorl %ecx,%ebx
2037 rorl $7,%eax
2038 punpcklqdq %xmm1,%xmm10
2039 movl %ebp,%edi
2040 xorl %ebx,%esi
2041 pxor %xmm3,%xmm2
2042 roll $5,%ebp
2043 addl %esi,%edx
2044 movdqa %xmm8,%xmm9
2045 xorl %eax,%edi
2046 paddd %xmm1,%xmm8
2047 xorl %ebx,%eax
2048 pxor %xmm10,%xmm2
2049 addl %ebp,%edx
2050 addl 36(%rsp),%ecx
2051 andl %eax,%edi
2052 xorl %ebx,%eax
2053 rorl $7,%ebp
2054 movdqa %xmm2,%xmm10
2055 movl %edx,%esi
2056 xorl %eax,%edi
2057 movdqa %xmm8,16(%rsp)
2058 roll $5,%edx
2059 addl %edi,%ecx
2060 xorl %ebp,%esi
2061 pslld $2,%xmm2
2062 xorl %eax,%ebp
2063 addl %edx,%ecx
2064 psrld $30,%xmm10
2065 addl 40(%rsp),%ebx
2066 andl %ebp,%esi
2067 xorl %eax,%ebp
2068 por %xmm10,%xmm2
2069 rorl $7,%edx
2070 movl %ecx,%edi
2071 xorl %ebp,%esi
2072 roll $5,%ecx
2073 pshufd $238,%xmm1,%xmm8
2074 addl %esi,%ebx
2075 xorl %edx,%edi
2076 xorl %ebp,%edx
2077 addl %ecx,%ebx
2078 addl 44(%rsp),%eax
2079 andl %edx,%edi
2080 xorl %ebp,%edx
2081 rorl $7,%ecx
2082 movl %ebx,%esi
2083 xorl %edx,%edi
2084 roll $5,%ebx
2085 addl %edi,%eax
2086 xorl %edx,%esi
2087 addl %ebx,%eax
2088 pxor %xmm7,%xmm3
2089 addl 48(%rsp),%ebp
2090 xorl %ecx,%esi
2091 punpcklqdq %xmm2,%xmm8
2092 movl %eax,%edi
2093 roll $5,%eax
2094 pxor %xmm4,%xmm3
2095 addl %esi,%ebp
2096 xorl %ecx,%edi
2097 movdqa %xmm9,%xmm10
2098 rorl $7,%ebx
2099 paddd %xmm2,%xmm9
2100 addl %eax,%ebp
2101 pxor %xmm8,%xmm3
2102 addl 52(%rsp),%edx
2103 xorl %ebx,%edi
2104 movl %ebp,%esi
2105 roll $5,%ebp
2106 movdqa %xmm3,%xmm8
2107 addl %edi,%edx
2108 xorl %ebx,%esi
2109 movdqa %xmm9,32(%rsp)
2110 rorl $7,%eax
2111 addl %ebp,%edx
2112 addl 56(%rsp),%ecx
2113 pslld $2,%xmm3
2114 xorl %eax,%esi
2115 movl %edx,%edi
2116 psrld $30,%xmm8
2117 roll $5,%edx
2118 addl %esi,%ecx
2119 xorl %eax,%edi
2120 rorl $7,%ebp
2121 por %xmm8,%xmm3
2122 addl %edx,%ecx
2123 addl 60(%rsp),%ebx
2124 xorl %ebp,%edi
2125 movl %ecx,%esi
2126 roll $5,%ecx
2127 addl %edi,%ebx
2128 xorl %ebp,%esi
2129 rorl $7,%edx
2130 addl %ecx,%ebx
2131 addl 0(%rsp),%eax
2132 xorl %edx,%esi
2133 movl %ebx,%edi
2134 roll $5,%ebx
2135 paddd %xmm3,%xmm10
2136 addl %esi,%eax
2137 xorl %edx,%edi
2138 movdqa %xmm10,48(%rsp)
2139 rorl $7,%ecx
2140 addl %ebx,%eax
2141 addl 4(%rsp),%ebp
2142 xorl %ecx,%edi
2143 movl %eax,%esi
2144 roll $5,%eax
2145 addl %edi,%ebp
2146 xorl %ecx,%esi
2147 rorl $7,%ebx
2148 addl %eax,%ebp
2149 addl 8(%rsp),%edx
2150 xorl %ebx,%esi
2151 movl %ebp,%edi
2152 roll $5,%ebp
2153 addl %esi,%edx
2154 xorl %ebx,%edi
2155 rorl $7,%eax
2156 addl %ebp,%edx
2157 addl 12(%rsp),%ecx
2158 xorl %eax,%edi
2159 movl %edx,%esi
2160 roll $5,%edx
2161 addl %edi,%ecx
2162 xorl %eax,%esi
2163 rorl $7,%ebp
2164 addl %edx,%ecx
2165 cmpq %r10,%r9
2166 je .Ldone_ssse3
2167 movdqa 64(%r14),%xmm6
2168 movdqa -64(%r14),%xmm9
2169 movdqu 0(%r9),%xmm0
2170 movdqu 16(%r9),%xmm1
2171 movdqu 32(%r9),%xmm2
2172 movdqu 48(%r9),%xmm3
2173 .byte 102,15,56,0,198
2174 addq $64,%r9
2175 addl 16(%rsp),%ebx
2176 xorl %ebp,%esi
2177 movl %ecx,%edi
2178 .byte 102,15,56,0,206
2179 roll $5,%ecx
2180 addl %esi,%ebx
2181 xorl %ebp,%edi
2182 rorl $7,%edx
2183 paddd %xmm9,%xmm0
2184 addl %ecx,%ebx
2185 addl 20(%rsp),%eax
2186 xorl %edx,%edi
2187 movl %ebx,%esi
2188 movdqa %xmm0,0(%rsp)
2189 roll $5,%ebx
2190 addl %edi,%eax
2191 xorl %edx,%esi
2192 rorl $7,%ecx
2193 psubd %xmm9,%xmm0
2194 addl %ebx,%eax
2195 addl 24(%rsp),%ebp
2196 xorl %ecx,%esi
2197 movl %eax,%edi
2198 roll $5,%eax
2199 addl %esi,%ebp
2200 xorl %ecx,%edi
2201 rorl $7,%ebx
2202 addl %eax,%ebp
2203 addl 28(%rsp),%edx
2204 xorl %ebx,%edi
2205 movl %ebp,%esi
2206 roll $5,%ebp
2207 addl %edi,%edx
2208 xorl %ebx,%esi
2209 rorl $7,%eax
2210 addl %ebp,%edx
2211 addl 32(%rsp),%ecx
2212 xorl %eax,%esi
2213 movl %edx,%edi
2214 .byte 102,15,56,0,214
2215 roll $5,%edx
2216 addl %esi,%ecx
2217 xorl %eax,%edi
2218 rorl $7,%ebp
2219 paddd %xmm9,%xmm1
2220 addl %edx,%ecx
2221 addl 36(%rsp),%ebx
2222 xorl %ebp,%edi
2223 movl %ecx,%esi
2224 movdqa %xmm1,16(%rsp)
2225 roll $5,%ecx
2226 addl %edi,%ebx
2227 xorl %ebp,%esi
2228 rorl $7,%edx
2229 psubd %xmm9,%xmm1
2230 addl %ecx,%ebx
2231 addl 40(%rsp),%eax
2232 xorl %edx,%esi
2233 movl %ebx,%edi
2234 roll $5,%ebx
2235 addl %esi,%eax
2236 xorl %edx,%edi
2237 rorl $7,%ecx
2238 addl %ebx,%eax
2239 addl 44(%rsp),%ebp
2240 xorl %ecx,%edi
2241 movl %eax,%esi
2242 roll $5,%eax
2243 addl %edi,%ebp
2244 xorl %ecx,%esi
2245 rorl $7,%ebx
2246 addl %eax,%ebp
2247 addl 48(%rsp),%edx
2248 xorl %ebx,%esi
2249 movl %ebp,%edi
2250 .byte 102,15,56,0,222
2251 roll $5,%ebp
2252 addl %esi,%edx
2253 xorl %ebx,%edi
2254 rorl $7,%eax
2255 paddd %xmm9,%xmm2
2256 addl %ebp,%edx
2257 addl 52(%rsp),%ecx
2258 xorl %eax,%edi
2259 movl %edx,%esi
2260 movdqa %xmm2,32(%rsp)
2261 roll $5,%edx
2262 addl %edi,%ecx
2263 xorl %eax,%esi
2264 rorl $7,%ebp
2265 psubd %xmm9,%xmm2
2266 addl %edx,%ecx
2267 addl 56(%rsp),%ebx
2268 xorl %ebp,%esi
2269 movl %ecx,%edi
2270 roll $5,%ecx
2271 addl %esi,%ebx
2272 xorl %ebp,%edi
2273 rorl $7,%edx
2274 addl %ecx,%ebx
2275 addl 60(%rsp),%eax
2276 xorl %edx,%edi
2277 movl %ebx,%esi
2278 roll $5,%ebx
2279 addl %edi,%eax
2280 rorl $7,%ecx
2281 addl %ebx,%eax
2282 addl 0(%r8),%eax
2283 addl 4(%r8),%esi
2284 addl 8(%r8),%ecx
2285 addl 12(%r8),%edx
2286 movl %eax,0(%r8)
2287 addl 16(%r8),%ebp
2288 movl %esi,4(%r8)
2289 movl %esi,%ebx
2290 movl %ecx,8(%r8)
2291 movl %ecx,%edi
2292 movl %edx,12(%r8)
2293 xorl %edx,%edi
2294 movl %ebp,16(%r8)
2295 andl %edi,%esi
2296 jmp .Loop_ssse3
2297
2298 .align 16
2299 .Ldone_ssse3:
2300 addl 16(%rsp),%ebx
2301 xorl %ebp,%esi
2302 movl %ecx,%edi
2303 roll $5,%ecx
2304 addl %esi,%ebx
2305 xorl %ebp,%edi
2306 rorl $7,%edx
2307 addl %ecx,%ebx
2308 addl 20(%rsp),%eax
2309 xorl %edx,%edi
2310 movl %ebx,%esi
2311 roll $5,%ebx
2312 addl %edi,%eax
2313 xorl %edx,%esi
2314 rorl $7,%ecx
2315 addl %ebx,%eax
2316 addl 24(%rsp),%ebp
2317 xorl %ecx,%esi
2318 movl %eax,%edi
2319 roll $5,%eax
2320 addl %esi,%ebp
2321 xorl %ecx,%edi
2322 rorl $7,%ebx
2323 addl %eax,%ebp
2324 addl 28(%rsp),%edx
2325 xorl %ebx,%edi
2326 movl %ebp,%esi
2327 roll $5,%ebp
2328 addl %edi,%edx
2329 xorl %ebx,%esi
2330 rorl $7,%eax
2331 addl %ebp,%edx
2332 addl 32(%rsp),%ecx
2333 xorl %eax,%esi
2334 movl %edx,%edi
2335 roll $5,%edx
2336 addl %esi,%ecx
2337 xorl %eax,%edi
2338 rorl $7,%ebp
2339 addl %edx,%ecx
2340 addl 36(%rsp),%ebx
2341 xorl %ebp,%edi
2342 movl %ecx,%esi
2343 roll $5,%ecx
2344 addl %edi,%ebx
2345 xorl %ebp,%esi
2346 rorl $7,%edx
2347 addl %ecx,%ebx
2348 addl 40(%rsp),%eax
2349 xorl %edx,%esi
2350 movl %ebx,%edi
2351 roll $5,%ebx
2352 addl %esi,%eax
2353 xorl %edx,%edi
2354 rorl $7,%ecx
2355 addl %ebx,%eax
2356 addl 44(%rsp),%ebp
2357 xorl %ecx,%edi
2358 movl %eax,%esi
2359 roll $5,%eax
2360 addl %edi,%ebp
2361 xorl %ecx,%esi
2362 rorl $7,%ebx
2363 addl %eax,%ebp
2364 addl 48(%rsp),%edx
2365 xorl %ebx,%esi
2366 movl %ebp,%edi
2367 roll $5,%ebp
2368 addl %esi,%edx
2369 xorl %ebx,%edi
2370 rorl $7,%eax
2371 addl %ebp,%edx
2372 addl 52(%rsp),%ecx
2373 xorl %eax,%edi
2374 movl %edx,%esi
2375 roll $5,%edx
2376 addl %edi,%ecx
2377 xorl %eax,%esi
2378 rorl $7,%ebp
2379 addl %edx,%ecx
2380 addl 56(%rsp),%ebx
2381 xorl %ebp,%esi
2382 movl %ecx,%edi
2383 roll $5,%ecx
2384 addl %esi,%ebx
2385 xorl %ebp,%edi
2386 rorl $7,%edx
2387 addl %ecx,%ebx
2388 addl 60(%rsp),%eax
2389 xorl %edx,%edi
2390 movl %ebx,%esi
2391 roll $5,%ebx
2392 addl %edi,%eax
2393 rorl $7,%ecx
2394 addl %ebx,%eax
2395 addl 0(%r8),%eax
2396 addl 4(%r8),%esi
2397 addl 8(%r8),%ecx
2398 movl %eax,0(%r8)
2399 addl 12(%r8),%edx
2400 movl %esi,4(%r8)
2401 addl 16(%r8),%ebp
2402 movl %ecx,8(%r8)
2403 movl %edx,12(%r8)
2404 movl %ebp,16(%r8)
2405 movq -40(%r11),%r14
2406 movq -32(%r11),%r13
2407 movq -24(%r11),%r12
2408 movq -16(%r11),%rbp
2409 movq -8(%r11),%rbx
2410 leaq (%r11),%rsp
2411 .Lepilogue_ssse3:
2412 .byte 0xf3,0xc3
2413 .size sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3
2414 .type sha1_block_data_order_avx,@function
2415 .align 16
2416 sha1_block_data_order_avx:
2417 _avx_shortcut:
2418 movq %rsp,%r11
2419 pushq %rbx
2420 pushq %rbp
2421 pushq %r12
2422 pushq %r13
2423 pushq %r14
2424 leaq -64(%rsp),%rsp
2425 vzeroupper
2426 andq $-64,%rsp
2427 movq %rdi,%r8
2428 movq %rsi,%r9
2429 movq %rdx,%r10
2430
2431 shlq $6,%r10
2432 addq %r9,%r10
2433 leaq K_XX_XX+64(%rip),%r14
2434
2435 movl 0(%r8),%eax
2436 movl 4(%r8),%ebx
2437 movl 8(%r8),%ecx
2438 movl 12(%r8),%edx
2439 movl %ebx,%esi
2440 movl 16(%r8),%ebp
2441 movl %ecx,%edi
2442 xorl %edx,%edi
2443 andl %edi,%esi
2444
2445 vmovdqa 64(%r14),%xmm6
2446 vmovdqa -64(%r14),%xmm11
2447 vmovdqu 0(%r9),%xmm0
2448 vmovdqu 16(%r9),%xmm1
2449 vmovdqu 32(%r9),%xmm2
2450 vmovdqu 48(%r9),%xmm3
2451 vpshufb %xmm6,%xmm0,%xmm0
2452 addq $64,%r9
2453 vpshufb %xmm6,%xmm1,%xmm1
2454 vpshufb %xmm6,%xmm2,%xmm2
2455 vpshufb %xmm6,%xmm3,%xmm3
2456 vpaddd %xmm11,%xmm0,%xmm4
2457 vpaddd %xmm11,%xmm1,%xmm5
2458 vpaddd %xmm11,%xmm2,%xmm6
2459 vmovdqa %xmm4,0(%rsp)
2460 vmovdqa %xmm5,16(%rsp)
2461 vmovdqa %xmm6,32(%rsp)
2462 jmp .Loop_avx
2463 .align 16
2464 .Loop_avx:
2465 shrdl $2,%ebx,%ebx
2466 xorl %edx,%esi
2467 vpalignr $8,%xmm0,%xmm1,%xmm4
2468 movl %eax,%edi
2469 addl 0(%rsp),%ebp
2470 vpaddd %xmm3,%xmm11,%xmm9
2471 xorl %ecx,%ebx
2472 shldl $5,%eax,%eax
2473 vpsrldq $4,%xmm3,%xmm8
2474 addl %esi,%ebp
2475 andl %ebx,%edi
2476 vpxor %xmm0,%xmm4,%xmm4
2477 xorl %ecx,%ebx
2478 addl %eax,%ebp
2479 vpxor %xmm2,%xmm8,%xmm8
2480 shrdl $7,%eax,%eax
2481 xorl %ecx,%edi
2482 movl %ebp,%esi
2483 addl 4(%rsp),%edx
2484 vpxor %xmm8,%xmm4,%xmm4
2485 xorl %ebx,%eax
2486 shldl $5,%ebp,%ebp
2487 vmovdqa %xmm9,48(%rsp)
2488 addl %edi,%edx
2489 andl %eax,%esi
2490 vpsrld $31,%xmm4,%xmm8
2491 xorl %ebx,%eax
2492 addl %ebp,%edx
2493 shrdl $7,%ebp,%ebp
2494 xorl %ebx,%esi
2495 vpslldq $12,%xmm4,%xmm10
2496 vpaddd %xmm4,%xmm4,%xmm4
2497 movl %edx,%edi
2498 addl 8(%rsp),%ecx
2499 xorl %eax,%ebp
2500 shldl $5,%edx,%edx
2501 vpsrld $30,%xmm10,%xmm9
2502 vpor %xmm8,%xmm4,%xmm4
2503 addl %esi,%ecx
2504 andl %ebp,%edi
2505 xorl %eax,%ebp
2506 addl %edx,%ecx
2507 vpslld $2,%xmm10,%xmm10
2508 vpxor %xmm9,%xmm4,%xmm4
2509 shrdl $7,%edx,%edx
2510 xorl %eax,%edi
2511 movl %ecx,%esi
2512 addl 12(%rsp),%ebx
2513 vpxor %xmm10,%xmm4,%xmm4
2514 xorl %ebp,%edx
2515 shldl $5,%ecx,%ecx
2516 addl %edi,%ebx
2517 andl %edx,%esi
2518 xorl %ebp,%edx
2519 addl %ecx,%ebx
2520 shrdl $7,%ecx,%ecx
2521 xorl %ebp,%esi
2522 vpalignr $8,%xmm1,%xmm2,%xmm5
2523 movl %ebx,%edi
2524 addl 16(%rsp),%eax
2525 vpaddd %xmm4,%xmm11,%xmm9
2526 xorl %edx,%ecx
2527 shldl $5,%ebx,%ebx
2528 vpsrldq $4,%xmm4,%xmm8
2529 addl %esi,%eax
2530 andl %ecx,%edi
2531 vpxor %xmm1,%xmm5,%xmm5
2532 xorl %edx,%ecx
2533 addl %ebx,%eax
2534 vpxor %xmm3,%xmm8,%xmm8
2535 shrdl $7,%ebx,%ebx
2536 xorl %edx,%edi
2537 movl %eax,%esi
2538 addl 20(%rsp),%ebp
2539 vpxor %xmm8,%xmm5,%xmm5
2540 xorl %ecx,%ebx
2541 shldl $5,%eax,%eax
2542 vmovdqa %xmm9,0(%rsp)
2543 addl %edi,%ebp
2544 andl %ebx,%esi
2545 vpsrld $31,%xmm5,%xmm8
2546 xorl %ecx,%ebx
2547 addl %eax,%ebp
2548 shrdl $7,%eax,%eax
2549 xorl %ecx,%esi
2550 vpslldq $12,%xmm5,%xmm10
2551 vpaddd %xmm5,%xmm5,%xmm5
2552 movl %ebp,%edi
2553 addl 24(%rsp),%edx
2554 xorl %ebx,%eax
2555 shldl $5,%ebp,%ebp
2556 vpsrld $30,%xmm10,%xmm9
2557 vpor %xmm8,%xmm5,%xmm5
2558 addl %esi,%edx
2559 andl %eax,%edi
2560 xorl %ebx,%eax
2561 addl %ebp,%edx
2562 vpslld $2,%xmm10,%xmm10
2563 vpxor %xmm9,%xmm5,%xmm5
2564 shrdl $7,%ebp,%ebp
2565 xorl %ebx,%edi
2566 movl %edx,%esi
2567 addl 28(%rsp),%ecx
2568 vpxor %xmm10,%xmm5,%xmm5
2569 xorl %eax,%ebp
2570 shldl $5,%edx,%edx
2571 vmovdqa -32(%r14),%xmm11
2572 addl %edi,%ecx
2573 andl %ebp,%esi
2574 xorl %eax,%ebp
2575 addl %edx,%ecx
2576 shrdl $7,%edx,%edx
2577 xorl %eax,%esi
2578 vpalignr $8,%xmm2,%xmm3,%xmm6
2579 movl %ecx,%edi
2580 addl 32(%rsp),%ebx
2581 vpaddd %xmm5,%xmm11,%xmm9
2582 xorl %ebp,%edx
2583 shldl $5,%ecx,%ecx
2584 vpsrldq $4,%xmm5,%xmm8
2585 addl %esi,%ebx
2586 andl %edx,%edi
2587 vpxor %xmm2,%xmm6,%xmm6
2588 xorl %ebp,%edx
2589 addl %ecx,%ebx
2590 vpxor %xmm4,%xmm8,%xmm8
2591 shrdl $7,%ecx,%ecx
2592 xorl %ebp,%edi
2593 movl %ebx,%esi
2594 addl 36(%rsp),%eax
2595 vpxor %xmm8,%xmm6,%xmm6
2596 xorl %edx,%ecx
2597 shldl $5,%ebx,%ebx
2598 vmovdqa %xmm9,16(%rsp)
2599 addl %edi,%eax
2600 andl %ecx,%esi
2601 vpsrld $31,%xmm6,%xmm8
2602 xorl %edx,%ecx
2603 addl %ebx,%eax
2604 shrdl $7,%ebx,%ebx
2605 xorl %edx,%esi
2606 vpslldq $12,%xmm6,%xmm10
2607 vpaddd %xmm6,%xmm6,%xmm6
2608 movl %eax,%edi
2609 addl 40(%rsp),%ebp
2610 xorl %ecx,%ebx
2611 shldl $5,%eax,%eax
2612 vpsrld $30,%xmm10,%xmm9
2613 vpor %xmm8,%xmm6,%xmm6
2614 addl %esi,%ebp
2615 andl %ebx,%edi
2616 xorl %ecx,%ebx
2617 addl %eax,%ebp
2618 vpslld $2,%xmm10,%xmm10
2619 vpxor %xmm9,%xmm6,%xmm6
2620 shrdl $7,%eax,%eax
2621 xorl %ecx,%edi
2622 movl %ebp,%esi
2623 addl 44(%rsp),%edx
2624 vpxor %xmm10,%xmm6,%xmm6
2625 xorl %ebx,%eax
2626 shldl $5,%ebp,%ebp
2627 addl %edi,%edx
2628 andl %eax,%esi
2629 xorl %ebx,%eax
2630 addl %ebp,%edx
2631 shrdl $7,%ebp,%ebp
2632 xorl %ebx,%esi
2633 vpalignr $8,%xmm3,%xmm4,%xmm7
2634 movl %edx,%edi
2635 addl 48(%rsp),%ecx
2636 vpaddd %xmm6,%xmm11,%xmm9
2637 xorl %eax,%ebp
2638 shldl $5,%edx,%edx
2639 vpsrldq $4,%xmm6,%xmm8
2640 addl %esi,%ecx
2641 andl %ebp,%edi
2642 vpxor %xmm3,%xmm7,%xmm7
2643 xorl %eax,%ebp
2644 addl %edx,%ecx
2645 vpxor %xmm5,%xmm8,%xmm8
2646 shrdl $7,%edx,%edx
2647 xorl %eax,%edi
2648 movl %ecx,%esi
2649 addl 52(%rsp),%ebx
2650 vpxor %xmm8,%xmm7,%xmm7
2651 xorl %ebp,%edx
2652 shldl $5,%ecx,%ecx
2653 vmovdqa %xmm9,32(%rsp)
2654 addl %edi,%ebx
2655 andl %edx,%esi
2656 vpsrld $31,%xmm7,%xmm8
2657 xorl %ebp,%edx
2658 addl %ecx,%ebx
2659 shrdl $7,%ecx,%ecx
2660 xorl %ebp,%esi
2661 vpslldq $12,%xmm7,%xmm10
2662 vpaddd %xmm7,%xmm7,%xmm7
2663 movl %ebx,%edi
2664 addl 56(%rsp),%eax
2665 xorl %edx,%ecx
2666 shldl $5,%ebx,%ebx
2667 vpsrld $30,%xmm10,%xmm9
2668 vpor %xmm8,%xmm7,%xmm7
2669 addl %esi,%eax
2670 andl %ecx,%edi
2671 xorl %edx,%ecx
2672 addl %ebx,%eax
2673 vpslld $2,%xmm10,%xmm10
2674 vpxor %xmm9,%xmm7,%xmm7
2675 shrdl $7,%ebx,%ebx
2676 xorl %edx,%edi
2677 movl %eax,%esi
2678 addl 60(%rsp),%ebp
2679 vpxor %xmm10,%xmm7,%xmm7
2680 xorl %ecx,%ebx
2681 shldl $5,%eax,%eax
2682 addl %edi,%ebp
2683 andl %ebx,%esi
2684 xorl %ecx,%ebx
2685 addl %eax,%ebp
2686 vpalignr $8,%xmm6,%xmm7,%xmm8
2687 vpxor %xmm4,%xmm0,%xmm0
2688 shrdl $7,%eax,%eax
2689 xorl %ecx,%esi
2690 movl %ebp,%edi
2691 addl 0(%rsp),%edx
2692 vpxor %xmm1,%xmm0,%xmm0
2693 xorl %ebx,%eax
2694 shldl $5,%ebp,%ebp
2695 vpaddd %xmm7,%xmm11,%xmm9
2696 addl %esi,%edx
2697 andl %eax,%edi
2698 vpxor %xmm8,%xmm0,%xmm0
2699 xorl %ebx,%eax
2700 addl %ebp,%edx
2701 shrdl $7,%ebp,%ebp
2702 xorl %ebx,%edi
2703 vpsrld $30,%xmm0,%xmm8
2704 vmovdqa %xmm9,48(%rsp)
2705 movl %edx,%esi
2706 addl 4(%rsp),%ecx
2707 xorl %eax,%ebp
2708 shldl $5,%edx,%edx
2709 vpslld $2,%xmm0,%xmm0
2710 addl %edi,%ecx
2711 andl %ebp,%esi
2712 xorl %eax,%ebp
2713 addl %edx,%ecx
2714 shrdl $7,%edx,%edx
2715 xorl %eax,%esi
2716 movl %ecx,%edi
2717 addl 8(%rsp),%ebx
2718 vpor %xmm8,%xmm0,%xmm0
2719 xorl %ebp,%edx
2720 shldl $5,%ecx,%ecx
2721 addl %esi,%ebx
2722 andl %edx,%edi
2723 xorl %ebp,%edx
2724 addl %ecx,%ebx
2725 addl 12(%rsp),%eax
2726 xorl %ebp,%edi
2727 movl %ebx,%esi
2728 shldl $5,%ebx,%ebx
2729 addl %edi,%eax
2730 xorl %edx,%esi
2731 shrdl $7,%ecx,%ecx
2732 addl %ebx,%eax
2733 vpalignr $8,%xmm7,%xmm0,%xmm8
2734 vpxor %xmm5,%xmm1,%xmm1
2735 addl 16(%rsp),%ebp
2736 xorl %ecx,%esi
2737 movl %eax,%edi
2738 shldl $5,%eax,%eax
2739 vpxor %xmm2,%xmm1,%xmm1
2740 addl %esi,%ebp
2741 xorl %ecx,%edi
2742 vpaddd %xmm0,%xmm11,%xmm9
2743 shrdl $7,%ebx,%ebx
2744 addl %eax,%ebp
2745 vpxor %xmm8,%xmm1,%xmm1
2746 addl 20(%rsp),%edx
2747 xorl %ebx,%edi
2748 movl %ebp,%esi
2749 shldl $5,%ebp,%ebp
2750 vpsrld $30,%xmm1,%xmm8
2751 vmovdqa %xmm9,0(%rsp)
2752 addl %edi,%edx
2753 xorl %ebx,%esi
2754 shrdl $7,%eax,%eax
2755 addl %ebp,%edx
2756 vpslld $2,%xmm1,%xmm1
2757 addl 24(%rsp),%ecx
2758 xorl %eax,%esi
2759 movl %edx,%edi
2760 shldl $5,%edx,%edx
2761 addl %esi,%ecx
2762 xorl %eax,%edi
2763 shrdl $7,%ebp,%ebp
2764 addl %edx,%ecx
2765 vpor %xmm8,%xmm1,%xmm1
2766 addl 28(%rsp),%ebx
2767 xorl %ebp,%edi
2768 movl %ecx,%esi
2769 shldl $5,%ecx,%ecx
2770 addl %edi,%ebx
2771 xorl %ebp,%esi
2772 shrdl $7,%edx,%edx
2773 addl %ecx,%ebx
2774 vpalignr $8,%xmm0,%xmm1,%xmm8
2775 vpxor %xmm6,%xmm2,%xmm2
2776 addl 32(%rsp),%eax
2777 xorl %edx,%esi
2778 movl %ebx,%edi
2779 shldl $5,%ebx,%ebx
2780 vpxor %xmm3,%xmm2,%xmm2
2781 addl %esi,%eax
2782 xorl %edx,%edi
2783 vpaddd %xmm1,%xmm11,%xmm9
2784 vmovdqa 0(%r14),%xmm11
2785 shrdl $7,%ecx,%ecx
2786 addl %ebx,%eax
2787 vpxor %xmm8,%xmm2,%xmm2
2788 addl 36(%rsp),%ebp
2789 xorl %ecx,%edi
2790 movl %eax,%esi
2791 shldl $5,%eax,%eax
2792 vpsrld $30,%xmm2,%xmm8
2793 vmovdqa %xmm9,16(%rsp)
2794 addl %edi,%ebp
2795 xorl %ecx,%esi
2796 shrdl $7,%ebx,%ebx
2797 addl %eax,%ebp
2798 vpslld $2,%xmm2,%xmm2
2799 addl 40(%rsp),%edx
2800 xorl %ebx,%esi
2801 movl %ebp,%edi
2802 shldl $5,%ebp,%ebp
2803 addl %esi,%edx
2804 xorl %ebx,%edi
2805 shrdl $7,%eax,%eax
2806 addl %ebp,%edx
2807 vpor %xmm8,%xmm2,%xmm2
2808 addl 44(%rsp),%ecx
2809 xorl %eax,%edi
2810 movl %edx,%esi
2811 shldl $5,%edx,%edx
2812 addl %edi,%ecx
2813 xorl %eax,%esi
2814 shrdl $7,%ebp,%ebp
2815 addl %edx,%ecx
2816 vpalignr $8,%xmm1,%xmm2,%xmm8
2817 vpxor %xmm7,%xmm3,%xmm3
2818 addl 48(%rsp),%ebx
2819 xorl %ebp,%esi
2820 movl %ecx,%edi
2821 shldl $5,%ecx,%ecx
2822 vpxor %xmm4,%xmm3,%xmm3
2823 addl %esi,%ebx
2824 xorl %ebp,%edi
2825 vpaddd %xmm2,%xmm11,%xmm9
2826 shrdl $7,%edx,%edx
2827 addl %ecx,%ebx
2828 vpxor %xmm8,%xmm3,%xmm3
2829 addl 52(%rsp),%eax
2830 xorl %edx,%edi
2831 movl %ebx,%esi
2832 shldl $5,%ebx,%ebx
2833 vpsrld $30,%xmm3,%xmm8
2834 vmovdqa %xmm9,32(%rsp)
2835 addl %edi,%eax
2836 xorl %edx,%esi
2837 shrdl $7,%ecx,%ecx
2838 addl %ebx,%eax
2839 vpslld $2,%xmm3,%xmm3
2840 addl 56(%rsp),%ebp
2841 xorl %ecx,%esi
2842 movl %eax,%edi
2843 shldl $5,%eax,%eax
2844 addl %esi,%ebp
2845 xorl %ecx,%edi
2846 shrdl $7,%ebx,%ebx
2847 addl %eax,%ebp
2848 vpor %xmm8,%xmm3,%xmm3
2849 addl 60(%rsp),%edx
2850 xorl %ebx,%edi
2851 movl %ebp,%esi
2852 shldl $5,%ebp,%ebp
2853 addl %edi,%edx
2854 xorl %ebx,%esi
2855 shrdl $7,%eax,%eax
2856 addl %ebp,%edx
2857 vpalignr $8,%xmm2,%xmm3,%xmm8
2858 vpxor %xmm0,%xmm4,%xmm4
2859 addl 0(%rsp),%ecx
2860 xorl %eax,%esi
2861 movl %edx,%edi
2862 shldl $5,%edx,%edx
2863 vpxor %xmm5,%xmm4,%xmm4
2864 addl %esi,%ecx
2865 xorl %eax,%edi
2866 vpaddd %xmm3,%xmm11,%xmm9
2867 shrdl $7,%ebp,%ebp
2868 addl %edx,%ecx
2869 vpxor %xmm8,%xmm4,%xmm4
2870 addl 4(%rsp),%ebx
2871 xorl %ebp,%edi
2872 movl %ecx,%esi
2873 shldl $5,%ecx,%ecx
2874 vpsrld $30,%xmm4,%xmm8
2875 vmovdqa %xmm9,48(%rsp)
2876 addl %edi,%ebx
2877 xorl %ebp,%esi
2878 shrdl $7,%edx,%edx
2879 addl %ecx,%ebx
2880 vpslld $2,%xmm4,%xmm4
2881 addl 8(%rsp),%eax
2882 xorl %edx,%esi
2883 movl %ebx,%edi
2884 shldl $5,%ebx,%ebx
2885 addl %esi,%eax
2886 xorl %edx,%edi
2887 shrdl $7,%ecx,%ecx
2888 addl %ebx,%eax
2889 vpor %xmm8,%xmm4,%xmm4
2890 addl 12(%rsp),%ebp
2891 xorl %ecx,%edi
2892 movl %eax,%esi
2893 shldl $5,%eax,%eax
2894 addl %edi,%ebp
2895 xorl %ecx,%esi
2896 shrdl $7,%ebx,%ebx
2897 addl %eax,%ebp
2898 vpalignr $8,%xmm3,%xmm4,%xmm8
2899 vpxor %xmm1,%xmm5,%xmm5
2900 addl 16(%rsp),%edx
2901 xorl %ebx,%esi
2902 movl %ebp,%edi
2903 shldl $5,%ebp,%ebp
2904 vpxor %xmm6,%xmm5,%xmm5
2905 addl %esi,%edx
2906 xorl %ebx,%edi
2907 vpaddd %xmm4,%xmm11,%xmm9
2908 shrdl $7,%eax,%eax
2909 addl %ebp,%edx
2910 vpxor %xmm8,%xmm5,%xmm5
2911 addl 20(%rsp),%ecx
2912 xorl %eax,%edi
2913 movl %edx,%esi
2914 shldl $5,%edx,%edx
2915 vpsrld $30,%xmm5,%xmm8
2916 vmovdqa %xmm9,0(%rsp)
2917 addl %edi,%ecx
2918 xorl %eax,%esi
2919 shrdl $7,%ebp,%ebp
2920 addl %edx,%ecx
2921 vpslld $2,%xmm5,%xmm5
2922 addl 24(%rsp),%ebx
2923 xorl %ebp,%esi
2924 movl %ecx,%edi
2925 shldl $5,%ecx,%ecx
2926 addl %esi,%ebx
2927 xorl %ebp,%edi
2928 shrdl $7,%edx,%edx
2929 addl %ecx,%ebx
2930 vpor %xmm8,%xmm5,%xmm5
2931 addl 28(%rsp),%eax
2932 shrdl $7,%ecx,%ecx
2933 movl %ebx,%esi
2934 xorl %edx,%edi
2935 shldl $5,%ebx,%ebx
2936 addl %edi,%eax
2937 xorl %ecx,%esi
2938 xorl %edx,%ecx
2939 addl %ebx,%eax
2940 vpalignr $8,%xmm4,%xmm5,%xmm8
2941 vpxor %xmm2,%xmm6,%xmm6
2942 addl 32(%rsp),%ebp
2943 andl %ecx,%esi
2944 xorl %edx,%ecx
2945 shrdl $7,%ebx,%ebx
2946 vpxor %xmm7,%xmm6,%xmm6
2947 movl %eax,%edi
2948 xorl %ecx,%esi
2949 vpaddd %xmm5,%xmm11,%xmm9
2950 shldl $5,%eax,%eax
2951 addl %esi,%ebp
2952 vpxor %xmm8,%xmm6,%xmm6
2953 xorl %ebx,%edi
2954 xorl %ecx,%ebx
2955 addl %eax,%ebp
2956 addl 36(%rsp),%edx
2957 vpsrld $30,%xmm6,%xmm8
2958 vmovdqa %xmm9,16(%rsp)
2959 andl %ebx,%edi
2960 xorl %ecx,%ebx
2961 shrdl $7,%eax,%eax
2962 movl %ebp,%esi
2963 vpslld $2,%xmm6,%xmm6
2964 xorl %ebx,%edi
2965 shldl $5,%ebp,%ebp
2966 addl %edi,%edx
2967 xorl %eax,%esi
2968 xorl %ebx,%eax
2969 addl %ebp,%edx
2970 addl 40(%rsp),%ecx
2971 andl %eax,%esi
2972 vpor %xmm8,%xmm6,%xmm6
2973 xorl %ebx,%eax
2974 shrdl $7,%ebp,%ebp
2975 movl %edx,%edi
2976 xorl %eax,%esi
2977 shldl $5,%edx,%edx
2978 addl %esi,%ecx
2979 xorl %ebp,%edi
2980 xorl %eax,%ebp
2981 addl %edx,%ecx
2982 addl 44(%rsp),%ebx
2983 andl %ebp,%edi
2984 xorl %eax,%ebp
2985 shrdl $7,%edx,%edx
2986 movl %ecx,%esi
2987 xorl %ebp,%edi
2988 shldl $5,%ecx,%ecx
2989 addl %edi,%ebx
2990 xorl %edx,%esi
2991 xorl %ebp,%edx
2992 addl %ecx,%ebx
2993 vpalignr $8,%xmm5,%xmm6,%xmm8
2994 vpxor %xmm3,%xmm7,%xmm7
2995 addl 48(%rsp),%eax
2996 andl %edx,%esi
2997 xorl %ebp,%edx
2998 shrdl $7,%ecx,%ecx
2999 vpxor %xmm0,%xmm7,%xmm7
3000 movl %ebx,%edi
3001 xorl %edx,%esi
3002 vpaddd %xmm6,%xmm11,%xmm9
3003 vmovdqa 32(%r14),%xmm11
3004 shldl $5,%ebx,%ebx
3005 addl %esi,%eax
3006 vpxor %xmm8,%xmm7,%xmm7
3007 xorl %ecx,%edi
3008 xorl %edx,%ecx
3009 addl %ebx,%eax
3010 addl 52(%rsp),%ebp
3011 vpsrld $30,%xmm7,%xmm8
3012 vmovdqa %xmm9,32(%rsp)
3013 andl %ecx,%edi
3014 xorl %edx,%ecx
3015 shrdl $7,%ebx,%ebx
3016 movl %eax,%esi
3017 vpslld $2,%xmm7,%xmm7
3018 xorl %ecx,%edi
3019 shldl $5,%eax,%eax
3020 addl %edi,%ebp
3021 xorl %ebx,%esi
3022 xorl %ecx,%ebx
3023 addl %eax,%ebp
3024 addl 56(%rsp),%edx
3025 andl %ebx,%esi
3026 vpor %xmm8,%xmm7,%xmm7
3027 xorl %ecx,%ebx
3028 shrdl $7,%eax,%eax
3029 movl %ebp,%edi
3030 xorl %ebx,%esi
3031 shldl $5,%ebp,%ebp
3032 addl %esi,%edx
3033 xorl %eax,%edi
3034 xorl %ebx,%eax
3035 addl %ebp,%edx
3036 addl 60(%rsp),%ecx
3037 andl %eax,%edi
3038 xorl %ebx,%eax
3039 shrdl $7,%ebp,%ebp
3040 movl %edx,%esi
3041 xorl %eax,%edi
3042 shldl $5,%edx,%edx
3043 addl %edi,%ecx
3044 xorl %ebp,%esi
3045 xorl %eax,%ebp
3046 addl %edx,%ecx
3047 vpalignr $8,%xmm6,%xmm7,%xmm8
3048 vpxor %xmm4,%xmm0,%xmm0
3049 addl 0(%rsp),%ebx
3050 andl %ebp,%esi
3051 xorl %eax,%ebp
3052 shrdl $7,%edx,%edx
3053 vpxor %xmm1,%xmm0,%xmm0
3054 movl %ecx,%edi
3055 xorl %ebp,%esi
3056 vpaddd %xmm7,%xmm11,%xmm9
3057 shldl $5,%ecx,%ecx
3058 addl %esi,%ebx
3059 vpxor %xmm8,%xmm0,%xmm0
3060 xorl %edx,%edi
3061 xorl %ebp,%edx
3062 addl %ecx,%ebx
3063 addl 4(%rsp),%eax
3064 vpsrld $30,%xmm0,%xmm8
3065 vmovdqa %xmm9,48(%rsp)
3066 andl %edx,%edi
3067 xorl %ebp,%edx
3068 shrdl $7,%ecx,%ecx
3069 movl %ebx,%esi
3070 vpslld $2,%xmm0,%xmm0
3071 xorl %edx,%edi
3072 shldl $5,%ebx,%ebx
3073 addl %edi,%eax
3074 xorl %ecx,%esi
3075 xorl %edx,%ecx
3076 addl %ebx,%eax
3077 addl 8(%rsp),%ebp
3078 andl %ecx,%esi
3079 vpor %xmm8,%xmm0,%xmm0
3080 xorl %edx,%ecx
3081 shrdl $7,%ebx,%ebx
3082 movl %eax,%edi
3083 xorl %ecx,%esi
3084 shldl $5,%eax,%eax
3085 addl %esi,%ebp
3086 xorl %ebx,%edi
3087 xorl %ecx,%ebx
3088 addl %eax,%ebp
3089 addl 12(%rsp),%edx
3090 andl %ebx,%edi
3091 xorl %ecx,%ebx
3092 shrdl $7,%eax,%eax
3093 movl %ebp,%esi
3094 xorl %ebx,%edi
3095 shldl $5,%ebp,%ebp
3096 addl %edi,%edx
3097 xorl %eax,%esi
3098 xorl %ebx,%eax
3099 addl %ebp,%edx
3100 vpalignr $8,%xmm7,%xmm0,%xmm8
3101 vpxor %xmm5,%xmm1,%xmm1
3102 addl 16(%rsp),%ecx
3103 andl %eax,%esi
3104 xorl %ebx,%eax
3105 shrdl $7,%ebp,%ebp
3106 vpxor %xmm2,%xmm1,%xmm1
3107 movl %edx,%edi
3108 xorl %eax,%esi
3109 vpaddd %xmm0,%xmm11,%xmm9
3110 shldl $5,%edx,%edx
3111 addl %esi,%ecx
3112 vpxor %xmm8,%xmm1,%xmm1
3113 xorl %ebp,%edi
3114 xorl %eax,%ebp
3115 addl %edx,%ecx
3116 addl 20(%rsp),%ebx
3117 vpsrld $30,%xmm1,%xmm8
3118 vmovdqa %xmm9,0(%rsp)
3119 andl %ebp,%edi
3120 xorl %eax,%ebp
3121 shrdl $7,%edx,%edx
3122 movl %ecx,%esi
3123 vpslld $2,%xmm1,%xmm1
3124 xorl %ebp,%edi
3125 shldl $5,%ecx,%ecx
3126 addl %edi,%ebx
3127 xorl %edx,%esi
3128 xorl %ebp,%edx
3129 addl %ecx,%ebx
3130 addl 24(%rsp),%eax
3131 andl %edx,%esi
3132 vpor %xmm8,%xmm1,%xmm1
3133 xorl %ebp,%edx
3134 shrdl $7,%ecx,%ecx
3135 movl %ebx,%edi
3136 xorl %edx,%esi
3137 shldl $5,%ebx,%ebx
3138 addl %esi,%eax
3139 xorl %ecx,%edi
3140 xorl %edx,%ecx
3141 addl %ebx,%eax
3142 addl 28(%rsp),%ebp
3143 andl %ecx,%edi
3144 xorl %edx,%ecx
3145 shrdl $7,%ebx,%ebx
3146 movl %eax,%esi
3147 xorl %ecx,%edi
3148 shldl $5,%eax,%eax
3149 addl %edi,%ebp
3150 xorl %ebx,%esi
3151 xorl %ecx,%ebx
3152 addl %eax,%ebp
3153 vpalignr $8,%xmm0,%xmm1,%xmm8
3154 vpxor %xmm6,%xmm2,%xmm2
3155 addl 32(%rsp),%edx
3156 andl %ebx,%esi
3157 xorl %ecx,%ebx
3158 shrdl $7,%eax,%eax
3159 vpxor %xmm3,%xmm2,%xmm2
3160 movl %ebp,%edi
3161 xorl %ebx,%esi
3162 vpaddd %xmm1,%xmm11,%xmm9
3163 shldl $5,%ebp,%ebp
3164 addl %esi,%edx
3165 vpxor %xmm8,%xmm2,%xmm2
3166 xorl %eax,%edi
3167 xorl %ebx,%eax
3168 addl %ebp,%edx
3169 addl 36(%rsp),%ecx
3170 vpsrld $30,%xmm2,%xmm8
3171 vmovdqa %xmm9,16(%rsp)
3172 andl %eax,%edi
3173 xorl %ebx,%eax
3174 shrdl $7,%ebp,%ebp
3175 movl %edx,%esi
3176 vpslld $2,%xmm2,%xmm2
3177 xorl %eax,%edi
3178 shldl $5,%edx,%edx
3179 addl %edi,%ecx
3180 xorl %ebp,%esi
3181 xorl %eax,%ebp
3182 addl %edx,%ecx
3183 addl 40(%rsp),%ebx
3184 andl %ebp,%esi
3185 vpor %xmm8,%xmm2,%xmm2
3186 xorl %eax,%ebp
3187 shrdl $7,%edx,%edx
3188 movl %ecx,%edi
3189 xorl %ebp,%esi
3190 shldl $5,%ecx,%ecx
3191 addl %esi,%ebx
3192 xorl %edx,%edi
3193 xorl %ebp,%edx
3194 addl %ecx,%ebx
3195 addl 44(%rsp),%eax
3196 andl %edx,%edi
3197 xorl %ebp,%edx
3198 shrdl $7,%ecx,%ecx
3199 movl %ebx,%esi
3200 xorl %edx,%edi
3201 shldl $5,%ebx,%ebx
3202 addl %edi,%eax
3203 xorl %edx,%esi
3204 addl %ebx,%eax
3205 vpalignr $8,%xmm1,%xmm2,%xmm8
3206 vpxor %xmm7,%xmm3,%xmm3
3207 addl 48(%rsp),%ebp
3208 xorl %ecx,%esi
3209 movl %eax,%edi
3210 shldl $5,%eax,%eax
3211 vpxor %xmm4,%xmm3,%xmm3
3212 addl %esi,%ebp
3213 xorl %ecx,%edi
3214 vpaddd %xmm2,%xmm11,%xmm9
3215 shrdl $7,%ebx,%ebx
3216 addl %eax,%ebp
3217 vpxor %xmm8,%xmm3,%xmm3
3218 addl 52(%rsp),%edx
3219 xorl %ebx,%edi
3220 movl %ebp,%esi
3221 shldl $5,%ebp,%ebp
3222 vpsrld $30,%xmm3,%xmm8
3223 vmovdqa %xmm9,32(%rsp)
3224 addl %edi,%edx
3225 xorl %ebx,%esi
3226 shrdl $7,%eax,%eax
3227 addl %ebp,%edx
3228 vpslld $2,%xmm3,%xmm3
3229 addl 56(%rsp),%ecx
3230 xorl %eax,%esi
3231 movl %edx,%edi
3232 shldl $5,%edx,%edx
3233 addl %esi,%ecx
3234 xorl %eax,%edi
3235 shrdl $7,%ebp,%ebp
3236 addl %edx,%ecx
3237 vpor %xmm8,%xmm3,%xmm3
3238 addl 60(%rsp),%ebx
3239 xorl %ebp,%edi
3240 movl %ecx,%esi
3241 shldl $5,%ecx,%ecx
3242 addl %edi,%ebx
3243 xorl %ebp,%esi
3244 shrdl $7,%edx,%edx
3245 addl %ecx,%ebx
3246 addl 0(%rsp),%eax
3247 vpaddd %xmm3,%xmm11,%xmm9
3248 xorl %edx,%esi
3249 movl %ebx,%edi
3250 shldl $5,%ebx,%ebx
3251 addl %esi,%eax
3252 vmovdqa %xmm9,48(%rsp)
3253 xorl %edx,%edi
3254 shrdl $7,%ecx,%ecx
3255 addl %ebx,%eax
3256 addl 4(%rsp),%ebp
3257 xorl %ecx,%edi
3258 movl %eax,%esi
3259 shldl $5,%eax,%eax
3260 addl %edi,%ebp
3261 xorl %ecx,%esi
3262 shrdl $7,%ebx,%ebx
3263 addl %eax,%ebp
3264 addl 8(%rsp),%edx
3265 xorl %ebx,%esi
3266 movl %ebp,%edi
3267 shldl $5,%ebp,%ebp
3268 addl %esi,%edx
3269 xorl %ebx,%edi
3270 shrdl $7,%eax,%eax
3271 addl %ebp,%edx
3272 addl 12(%rsp),%ecx
3273 xorl %eax,%edi
3274 movl %edx,%esi
3275 shldl $5,%edx,%edx
3276 addl %edi,%ecx
3277 xorl %eax,%esi
3278 shrdl $7,%ebp,%ebp
3279 addl %edx,%ecx
3280 cmpq %r10,%r9
3281 je .Ldone_avx
3282 vmovdqa 64(%r14),%xmm6
3283 vmovdqa -64(%r14),%xmm11
3284 vmovdqu 0(%r9),%xmm0
3285 vmovdqu 16(%r9),%xmm1
3286 vmovdqu 32(%r9),%xmm2
3287 vmovdqu 48(%r9),%xmm3
3288 vpshufb %xmm6,%xmm0,%xmm0
3289 addq $64,%r9
3290 addl 16(%rsp),%ebx
3291 xorl %ebp,%esi
3292 vpshufb %xmm6,%xmm1,%xmm1
3293 movl %ecx,%edi
3294 shldl $5,%ecx,%ecx
3295 vpaddd %xmm11,%xmm0,%xmm4
3296 addl %esi,%ebx
3297 xorl %ebp,%edi
3298 shrdl $7,%edx,%edx
3299 addl %ecx,%ebx
3300 vmovdqa %xmm4,0(%rsp)
3301 addl 20(%rsp),%eax
3302 xorl %edx,%edi
3303 movl %ebx,%esi
3304 shldl $5,%ebx,%ebx
3305 addl %edi,%eax
3306 xorl %edx,%esi
3307 shrdl $7,%ecx,%ecx
3308 addl %ebx,%eax
3309 addl 24(%rsp),%ebp
3310 xorl %ecx,%esi
3311 movl %eax,%edi
3312 shldl $5,%eax,%eax
3313 addl %esi,%ebp
3314 xorl %ecx,%edi
3315 shrdl $7,%ebx,%ebx
3316 addl %eax,%ebp
3317 addl 28(%rsp),%edx
3318 xorl %ebx,%edi
3319 movl %ebp,%esi
3320 shldl $5,%ebp,%ebp
3321 addl %edi,%edx
3322 xorl %ebx,%esi
3323 shrdl $7,%eax,%eax
3324 addl %ebp,%edx
3325 addl 32(%rsp),%ecx
3326 xorl %eax,%esi
3327 vpshufb %xmm6,%xmm2,%xmm2
3328 movl %edx,%edi
3329 shldl $5,%edx,%edx
3330 vpaddd %xmm11,%xmm1,%xmm5
3331 addl %esi,%ecx
3332 xorl %eax,%edi
3333 shrdl $7,%ebp,%ebp
3334 addl %edx,%ecx
3335 vmovdqa %xmm5,16(%rsp)
3336 addl 36(%rsp),%ebx
3337 xorl %ebp,%edi
3338 movl %ecx,%esi
3339 shldl $5,%ecx,%ecx
3340 addl %edi,%ebx
3341 xorl %ebp,%esi
3342 shrdl $7,%edx,%edx
3343 addl %ecx,%ebx
3344 addl 40(%rsp),%eax
3345 xorl %edx,%esi
3346 movl %ebx,%edi
3347 shldl $5,%ebx,%ebx
3348 addl %esi,%eax
3349 xorl %edx,%edi
3350 shrdl $7,%ecx,%ecx
3351 addl %ebx,%eax
3352 addl 44(%rsp),%ebp
3353 xorl %ecx,%edi
3354 movl %eax,%esi
3355 shldl $5,%eax,%eax
3356 addl %edi,%ebp
3357 xorl %ecx,%esi
3358 shrdl $7,%ebx,%ebx
3359 addl %eax,%ebp
3360 addl 48(%rsp),%edx
3361 xorl %ebx,%esi
3362 vpshufb %xmm6,%xmm3,%xmm3
3363 movl %ebp,%edi
3364 shldl $5,%ebp,%ebp
3365 vpaddd %xmm11,%xmm2,%xmm6
3366 addl %esi,%edx
3367 xorl %ebx,%edi
3368 shrdl $7,%eax,%eax
3369 addl %ebp,%edx
3370 vmovdqa %xmm6,32(%rsp)
3371 addl 52(%rsp),%ecx
3372 xorl %eax,%edi
3373 movl %edx,%esi
3374 shldl $5,%edx,%edx
3375 addl %edi,%ecx
3376 xorl %eax,%esi
3377 shrdl $7,%ebp,%ebp
3378 addl %edx,%ecx
3379 addl 56(%rsp),%ebx
3380 xorl %ebp,%esi
3381 movl %ecx,%edi
3382 shldl $5,%ecx,%ecx
3383 addl %esi,%ebx
3384 xorl %ebp,%edi
3385 shrdl $7,%edx,%edx
3386 addl %ecx,%ebx
3387 addl 60(%rsp),%eax
3388 xorl %edx,%edi
3389 movl %ebx,%esi
3390 shldl $5,%ebx,%ebx
3391 addl %edi,%eax
3392 shrdl $7,%ecx,%ecx
3393 addl %ebx,%eax
3394 addl 0(%r8),%eax
3395 addl 4(%r8),%esi
3396 addl 8(%r8),%ecx
3397 addl 12(%r8),%edx
3398 movl %eax,0(%r8)
3399 addl 16(%r8),%ebp
3400 movl %esi,4(%r8)
3401 movl %esi,%ebx
3402 movl %ecx,8(%r8)
3403 movl %ecx,%edi
3404 movl %edx,12(%r8)
3405 xorl %edx,%edi
3406 movl %ebp,16(%r8)
3407 andl %edi,%esi
3408 jmp .Loop_avx
3409
3410 .align 16
3411 .Ldone_avx:
3412 addl 16(%rsp),%ebx
3413 xorl %ebp,%esi
3414 movl %ecx,%edi
3415 shldl $5,%ecx,%ecx
3416 addl %esi,%ebx
3417 xorl %ebp,%edi
3418 shrdl $7,%edx,%edx
3419 addl %ecx,%ebx
3420 addl 20(%rsp),%eax
3421 xorl %edx,%edi
3422 movl %ebx,%esi
3423 shldl $5,%ebx,%ebx
3424 addl %edi,%eax
3425 xorl %edx,%esi
3426 shrdl $7,%ecx,%ecx
3427 addl %ebx,%eax
3428 addl 24(%rsp),%ebp
3429 xorl %ecx,%esi
3430 movl %eax,%edi
3431 shldl $5,%eax,%eax
3432 addl %esi,%ebp
3433 xorl %ecx,%edi
3434 shrdl $7,%ebx,%ebx
3435 addl %eax,%ebp
3436 addl 28(%rsp),%edx
3437 xorl %ebx,%edi
3438 movl %ebp,%esi
3439 shldl $5,%ebp,%ebp
3440 addl %edi,%edx
3441 xorl %ebx,%esi
3442 shrdl $7,%eax,%eax
3443 addl %ebp,%edx
3444 addl 32(%rsp),%ecx
3445 xorl %eax,%esi
3446 movl %edx,%edi
3447 shldl $5,%edx,%edx
3448 addl %esi,%ecx
3449 xorl %eax,%edi
3450 shrdl $7,%ebp,%ebp
3451 addl %edx,%ecx
3452 addl 36(%rsp),%ebx
3453 xorl %ebp,%edi
3454 movl %ecx,%esi
3455 shldl $5,%ecx,%ecx
3456 addl %edi,%ebx
3457 xorl %ebp,%esi
3458 shrdl $7,%edx,%edx
3459 addl %ecx,%ebx
3460 addl 40(%rsp),%eax
3461 xorl %edx,%esi
3462 movl %ebx,%edi
3463 shldl $5,%ebx,%ebx
3464 addl %esi,%eax
3465 xorl %edx,%edi
3466 shrdl $7,%ecx,%ecx
3467 addl %ebx,%eax
3468 addl 44(%rsp),%ebp
3469 xorl %ecx,%edi
3470 movl %eax,%esi
3471 shldl $5,%eax,%eax
3472 addl %edi,%ebp
3473 xorl %ecx,%esi
3474 shrdl $7,%ebx,%ebx
3475 addl %eax,%ebp
3476 addl 48(%rsp),%edx
3477 xorl %ebx,%esi
3478 movl %ebp,%edi
3479 shldl $5,%ebp,%ebp
3480 addl %esi,%edx
3481 xorl %ebx,%edi
3482 shrdl $7,%eax,%eax
3483 addl %ebp,%edx
3484 addl 52(%rsp),%ecx
3485 xorl %eax,%edi
3486 movl %edx,%esi
3487 shldl $5,%edx,%edx
3488 addl %edi,%ecx
3489 xorl %eax,%esi
3490 shrdl $7,%ebp,%ebp
3491 addl %edx,%ecx
3492 addl 56(%rsp),%ebx
3493 xorl %ebp,%esi
3494 movl %ecx,%edi
3495 shldl $5,%ecx,%ecx
3496 addl %esi,%ebx
3497 xorl %ebp,%edi
3498 shrdl $7,%edx,%edx
3499 addl %ecx,%ebx
3500 addl 60(%rsp),%eax
3501 xorl %edx,%edi
3502 movl %ebx,%esi
3503 shldl $5,%ebx,%ebx
3504 addl %edi,%eax
3505 shrdl $7,%ecx,%ecx
3506 addl %ebx,%eax
3507 vzeroupper
3508
3509 addl 0(%r8),%eax
3510 addl 4(%r8),%esi
3511 addl 8(%r8),%ecx
3512 movl %eax,0(%r8)
3513 addl 12(%r8),%edx
3514 movl %esi,4(%r8)
3515 addl 16(%r8),%ebp
3516 movl %ecx,8(%r8)
3517 movl %edx,12(%r8)
3518 movl %ebp,16(%r8)
3519 movq -40(%r11),%r14
3520 movq -32(%r11),%r13
3521 movq -24(%r11),%r12
3522 movq -16(%r11),%rbp
3523 movq -8(%r11),%rbx
3524 leaq (%r11),%rsp
3525 .Lepilogue_avx:
3526 .byte 0xf3,0xc3
3527 .size sha1_block_data_order_avx,.-sha1_block_data_order_avx
3528 .align 64
3529 K_XX_XX:
3530 .long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
3531 .long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
3532 .long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
3533 .long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
3534 .long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
3535 .long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
3536 .long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
3537 .long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
3538 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
3539 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
3540 .byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
3541 .byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,3 2,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,12 1,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
3542 .align 64
3543 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698