OLD | NEW |
| (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 | |
OLD | NEW |