2 /* Do not modify. This file is auto-generated from aesni-sha1-x86_64.pl. */
6 .globl aesni_cbc_sha1_enc
7 .type aesni_cbc_sha1_enc,@function
12 movl OPENSSL_ia32cap_P+0(%rip),%r10d
13 movq OPENSSL_ia32cap_P+4(%rip),%r11
15 jc aesni_cbc_sha1_enc_shaext
17 andl $1073741824,%r10d
19 cmpl $1342177280,%r10d
20 je aesni_cbc_sha1_enc_avx
21 jmp aesni_cbc_sha1_enc_ssse3
24 .size aesni_cbc_sha1_enc,.-aesni_cbc_sha1_enc
25 .type aesni_cbc_sha1_enc_ssse3,@function
27 aesni_cbc_sha1_enc_ssse3:
33 .cfi_adjust_cfa_offset 8
36 .cfi_adjust_cfa_offset 8
39 .cfi_adjust_cfa_offset 8
42 .cfi_adjust_cfa_offset 8
45 .cfi_adjust_cfa_offset 8
48 .cfi_adjust_cfa_offset 8
51 .cfi_adjust_cfa_offset 104
62 movl 240-112(%r15),%r8d
65 leaq K_XX_XX(%rip),%r11
96 movups -112(%r15),%xmm15
97 movups 16-112(%r15),%xmm0
102 movups 0(%r12),%xmm14
105 movups -80(%r15),%xmm1
106 .byte 102,15,56,220,208
107 pshufd $238,%xmm4,%xmm8
113 punpcklqdq %xmm5,%xmm8
130 movdqa %xmm13,48(%rsp)
132 movups -64(%r15),%xmm0
133 .byte 102,15,56,220,209
159 movups -48(%r15),%xmm1
160 .byte 102,15,56,220,208
172 pshufd $238,%xmm5,%xmm9
178 punpcklqdq %xmm6,%xmm9
188 movups -32(%r15),%xmm0
189 .byte 102,15,56,220,209
214 movups -16(%r15),%xmm1
215 .byte 102,15,56,220,208
229 movdqa 16(%r11),%xmm12
237 pshufd $238,%xmm6,%xmm10
244 .byte 102,15,56,220,209
245 punpcklqdq %xmm7,%xmm10
262 movdqa %xmm12,16(%rsp)
269 movups 16(%r15),%xmm1
270 .byte 102,15,56,220,208
294 movdqa 16(%r11),%xmm13
297 movups 32(%r15),%xmm0
298 .byte 102,15,56,220,209
304 pshufd $238,%xmm7,%xmm11
310 punpcklqdq %xmm8,%xmm11
324 movups 48(%r15),%xmm1
325 .byte 102,15,56,220,208
329 movdqa %xmm13,32(%rsp)
354 movups 64(%r15),%xmm0
355 .byte 102,15,56,220,209
356 movups 80(%r15),%xmm1
357 .byte 102,15,56,220,208
359 movups 96(%r15),%xmm0
360 .byte 102,15,56,220,209
361 movups 112(%r15),%xmm1
362 .byte 102,15,56,220,208
364 .byte 102,15,56,221,209
365 movups 16-112(%r15),%xmm0
373 movdqa 16(%r11),%xmm3
378 pshufd $238,%xmm10,%xmm13
386 punpcklqdq %xmm11,%xmm13
391 movups 16(%r12),%xmm14
393 movups %xmm2,0(%r12,%r13,1)
395 movups -80(%r15),%xmm1
396 .byte 102,15,56,220,208
410 movdqa %xmm3,48(%rsp)
421 movups -64(%r15),%xmm0
422 .byte 102,15,56,220,209
426 pshufd $238,%xmm11,%xmm3
441 movups -48(%r15),%xmm1
442 .byte 102,15,56,220,208
444 punpcklqdq %xmm4,%xmm3
462 movdqa %xmm12,0(%rsp)
472 movups -32(%r15),%xmm0
473 .byte 102,15,56,220,209
479 pshufd $238,%xmm4,%xmm12
490 punpcklqdq %xmm5,%xmm12
496 movdqa 32(%r11),%xmm3
502 movups -16(%r15),%xmm1
503 .byte 102,15,56,220,208
510 movdqa %xmm13,16(%rsp)
525 pshufd $238,%xmm5,%xmm13
531 .byte 102,15,56,220,209
538 punpcklqdq %xmm6,%xmm13
556 movdqa %xmm3,32(%rsp)
560 movups 16(%r15),%xmm1
561 .byte 102,15,56,220,208
573 pshufd $238,%xmm6,%xmm3
584 punpcklqdq %xmm7,%xmm3
589 movups 32(%r15),%xmm0
590 .byte 102,15,56,220,209
604 movdqa %xmm12,48(%rsp)
619 movups 48(%r15),%xmm1
620 .byte 102,15,56,220,208
621 pshufd $238,%xmm7,%xmm12
632 punpcklqdq %xmm8,%xmm12
651 movups 64(%r15),%xmm0
652 .byte 102,15,56,220,209
653 movups 80(%r15),%xmm1
654 .byte 102,15,56,220,208
656 movups 96(%r15),%xmm0
657 .byte 102,15,56,220,209
658 movups 112(%r15),%xmm1
659 .byte 102,15,56,220,208
661 .byte 102,15,56,221,209
662 movups 16-112(%r15),%xmm0
664 movdqa %xmm13,0(%rsp)
679 pshufd $238,%xmm8,%xmm13
690 movups 32(%r12),%xmm14
692 movups %xmm2,16(%r13,%r12,1)
694 movups -80(%r15),%xmm1
695 .byte 102,15,56,220,208
699 punpcklqdq %xmm9,%xmm13
718 movdqa %xmm3,16(%rsp)
721 movups -64(%r15),%xmm0
722 .byte 102,15,56,220,209
736 pshufd $238,%xmm9,%xmm3
745 movups -48(%r15),%xmm1
746 .byte 102,15,56,220,208
759 punpcklqdq %xmm10,%xmm3
765 movdqa 48(%r11),%xmm13
772 movups -32(%r15),%xmm0
773 .byte 102,15,56,220,209
780 movdqa %xmm12,32(%rsp)
796 pshufd $238,%xmm10,%xmm12
798 movups -16(%r15),%xmm1
799 .byte 102,15,56,220,208
820 .byte 102,15,56,220,209
821 punpcklqdq %xmm11,%xmm12
840 movdqa %xmm13,48(%rsp)
849 movups 16(%r15),%xmm1
850 .byte 102,15,56,220,208
858 pshufd $238,%xmm11,%xmm13
871 movups 32(%r15),%xmm0
872 .byte 102,15,56,220,209
881 punpcklqdq %xmm4,%xmm13
897 movups 48(%r15),%xmm1
898 .byte 102,15,56,220,208
918 pshufd $238,%xmm4,%xmm3
926 movups 64(%r15),%xmm0
927 .byte 102,15,56,220,209
928 movups 80(%r15),%xmm1
929 .byte 102,15,56,220,208
931 movups 96(%r15),%xmm0
932 .byte 102,15,56,220,209
933 movups 112(%r15),%xmm1
934 .byte 102,15,56,220,208
936 .byte 102,15,56,221,209
937 movups 16-112(%r15),%xmm0
953 punpcklqdq %xmm5,%xmm3
959 movups 48(%r12),%xmm14
961 movups %xmm2,32(%r13,%r12,1)
963 movups -80(%r15),%xmm1
964 .byte 102,15,56,220,208
978 movdqa %xmm12,16(%rsp)
991 movups -64(%r15),%xmm0
992 .byte 102,15,56,220,209
996 pshufd $238,%xmm5,%xmm12
1013 movups -48(%r15),%xmm1
1014 .byte 102,15,56,220,208
1016 punpcklqdq %xmm6,%xmm12
1034 movdqa %xmm13,32(%rsp)
1044 movups -32(%r15),%xmm0
1045 .byte 102,15,56,220,209
1065 movdqa %xmm3,48(%rsp)
1069 movups -16(%r15),%xmm1
1070 .byte 102,15,56,220,208
1091 movups 0(%r15),%xmm0
1092 .byte 102,15,56,220,209
1098 movdqa 64(%r11),%xmm3
1099 movdqa 0(%r11),%xmm13
1100 movdqu 0(%r10),%xmm4
1101 movdqu 16(%r10),%xmm5
1102 movdqu 32(%r10),%xmm6
1103 movdqu 48(%r10),%xmm7
1104 .byte 102,15,56,0,227
1109 .byte 102,15,56,0,235
1119 movdqa %xmm4,0(%rsp)
1127 movups 16(%r15),%xmm1
1128 .byte 102,15,56,220,208
1147 .byte 102,15,56,0,243
1150 movups 32(%r15),%xmm0
1151 .byte 102,15,56,220,209
1159 movdqa %xmm5,16(%rsp)
1175 movups 48(%r15),%xmm1
1176 .byte 102,15,56,220,208
1187 .byte 102,15,56,0,251
1197 movdqa %xmm6,32(%rsp)
1202 movups 64(%r15),%xmm0
1203 .byte 102,15,56,220,209
1204 movups 80(%r15),%xmm1
1205 .byte 102,15,56,220,208
1207 movups 96(%r15),%xmm0
1208 .byte 102,15,56,220,209
1209 movups 112(%r15),%xmm1
1210 .byte 102,15,56,220,208
1212 .byte 102,15,56,221,209
1213 movups 16-112(%r15),%xmm0
1233 movups %xmm2,48(%r13,%r12,1)
1270 movups 16(%r15),%xmm1
1271 .byte 102,15,56,220,208
1292 movups 32(%r15),%xmm0
1293 .byte 102,15,56,220,209
1314 movups 48(%r15),%xmm1
1315 .byte 102,15,56,220,208
1338 movups 64(%r15),%xmm0
1339 .byte 102,15,56,220,209
1340 movups 80(%r15),%xmm1
1341 .byte 102,15,56,220,208
1343 movups 96(%r15),%xmm0
1344 .byte 102,15,56,220,209
1345 movups 112(%r15),%xmm1
1346 .byte 102,15,56,220,208
1348 .byte 102,15,56,221,209
1349 movups 16-112(%r15),%xmm0
1368 movups %xmm2,48(%r13,%r12,1)
1383 .cfi_def_cfa %rsi,56
1401 .size aesni_cbc_sha1_enc_ssse3,.-aesni_cbc_sha1_enc_ssse3
1402 .type aesni_cbc_sha1_enc_avx,@function
1404 aesni_cbc_sha1_enc_avx:
1410 .cfi_adjust_cfa_offset 8
1411 .cfi_offset %rbx,-16
1413 .cfi_adjust_cfa_offset 8
1414 .cfi_offset %rbp,-24
1416 .cfi_adjust_cfa_offset 8
1417 .cfi_offset %r12,-32
1419 .cfi_adjust_cfa_offset 8
1420 .cfi_offset %r13,-40
1422 .cfi_adjust_cfa_offset 8
1423 .cfi_offset %r14,-48
1425 .cfi_adjust_cfa_offset 8
1426 .cfi_offset %r15,-56
1427 leaq -104(%rsp),%rsp
1428 .cfi_adjust_cfa_offset 104
1436 vmovdqu (%r8),%xmm12
1440 movl 240-112(%r15),%r8d
1443 leaq K_XX_XX(%rip),%r11
1454 vmovdqa 64(%r11),%xmm6
1455 vmovdqa 0(%r11),%xmm10
1456 vmovdqu 0(%r10),%xmm0
1457 vmovdqu 16(%r10),%xmm1
1458 vmovdqu 32(%r10),%xmm2
1459 vmovdqu 48(%r10),%xmm3
1460 vpshufb %xmm6,%xmm0,%xmm0
1462 vpshufb %xmm6,%xmm1,%xmm1
1463 vpshufb %xmm6,%xmm2,%xmm2
1464 vpshufb %xmm6,%xmm3,%xmm3
1465 vpaddd %xmm10,%xmm0,%xmm4
1466 vpaddd %xmm10,%xmm1,%xmm5
1467 vpaddd %xmm10,%xmm2,%xmm6
1468 vmovdqa %xmm4,0(%rsp)
1469 vmovdqa %xmm5,16(%rsp)
1470 vmovdqa %xmm6,32(%rsp)
1471 vmovups -112(%r15),%xmm15
1472 vmovups 16-112(%r15),%xmm14
1477 vmovdqu 0(%r12),%xmm13
1478 vpxor %xmm15,%xmm13,%xmm13
1479 vpxor %xmm13,%xmm12,%xmm12
1480 vaesenc %xmm14,%xmm12,%xmm12
1481 vmovups -80(%r15),%xmm15
1483 vpalignr $8,%xmm0,%xmm1,%xmm4
1486 vpaddd %xmm3,%xmm10,%xmm9
1489 vpsrldq $4,%xmm3,%xmm8
1492 vpxor %xmm0,%xmm4,%xmm4
1495 vpxor %xmm2,%xmm8,%xmm8
1500 vpxor %xmm8,%xmm4,%xmm4
1503 vmovdqa %xmm9,48(%rsp)
1505 vaesenc %xmm15,%xmm12,%xmm12
1506 vmovups -64(%r15),%xmm14
1508 vpsrld $31,%xmm4,%xmm8
1513 vpslldq $12,%xmm4,%xmm9
1514 vpaddd %xmm4,%xmm4,%xmm4
1519 vpor %xmm8,%xmm4,%xmm4
1520 vpsrld $30,%xmm9,%xmm8
1525 vpslld $2,%xmm9,%xmm9
1526 vpxor %xmm8,%xmm4,%xmm4
1531 vaesenc %xmm14,%xmm12,%xmm12
1532 vmovups -48(%r15),%xmm15
1533 vpxor %xmm9,%xmm4,%xmm4
1542 vpalignr $8,%xmm1,%xmm2,%xmm5
1545 vpaddd %xmm4,%xmm10,%xmm9
1548 vpsrldq $4,%xmm4,%xmm8
1551 vpxor %xmm1,%xmm5,%xmm5
1554 vpxor %xmm3,%xmm8,%xmm8
1556 vaesenc %xmm15,%xmm12,%xmm12
1557 vmovups -32(%r15),%xmm14
1561 vpxor %xmm8,%xmm5,%xmm5
1564 vmovdqa %xmm9,0(%rsp)
1567 vpsrld $31,%xmm5,%xmm8
1572 vpslldq $12,%xmm5,%xmm9
1573 vpaddd %xmm5,%xmm5,%xmm5
1578 vpor %xmm8,%xmm5,%xmm5
1579 vpsrld $30,%xmm9,%xmm8
1581 vaesenc %xmm14,%xmm12,%xmm12
1582 vmovups -16(%r15),%xmm15
1586 vpslld $2,%xmm9,%xmm9
1587 vpxor %xmm8,%xmm5,%xmm5
1592 vpxor %xmm9,%xmm5,%xmm5
1595 vmovdqa 16(%r11),%xmm10
1602 vpalignr $8,%xmm2,%xmm3,%xmm6
1605 vaesenc %xmm15,%xmm12,%xmm12
1606 vmovups 0(%r15),%xmm14
1607 vpaddd %xmm5,%xmm10,%xmm9
1610 vpsrldq $4,%xmm5,%xmm8
1613 vpxor %xmm2,%xmm6,%xmm6
1616 vpxor %xmm4,%xmm8,%xmm8
1621 vpxor %xmm8,%xmm6,%xmm6
1624 vmovdqa %xmm9,16(%rsp)
1627 vpsrld $31,%xmm6,%xmm8
1631 vaesenc %xmm14,%xmm12,%xmm12
1632 vmovups 16(%r15),%xmm15
1634 vpslldq $12,%xmm6,%xmm9
1635 vpaddd %xmm6,%xmm6,%xmm6
1640 vpor %xmm8,%xmm6,%xmm6
1641 vpsrld $30,%xmm9,%xmm8
1646 vpslld $2,%xmm9,%xmm9
1647 vpxor %xmm8,%xmm6,%xmm6
1652 vpxor %xmm9,%xmm6,%xmm6
1656 vaesenc %xmm15,%xmm12,%xmm12
1657 vmovups 32(%r15),%xmm14
1663 vpalignr $8,%xmm3,%xmm4,%xmm7
1666 vpaddd %xmm6,%xmm10,%xmm9
1669 vpsrldq $4,%xmm6,%xmm8
1672 vpxor %xmm3,%xmm7,%xmm7
1675 vpxor %xmm5,%xmm8,%xmm8
1680 vaesenc %xmm14,%xmm12,%xmm12
1681 vmovups 48(%r15),%xmm15
1682 vpxor %xmm8,%xmm7,%xmm7
1685 vmovdqa %xmm9,32(%rsp)
1688 vpsrld $31,%xmm7,%xmm8
1693 vpslldq $12,%xmm7,%xmm9
1694 vpaddd %xmm7,%xmm7,%xmm7
1699 vpor %xmm8,%xmm7,%xmm7
1700 vpsrld $30,%xmm9,%xmm8
1705 vpslld $2,%xmm9,%xmm9
1706 vpxor %xmm8,%xmm7,%xmm7
1710 vaesenc %xmm15,%xmm12,%xmm12
1711 vmovups 64(%r15),%xmm14
1712 vaesenc %xmm14,%xmm12,%xmm12
1713 vmovups 80(%r15),%xmm15
1715 vaesenc %xmm15,%xmm12,%xmm12
1716 vmovups 96(%r15),%xmm14
1717 vaesenc %xmm14,%xmm12,%xmm12
1718 vmovups 112(%r15),%xmm15
1720 vaesenclast %xmm15,%xmm12,%xmm12
1721 vmovups -112(%r15),%xmm15
1722 vmovups 16-112(%r15),%xmm14
1726 vpxor %xmm9,%xmm7,%xmm7
1733 vpalignr $8,%xmm6,%xmm7,%xmm8
1734 vpxor %xmm4,%xmm0,%xmm0
1739 vpxor %xmm1,%xmm0,%xmm0
1742 vpaddd %xmm7,%xmm10,%xmm9
1744 vmovdqu 16(%r12),%xmm13
1745 vpxor %xmm15,%xmm13,%xmm13
1746 vmovups %xmm12,0(%r12,%r13,1)
1747 vpxor %xmm13,%xmm12,%xmm12
1748 vaesenc %xmm14,%xmm12,%xmm12
1749 vmovups -80(%r15),%xmm15
1751 vpxor %xmm8,%xmm0,%xmm0
1756 vpsrld $30,%xmm0,%xmm8
1757 vmovdqa %xmm9,48(%rsp)
1762 vpslld $2,%xmm0,%xmm0
1771 vaesenc %xmm15,%xmm12,%xmm12
1772 vmovups -64(%r15),%xmm14
1773 vpor %xmm8,%xmm0,%xmm0
1788 vpalignr $8,%xmm7,%xmm0,%xmm8
1789 vpxor %xmm5,%xmm1,%xmm1
1791 vaesenc %xmm14,%xmm12,%xmm12
1792 vmovups -48(%r15),%xmm15
1796 vpxor %xmm2,%xmm1,%xmm1
1799 vpaddd %xmm0,%xmm10,%xmm9
1802 vpxor %xmm8,%xmm1,%xmm1
1807 vpsrld $30,%xmm1,%xmm8
1808 vmovdqa %xmm9,0(%rsp)
1813 vpslld $2,%xmm1,%xmm1
1819 vaesenc %xmm15,%xmm12,%xmm12
1820 vmovups -32(%r15),%xmm14
1824 vpor %xmm8,%xmm1,%xmm1
1833 vpalignr $8,%xmm0,%xmm1,%xmm8
1834 vpxor %xmm6,%xmm2,%xmm2
1839 vpxor %xmm3,%xmm2,%xmm2
1842 vpaddd %xmm1,%xmm10,%xmm9
1843 vmovdqa 32(%r11),%xmm10
1846 vpxor %xmm8,%xmm2,%xmm2
1848 vaesenc %xmm14,%xmm12,%xmm12
1849 vmovups -16(%r15),%xmm15
1853 vpsrld $30,%xmm2,%xmm8
1854 vmovdqa %xmm9,16(%rsp)
1859 vpslld $2,%xmm2,%xmm2
1868 vpor %xmm8,%xmm2,%xmm2
1874 vaesenc %xmm15,%xmm12,%xmm12
1875 vmovups 0(%r15),%xmm14
1879 vpalignr $8,%xmm1,%xmm2,%xmm8
1880 vpxor %xmm7,%xmm3,%xmm3
1885 vpxor %xmm4,%xmm3,%xmm3
1888 vpaddd %xmm2,%xmm10,%xmm9
1891 vpxor %xmm8,%xmm3,%xmm3
1896 vpsrld $30,%xmm3,%xmm8
1897 vmovdqa %xmm9,32(%rsp)
1902 vpslld $2,%xmm3,%xmm3
1904 vaesenc %xmm14,%xmm12,%xmm12
1905 vmovups 16(%r15),%xmm15
1913 vpor %xmm8,%xmm3,%xmm3
1922 vpalignr $8,%xmm2,%xmm3,%xmm8
1923 vpxor %xmm0,%xmm4,%xmm4
1928 vpxor %xmm5,%xmm4,%xmm4
1930 vaesenc %xmm15,%xmm12,%xmm12
1931 vmovups 32(%r15),%xmm14
1933 vpaddd %xmm3,%xmm10,%xmm9
1936 vpxor %xmm8,%xmm4,%xmm4
1941 vpsrld $30,%xmm4,%xmm8
1942 vmovdqa %xmm9,48(%rsp)
1947 vpslld $2,%xmm4,%xmm4
1956 vpor %xmm8,%xmm4,%xmm4
1958 vaesenc %xmm14,%xmm12,%xmm12
1959 vmovups 48(%r15),%xmm15
1967 vpalignr $8,%xmm3,%xmm4,%xmm8
1968 vpxor %xmm1,%xmm5,%xmm5
1973 vpxor %xmm6,%xmm5,%xmm5
1976 vpaddd %xmm4,%xmm10,%xmm9
1979 vpxor %xmm8,%xmm5,%xmm5
1984 vpsrld $30,%xmm5,%xmm8
1985 vmovdqa %xmm9,0(%rsp)
1989 vaesenc %xmm15,%xmm12,%xmm12
1990 vmovups 64(%r15),%xmm14
1991 vaesenc %xmm14,%xmm12,%xmm12
1992 vmovups 80(%r15),%xmm15
1994 vaesenc %xmm15,%xmm12,%xmm12
1995 vmovups 96(%r15),%xmm14
1996 vaesenc %xmm14,%xmm12,%xmm12
1997 vmovups 112(%r15),%xmm15
1999 vaesenclast %xmm15,%xmm12,%xmm12
2000 vmovups -112(%r15),%xmm15
2001 vmovups 16-112(%r15),%xmm14
2005 vpslld $2,%xmm5,%xmm5
2014 vpor %xmm8,%xmm5,%xmm5
2024 vpalignr $8,%xmm4,%xmm5,%xmm8
2025 vpxor %xmm2,%xmm6,%xmm6
2027 vmovdqu 32(%r12),%xmm13
2028 vpxor %xmm15,%xmm13,%xmm13
2029 vmovups %xmm12,16(%r13,%r12,1)
2030 vpxor %xmm13,%xmm12,%xmm12
2031 vaesenc %xmm14,%xmm12,%xmm12
2032 vmovups -80(%r15),%xmm15
2036 vpxor %xmm7,%xmm6,%xmm6
2039 vpaddd %xmm5,%xmm10,%xmm9
2042 vpxor %xmm8,%xmm6,%xmm6
2047 vpsrld $30,%xmm6,%xmm8
2048 vmovdqa %xmm9,16(%rsp)
2053 vpslld $2,%xmm6,%xmm6
2057 vaesenc %xmm15,%xmm12,%xmm12
2058 vmovups -64(%r15),%xmm14
2064 vpor %xmm8,%xmm6,%xmm6
2078 vaesenc %xmm14,%xmm12,%xmm12
2079 vmovups -48(%r15),%xmm15
2087 vpalignr $8,%xmm5,%xmm6,%xmm8
2088 vpxor %xmm3,%xmm7,%xmm7
2093 vpxor %xmm0,%xmm7,%xmm7
2096 vpaddd %xmm6,%xmm10,%xmm9
2097 vmovdqa 48(%r11),%xmm10
2100 vpxor %xmm8,%xmm7,%xmm7
2105 vaesenc %xmm15,%xmm12,%xmm12
2106 vmovups -32(%r15),%xmm14
2107 vpsrld $30,%xmm7,%xmm8
2108 vmovdqa %xmm9,32(%rsp)
2113 vpslld $2,%xmm7,%xmm7
2122 vpor %xmm8,%xmm7,%xmm7
2129 vaesenc %xmm14,%xmm12,%xmm12
2130 vmovups -16(%r15),%xmm15
2145 vpalignr $8,%xmm6,%xmm7,%xmm8
2146 vpxor %xmm4,%xmm0,%xmm0
2151 vaesenc %xmm15,%xmm12,%xmm12
2152 vmovups 0(%r15),%xmm14
2153 vpxor %xmm1,%xmm0,%xmm0
2156 vpaddd %xmm7,%xmm10,%xmm9
2159 vpxor %xmm8,%xmm0,%xmm0
2164 vpsrld $30,%xmm0,%xmm8
2165 vmovdqa %xmm9,48(%rsp)
2170 vpslld $2,%xmm0,%xmm0
2178 vaesenc %xmm14,%xmm12,%xmm12
2179 vmovups 16(%r15),%xmm15
2181 vpor %xmm8,%xmm0,%xmm0
2199 vaesenc %xmm15,%xmm12,%xmm12
2200 vmovups 32(%r15),%xmm14
2204 vpalignr $8,%xmm7,%xmm0,%xmm8
2205 vpxor %xmm5,%xmm1,%xmm1
2210 vpxor %xmm2,%xmm1,%xmm1
2213 vpaddd %xmm0,%xmm10,%xmm9
2216 vpxor %xmm8,%xmm1,%xmm1
2221 vpsrld $30,%xmm1,%xmm8
2222 vmovdqa %xmm9,0(%rsp)
2226 vaesenc %xmm14,%xmm12,%xmm12
2227 vmovups 48(%r15),%xmm15
2229 vpslld $2,%xmm1,%xmm1
2238 vpor %xmm8,%xmm1,%xmm1
2251 vaesenc %xmm15,%xmm12,%xmm12
2252 vmovups 64(%r15),%xmm14
2253 vaesenc %xmm14,%xmm12,%xmm12
2254 vmovups 80(%r15),%xmm15
2256 vaesenc %xmm15,%xmm12,%xmm12
2257 vmovups 96(%r15),%xmm14
2258 vaesenc %xmm14,%xmm12,%xmm12
2259 vmovups 112(%r15),%xmm15
2261 vaesenclast %xmm15,%xmm12,%xmm12
2262 vmovups -112(%r15),%xmm15
2263 vmovups 16-112(%r15),%xmm14
2274 vpalignr $8,%xmm0,%xmm1,%xmm8
2275 vpxor %xmm6,%xmm2,%xmm2
2280 vpxor %xmm3,%xmm2,%xmm2
2283 vpaddd %xmm1,%xmm10,%xmm9
2286 vmovdqu 48(%r12),%xmm13
2287 vpxor %xmm15,%xmm13,%xmm13
2288 vmovups %xmm12,32(%r13,%r12,1)
2289 vpxor %xmm13,%xmm12,%xmm12
2290 vaesenc %xmm14,%xmm12,%xmm12
2291 vmovups -80(%r15),%xmm15
2292 vpxor %xmm8,%xmm2,%xmm2
2297 vpsrld $30,%xmm2,%xmm8
2298 vmovdqa %xmm9,16(%rsp)
2303 vpslld $2,%xmm2,%xmm2
2312 vpor %xmm8,%xmm2,%xmm2
2315 vaesenc %xmm15,%xmm12,%xmm12
2316 vmovups -64(%r15),%xmm14
2334 vpalignr $8,%xmm1,%xmm2,%xmm8
2335 vpxor %xmm7,%xmm3,%xmm3
2337 vaesenc %xmm14,%xmm12,%xmm12
2338 vmovups -48(%r15),%xmm15
2342 vpxor %xmm4,%xmm3,%xmm3
2345 vpaddd %xmm2,%xmm10,%xmm9
2348 vpxor %xmm8,%xmm3,%xmm3
2353 vpsrld $30,%xmm3,%xmm8
2354 vmovdqa %xmm9,32(%rsp)
2359 vpslld $2,%xmm3,%xmm3
2365 vaesenc %xmm15,%xmm12,%xmm12
2366 vmovups -32(%r15),%xmm14
2370 vpor %xmm8,%xmm3,%xmm3
2380 vpaddd %xmm3,%xmm10,%xmm9
2385 vmovdqa %xmm9,48(%rsp)
2390 vaesenc %xmm14,%xmm12,%xmm12
2391 vmovups -16(%r15),%xmm15
2412 vaesenc %xmm15,%xmm12,%xmm12
2413 vmovups 0(%r15),%xmm14
2419 vmovdqa 64(%r11),%xmm9
2420 vmovdqa 0(%r11),%xmm10
2421 vmovdqu 0(%r10),%xmm0
2422 vmovdqu 16(%r10),%xmm1
2423 vmovdqu 32(%r10),%xmm2
2424 vmovdqu 48(%r10),%xmm3
2425 vpshufb %xmm9,%xmm0,%xmm0
2429 vpshufb %xmm9,%xmm1,%xmm1
2432 vpaddd %xmm10,%xmm0,%xmm8
2437 vmovdqa %xmm8,0(%rsp)
2447 vaesenc %xmm14,%xmm12,%xmm12
2448 vmovups 16(%r15),%xmm15
2466 vpshufb %xmm9,%xmm2,%xmm2
2469 vpaddd %xmm10,%xmm1,%xmm8
2471 vaesenc %xmm15,%xmm12,%xmm12
2472 vmovups 32(%r15),%xmm14
2476 vmovdqa %xmm8,16(%rsp)
2494 vaesenc %xmm14,%xmm12,%xmm12
2495 vmovups 48(%r15),%xmm15
2505 vpshufb %xmm9,%xmm3,%xmm3
2508 vpaddd %xmm10,%xmm2,%xmm8
2513 vmovdqa %xmm8,32(%rsp)
2521 vaesenc %xmm15,%xmm12,%xmm12
2522 vmovups 64(%r15),%xmm14
2523 vaesenc %xmm14,%xmm12,%xmm12
2524 vmovups 80(%r15),%xmm15
2526 vaesenc %xmm15,%xmm12,%xmm12
2527 vmovups 96(%r15),%xmm14
2528 vaesenc %xmm14,%xmm12,%xmm12
2529 vmovups 112(%r15),%xmm15
2531 vaesenclast %xmm15,%xmm12,%xmm12
2532 vmovups -112(%r15),%xmm15
2533 vmovups 16-112(%r15),%xmm14
2552 vmovups %xmm12,48(%r13,%r12,1)
2589 vaesenc %xmm14,%xmm12,%xmm12
2590 vmovups 16(%r15),%xmm15
2611 vaesenc %xmm15,%xmm12,%xmm12
2612 vmovups 32(%r15),%xmm14
2633 vaesenc %xmm14,%xmm12,%xmm12
2634 vmovups 48(%r15),%xmm15
2657 vaesenc %xmm15,%xmm12,%xmm12
2658 vmovups 64(%r15),%xmm14
2659 vaesenc %xmm14,%xmm12,%xmm12
2660 vmovups 80(%r15),%xmm15
2662 vaesenc %xmm15,%xmm12,%xmm12
2663 vmovups 96(%r15),%xmm14
2664 vaesenc %xmm14,%xmm12,%xmm12
2665 vmovups 112(%r15),%xmm15
2667 vaesenclast %xmm15,%xmm12,%xmm12
2668 vmovups -112(%r15),%xmm15
2669 vmovups 16-112(%r15),%xmm14
2688 vmovups %xmm12,48(%r13,%r12,1)
2701 vmovups %xmm12,(%r8)
2704 .cfi_def_cfa %rsi,56
2722 .size aesni_cbc_sha1_enc_avx,.-aesni_cbc_sha1_enc_avx
2725 .long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
2726 .long 0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
2727 .long 0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
2728 .long 0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
2729 .long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
2730 .byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
2732 .byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
2734 .type aesni_cbc_sha1_enc_shaext,@function
2736 aesni_cbc_sha1_enc_shaext:
2741 movdqa K_XX_XX+80(%rip),%xmm7
2743 movl 240(%rcx),%r11d
2745 movups (%rcx),%xmm15
2747 movups 16(%rcx),%xmm0
2750 pshufd $27,%xmm8,%xmm8
2751 pshufd $27,%xmm9,%xmm9
2756 movups 0(%rdi),%xmm14
2759 movups -80(%rcx),%xmm1
2760 .byte 102,15,56,220,208
2763 .byte 102,15,56,0,223
2764 movdqu 16(%r10),%xmm4
2766 movups -64(%rcx),%xmm0
2767 .byte 102,15,56,220,209
2768 .byte 102,15,56,0,231
2771 movdqu 32(%r10),%xmm5
2774 movups -48(%rcx),%xmm1
2775 .byte 102,15,56,220,208
2778 .byte 102,15,56,0,239
2779 .byte 69,15,58,204,193,0
2780 .byte 68,15,56,200,212
2781 movups -32(%rcx),%xmm0
2782 .byte 102,15,56,220,209
2784 movdqu -16(%r10),%xmm6
2786 .byte 102,15,56,0,247
2787 movups -16(%rcx),%xmm1
2788 .byte 102,15,56,220,208
2789 .byte 69,15,58,204,194,0
2790 .byte 68,15,56,200,205
2793 movups 0(%rcx),%xmm0
2794 .byte 102,15,56,220,209
2796 .byte 69,15,58,204,193,0
2797 .byte 68,15,56,200,214
2798 movups 16(%rcx),%xmm1
2799 .byte 102,15,56,220,208
2803 movups 32(%rcx),%xmm0
2804 .byte 102,15,56,220,209
2806 .byte 69,15,58,204,194,0
2807 .byte 68,15,56,200,203
2808 movups 48(%rcx),%xmm1
2809 .byte 102,15,56,220,208
2815 movups 64(%rcx),%xmm0
2816 .byte 102,15,56,220,209
2817 movups 80(%rcx),%xmm1
2818 .byte 102,15,56,220,208
2820 movups 96(%rcx),%xmm0
2821 .byte 102,15,56,220,209
2822 movups 112(%rcx),%xmm1
2823 .byte 102,15,56,220,208
2825 .byte 102,15,56,221,209
2826 movups 16-112(%rcx),%xmm0
2828 .byte 69,15,58,204,193,0
2829 .byte 68,15,56,200,212
2830 movups 16(%rdi),%xmm14
2832 movups %xmm2,0(%rsi,%rdi,1)
2834 movups -80(%rcx),%xmm1
2835 .byte 102,15,56,220,208
2839 movups -64(%rcx),%xmm0
2840 .byte 102,15,56,220,209
2842 .byte 69,15,58,204,194,1
2843 .byte 68,15,56,200,205
2844 movups -48(%rcx),%xmm1
2845 .byte 102,15,56,220,208
2849 movups -32(%rcx),%xmm0
2850 .byte 102,15,56,220,209
2852 .byte 69,15,58,204,193,1
2853 .byte 68,15,56,200,214
2854 movups -16(%rcx),%xmm1
2855 .byte 102,15,56,220,208
2859 movups 0(%rcx),%xmm0
2860 .byte 102,15,56,220,209
2862 .byte 69,15,58,204,194,1
2863 .byte 68,15,56,200,203
2864 movups 16(%rcx),%xmm1
2865 .byte 102,15,56,220,208
2869 movups 32(%rcx),%xmm0
2870 .byte 102,15,56,220,209
2872 .byte 69,15,58,204,193,1
2873 .byte 68,15,56,200,212
2874 movups 48(%rcx),%xmm1
2875 .byte 102,15,56,220,208
2881 movups 64(%rcx),%xmm0
2882 .byte 102,15,56,220,209
2883 movups 80(%rcx),%xmm1
2884 .byte 102,15,56,220,208
2886 movups 96(%rcx),%xmm0
2887 .byte 102,15,56,220,209
2888 movups 112(%rcx),%xmm1
2889 .byte 102,15,56,220,208
2891 .byte 102,15,56,221,209
2892 movups 16-112(%rcx),%xmm0
2894 .byte 69,15,58,204,194,1
2895 .byte 68,15,56,200,205
2896 movups 32(%rdi),%xmm14
2898 movups %xmm2,16(%rsi,%rdi,1)
2900 movups -80(%rcx),%xmm1
2901 .byte 102,15,56,220,208
2905 movups -64(%rcx),%xmm0
2906 .byte 102,15,56,220,209
2908 .byte 69,15,58,204,193,2
2909 .byte 68,15,56,200,214
2910 movups -48(%rcx),%xmm1
2911 .byte 102,15,56,220,208
2915 movups -32(%rcx),%xmm0
2916 .byte 102,15,56,220,209
2918 .byte 69,15,58,204,194,2
2919 .byte 68,15,56,200,203
2920 movups -16(%rcx),%xmm1
2921 .byte 102,15,56,220,208
2925 movups 0(%rcx),%xmm0
2926 .byte 102,15,56,220,209
2928 .byte 69,15,58,204,193,2
2929 .byte 68,15,56,200,212
2930 movups 16(%rcx),%xmm1
2931 .byte 102,15,56,220,208
2935 movups 32(%rcx),%xmm0
2936 .byte 102,15,56,220,209
2938 .byte 69,15,58,204,194,2
2939 .byte 68,15,56,200,205
2940 movups 48(%rcx),%xmm1
2941 .byte 102,15,56,220,208
2947 movups 64(%rcx),%xmm0
2948 .byte 102,15,56,220,209
2949 movups 80(%rcx),%xmm1
2950 .byte 102,15,56,220,208
2952 movups 96(%rcx),%xmm0
2953 .byte 102,15,56,220,209
2954 movups 112(%rcx),%xmm1
2955 .byte 102,15,56,220,208
2957 .byte 102,15,56,221,209
2958 movups 16-112(%rcx),%xmm0
2960 .byte 69,15,58,204,193,2
2961 .byte 68,15,56,200,214
2962 movups 48(%rdi),%xmm14
2964 movups %xmm2,32(%rsi,%rdi,1)
2966 movups -80(%rcx),%xmm1
2967 .byte 102,15,56,220,208
2971 movups -64(%rcx),%xmm0
2972 .byte 102,15,56,220,209
2974 .byte 69,15,58,204,194,3
2975 .byte 68,15,56,200,203
2976 movups -48(%rcx),%xmm1
2977 .byte 102,15,56,220,208
2981 movups -32(%rcx),%xmm0
2982 .byte 102,15,56,220,209
2984 .byte 69,15,58,204,193,3
2985 .byte 68,15,56,200,212
2988 movups -16(%rcx),%xmm1
2989 .byte 102,15,56,220,208
2991 .byte 69,15,58,204,194,3
2992 .byte 68,15,56,200,205
2994 movups 0(%rcx),%xmm0
2995 .byte 102,15,56,220,209
2998 .byte 69,15,58,204,193,3
2999 .byte 68,15,56,200,214
3000 movups 16(%rcx),%xmm1
3001 .byte 102,15,56,220,208
3003 .byte 69,15,58,204,194,3
3004 .byte 68,15,56,200,205
3005 movups 32(%rcx),%xmm0
3006 .byte 102,15,56,220,209
3007 movups 48(%rcx),%xmm1
3008 .byte 102,15,56,220,208
3011 movups 64(%rcx),%xmm0
3012 .byte 102,15,56,220,209
3013 movups 80(%rcx),%xmm1
3014 .byte 102,15,56,220,208
3016 movups 96(%rcx),%xmm0
3017 .byte 102,15,56,220,209
3018 movups 112(%rcx),%xmm1
3019 .byte 102,15,56,220,208
3021 .byte 102,15,56,221,209
3022 movups 16-112(%rcx),%xmm0
3026 movups %xmm2,48(%rsi,%rdi,1)
3030 pshufd $27,%xmm8,%xmm8
3031 pshufd $27,%xmm9,%xmm9
3037 .size aesni_cbc_sha1_enc_shaext,.-aesni_cbc_sha1_enc_shaext