OLD | NEW |
1 #if defined(__x86_64__) | 1 #if defined(__x86_64__) |
2 .text | 2 .text |
3 | 3 |
4 .globl aesni_encrypt | 4 .globl aesni_encrypt |
| 5 .hidden aesni_encrypt |
5 .type aesni_encrypt,@function | 6 .type aesni_encrypt,@function |
6 .align 16 | 7 .align 16 |
7 aesni_encrypt: | 8 aesni_encrypt: |
8 movups (%rdi),%xmm2 | 9 movups (%rdi),%xmm2 |
9 movl 240(%rdx),%eax | 10 movl 240(%rdx),%eax |
10 movups (%rdx),%xmm0 | 11 movups (%rdx),%xmm0 |
11 movups 16(%rdx),%xmm1 | 12 movups 16(%rdx),%xmm1 |
12 leaq 32(%rdx),%rdx | 13 leaq 32(%rdx),%rdx |
13 xorps %xmm0,%xmm2 | 14 xorps %xmm0,%xmm2 |
14 .Loop_enc1_1: | 15 .Loop_enc1_1: |
15 .byte 102,15,56,220,209 | 16 .byte 102,15,56,220,209 |
16 decl %eax | 17 decl %eax |
17 movups (%rdx),%xmm1 | 18 movups (%rdx),%xmm1 |
18 leaq 16(%rdx),%rdx | 19 leaq 16(%rdx),%rdx |
19 jnz .Loop_enc1_1 | 20 jnz .Loop_enc1_1 |
20 .byte 102,15,56,221,209 | 21 .byte 102,15,56,221,209 |
21 movups %xmm2,(%rsi) | 22 movups %xmm2,(%rsi) |
22 .byte 0xf3,0xc3 | 23 .byte 0xf3,0xc3 |
23 .size aesni_encrypt,.-aesni_encrypt | 24 .size aesni_encrypt,.-aesni_encrypt |
24 | 25 |
25 .globl aesni_decrypt | 26 .globl aesni_decrypt |
| 27 .hidden aesni_decrypt |
26 .type aesni_decrypt,@function | 28 .type aesni_decrypt,@function |
27 .align 16 | 29 .align 16 |
28 aesni_decrypt: | 30 aesni_decrypt: |
29 movups (%rdi),%xmm2 | 31 movups (%rdi),%xmm2 |
30 movl 240(%rdx),%eax | 32 movl 240(%rdx),%eax |
31 movups (%rdx),%xmm0 | 33 movups (%rdx),%xmm0 |
32 movups 16(%rdx),%xmm1 | 34 movups 16(%rdx),%xmm1 |
33 leaq 32(%rdx),%rdx | 35 leaq 32(%rdx),%rdx |
34 xorps %xmm0,%xmm2 | 36 xorps %xmm0,%xmm2 |
35 .Loop_dec1_2: | 37 .Loop_dec1_2: |
(...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
494 .byte 102,15,56,223,216 | 496 .byte 102,15,56,223,216 |
495 .byte 102,15,56,223,224 | 497 .byte 102,15,56,223,224 |
496 .byte 102,15,56,223,232 | 498 .byte 102,15,56,223,232 |
497 .byte 102,15,56,223,240 | 499 .byte 102,15,56,223,240 |
498 .byte 102,15,56,223,248 | 500 .byte 102,15,56,223,248 |
499 .byte 102,68,15,56,223,192 | 501 .byte 102,68,15,56,223,192 |
500 .byte 102,68,15,56,223,200 | 502 .byte 102,68,15,56,223,200 |
501 .byte 0xf3,0xc3 | 503 .byte 0xf3,0xc3 |
502 .size _aesni_decrypt8,.-_aesni_decrypt8 | 504 .size _aesni_decrypt8,.-_aesni_decrypt8 |
503 .globl aesni_ecb_encrypt | 505 .globl aesni_ecb_encrypt |
| 506 .hidden aesni_ecb_encrypt |
504 .type aesni_ecb_encrypt,@function | 507 .type aesni_ecb_encrypt,@function |
505 .align 16 | 508 .align 16 |
506 aesni_ecb_encrypt: | 509 aesni_ecb_encrypt: |
507 andq $-16,%rdx | 510 andq $-16,%rdx |
508 jz .Lecb_ret | 511 jz .Lecb_ret |
509 | 512 |
510 movl 240(%rcx),%eax | 513 movl 240(%rcx),%eax |
511 movups (%rcx),%xmm0 | 514 movups (%rcx),%xmm0 |
512 movq %rcx,%r11 | 515 movq %rcx,%r11 |
513 movl %eax,%r10d | 516 movl %eax,%r10d |
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
794 movups %xmm3,16(%rsi) | 797 movups %xmm3,16(%rsi) |
795 movups %xmm4,32(%rsi) | 798 movups %xmm4,32(%rsi) |
796 movups %xmm5,48(%rsi) | 799 movups %xmm5,48(%rsi) |
797 movups %xmm6,64(%rsi) | 800 movups %xmm6,64(%rsi) |
798 movups %xmm7,80(%rsi) | 801 movups %xmm7,80(%rsi) |
799 | 802 |
800 .Lecb_ret: | 803 .Lecb_ret: |
801 .byte 0xf3,0xc3 | 804 .byte 0xf3,0xc3 |
802 .size aesni_ecb_encrypt,.-aesni_ecb_encrypt | 805 .size aesni_ecb_encrypt,.-aesni_ecb_encrypt |
803 .globl aesni_ccm64_encrypt_blocks | 806 .globl aesni_ccm64_encrypt_blocks |
| 807 .hidden aesni_ccm64_encrypt_blocks |
804 .type aesni_ccm64_encrypt_blocks,@function | 808 .type aesni_ccm64_encrypt_blocks,@function |
805 .align 16 | 809 .align 16 |
806 aesni_ccm64_encrypt_blocks: | 810 aesni_ccm64_encrypt_blocks: |
807 movl 240(%rcx),%eax | 811 movl 240(%rcx),%eax |
808 movdqu (%r8),%xmm6 | 812 movdqu (%r8),%xmm6 |
809 movdqa .Lincrement64(%rip),%xmm9 | 813 movdqa .Lincrement64(%rip),%xmm9 |
810 movdqa .Lbswap_mask(%rip),%xmm7 | 814 movdqa .Lbswap_mask(%rip),%xmm7 |
811 | 815 |
812 shll $4,%eax | 816 shll $4,%eax |
813 movl $16,%r10d | 817 movl $16,%r10d |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
851 movdqa %xmm6,%xmm2 | 855 movdqa %xmm6,%xmm2 |
852 movups %xmm8,(%rsi) | 856 movups %xmm8,(%rsi) |
853 .byte 102,15,56,0,215 | 857 .byte 102,15,56,0,215 |
854 leaq 16(%rsi),%rsi | 858 leaq 16(%rsi),%rsi |
855 jnz .Lccm64_enc_outer | 859 jnz .Lccm64_enc_outer |
856 | 860 |
857 movups %xmm3,(%r9) | 861 movups %xmm3,(%r9) |
858 .byte 0xf3,0xc3 | 862 .byte 0xf3,0xc3 |
859 .size aesni_ccm64_encrypt_blocks,.-aesni_ccm64_encrypt_blocks | 863 .size aesni_ccm64_encrypt_blocks,.-aesni_ccm64_encrypt_blocks |
860 .globl aesni_ccm64_decrypt_blocks | 864 .globl aesni_ccm64_decrypt_blocks |
| 865 .hidden aesni_ccm64_decrypt_blocks |
861 .type aesni_ccm64_decrypt_blocks,@function | 866 .type aesni_ccm64_decrypt_blocks,@function |
862 .align 16 | 867 .align 16 |
863 aesni_ccm64_decrypt_blocks: | 868 aesni_ccm64_decrypt_blocks: |
864 movl 240(%rcx),%eax | 869 movl 240(%rcx),%eax |
865 movups (%r8),%xmm6 | 870 movups (%r8),%xmm6 |
866 movdqu (%r9),%xmm3 | 871 movdqu (%r9),%xmm3 |
867 movdqa .Lincrement64(%rip),%xmm9 | 872 movdqa .Lincrement64(%rip),%xmm9 |
868 movdqa .Lbswap_mask(%rip),%xmm7 | 873 movdqa .Lbswap_mask(%rip),%xmm7 |
869 | 874 |
870 movaps %xmm6,%xmm2 | 875 movaps %xmm6,%xmm2 |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
942 .byte 102,15,56,220,217 | 947 .byte 102,15,56,220,217 |
943 decl %eax | 948 decl %eax |
944 movups (%r11),%xmm1 | 949 movups (%r11),%xmm1 |
945 leaq 16(%r11),%r11 | 950 leaq 16(%r11),%r11 |
946 jnz .Loop_enc1_6 | 951 jnz .Loop_enc1_6 |
947 .byte 102,15,56,221,217 | 952 .byte 102,15,56,221,217 |
948 movups %xmm3,(%r9) | 953 movups %xmm3,(%r9) |
949 .byte 0xf3,0xc3 | 954 .byte 0xf3,0xc3 |
950 .size aesni_ccm64_decrypt_blocks,.-aesni_ccm64_decrypt_blocks | 955 .size aesni_ccm64_decrypt_blocks,.-aesni_ccm64_decrypt_blocks |
951 .globl aesni_ctr32_encrypt_blocks | 956 .globl aesni_ctr32_encrypt_blocks |
| 957 .hidden aesni_ctr32_encrypt_blocks |
952 .type aesni_ctr32_encrypt_blocks,@function | 958 .type aesni_ctr32_encrypt_blocks,@function |
953 .align 16 | 959 .align 16 |
954 aesni_ctr32_encrypt_blocks: | 960 aesni_ctr32_encrypt_blocks: |
955 leaq (%rsp),%rax | 961 leaq (%rsp),%rax |
956 pushq %rbp | 962 pushq %rbp |
957 subq $128,%rsp | 963 subq $128,%rsp |
958 andq $-16,%rsp | 964 andq $-16,%rsp |
959 leaq -8(%rax),%rbp | 965 leaq -8(%rax),%rbp |
960 | 966 |
961 cmpq $1,%rdx | 967 cmpq $1,%rdx |
(...skipping 518 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1480 jmp .Lctr32_done | 1486 jmp .Lctr32_done |
1481 | 1487 |
1482 .align 16 | 1488 .align 16 |
1483 .Lctr32_done: | 1489 .Lctr32_done: |
1484 leaq (%rbp),%rsp | 1490 leaq (%rbp),%rsp |
1485 popq %rbp | 1491 popq %rbp |
1486 .Lctr32_epilogue: | 1492 .Lctr32_epilogue: |
1487 .byte 0xf3,0xc3 | 1493 .byte 0xf3,0xc3 |
1488 .size aesni_ctr32_encrypt_blocks,.-aesni_ctr32_encrypt_blocks | 1494 .size aesni_ctr32_encrypt_blocks,.-aesni_ctr32_encrypt_blocks |
1489 .globl aesni_xts_encrypt | 1495 .globl aesni_xts_encrypt |
| 1496 .hidden aesni_xts_encrypt |
1490 .type aesni_xts_encrypt,@function | 1497 .type aesni_xts_encrypt,@function |
1491 .align 16 | 1498 .align 16 |
1492 aesni_xts_encrypt: | 1499 aesni_xts_encrypt: |
1493 leaq (%rsp),%rax | 1500 leaq (%rsp),%rax |
1494 pushq %rbp | 1501 pushq %rbp |
1495 subq $112,%rsp | 1502 subq $112,%rsp |
1496 andq $-16,%rsp | 1503 andq $-16,%rsp |
1497 leaq -8(%rax),%rbp | 1504 leaq -8(%rax),%rbp |
1498 movups (%r9),%xmm2 | 1505 movups (%r9),%xmm2 |
1499 movl 240(%r8),%eax | 1506 movl 240(%r8),%eax |
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1920 xorps %xmm10,%xmm2 | 1927 xorps %xmm10,%xmm2 |
1921 movups %xmm2,-16(%rsi) | 1928 movups %xmm2,-16(%rsi) |
1922 | 1929 |
1923 .Lxts_enc_ret: | 1930 .Lxts_enc_ret: |
1924 leaq (%rbp),%rsp | 1931 leaq (%rbp),%rsp |
1925 popq %rbp | 1932 popq %rbp |
1926 .Lxts_enc_epilogue: | 1933 .Lxts_enc_epilogue: |
1927 .byte 0xf3,0xc3 | 1934 .byte 0xf3,0xc3 |
1928 .size aesni_xts_encrypt,.-aesni_xts_encrypt | 1935 .size aesni_xts_encrypt,.-aesni_xts_encrypt |
1929 .globl aesni_xts_decrypt | 1936 .globl aesni_xts_decrypt |
| 1937 .hidden aesni_xts_decrypt |
1930 .type aesni_xts_decrypt,@function | 1938 .type aesni_xts_decrypt,@function |
1931 .align 16 | 1939 .align 16 |
1932 aesni_xts_decrypt: | 1940 aesni_xts_decrypt: |
1933 leaq (%rsp),%rax | 1941 leaq (%rsp),%rax |
1934 pushq %rbp | 1942 pushq %rbp |
1935 subq $112,%rsp | 1943 subq $112,%rsp |
1936 andq $-16,%rsp | 1944 andq $-16,%rsp |
1937 leaq -8(%rax),%rbp | 1945 leaq -8(%rax),%rbp |
1938 movups (%r9),%xmm2 | 1946 movups (%r9),%xmm2 |
1939 movl 240(%r8),%eax | 1947 movl 240(%r8),%eax |
(...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2398 xorps %xmm10,%xmm2 | 2406 xorps %xmm10,%xmm2 |
2399 movups %xmm2,(%rsi) | 2407 movups %xmm2,(%rsi) |
2400 | 2408 |
2401 .Lxts_dec_ret: | 2409 .Lxts_dec_ret: |
2402 leaq (%rbp),%rsp | 2410 leaq (%rbp),%rsp |
2403 popq %rbp | 2411 popq %rbp |
2404 .Lxts_dec_epilogue: | 2412 .Lxts_dec_epilogue: |
2405 .byte 0xf3,0xc3 | 2413 .byte 0xf3,0xc3 |
2406 .size aesni_xts_decrypt,.-aesni_xts_decrypt | 2414 .size aesni_xts_decrypt,.-aesni_xts_decrypt |
2407 .globl aesni_cbc_encrypt | 2415 .globl aesni_cbc_encrypt |
| 2416 .hidden aesni_cbc_encrypt |
2408 .type aesni_cbc_encrypt,@function | 2417 .type aesni_cbc_encrypt,@function |
2409 .align 16 | 2418 .align 16 |
2410 aesni_cbc_encrypt: | 2419 aesni_cbc_encrypt: |
2411 testq %rdx,%rdx | 2420 testq %rdx,%rdx |
2412 jz .Lcbc_ret | 2421 jz .Lcbc_ret |
2413 | 2422 |
2414 movl 240(%rcx),%r10d | 2423 movl 240(%rcx),%r10d |
2415 movq %rcx,%r11 | 2424 movq %rcx,%r11 |
2416 testl %r9d,%r9d | 2425 testl %r9d,%r9d |
2417 jz .Lcbc_decrypt | 2426 jz .Lcbc_decrypt |
(...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2914 leaq (%rsp),%rsi | 2923 leaq (%rsp),%rsi |
2915 .long 0x9066A4F3 | 2924 .long 0x9066A4F3 |
2916 | 2925 |
2917 .Lcbc_dec_ret: | 2926 .Lcbc_dec_ret: |
2918 leaq (%rbp),%rsp | 2927 leaq (%rbp),%rsp |
2919 popq %rbp | 2928 popq %rbp |
2920 .Lcbc_ret: | 2929 .Lcbc_ret: |
2921 .byte 0xf3,0xc3 | 2930 .byte 0xf3,0xc3 |
2922 .size aesni_cbc_encrypt,.-aesni_cbc_encrypt | 2931 .size aesni_cbc_encrypt,.-aesni_cbc_encrypt |
2923 .globl aesni_set_decrypt_key | 2932 .globl aesni_set_decrypt_key |
| 2933 .hidden aesni_set_decrypt_key |
2924 .type aesni_set_decrypt_key,@function | 2934 .type aesni_set_decrypt_key,@function |
2925 .align 16 | 2935 .align 16 |
2926 aesni_set_decrypt_key: | 2936 aesni_set_decrypt_key: |
2927 .byte 0x48,0x83,0xEC,0x08 | 2937 .byte 0x48,0x83,0xEC,0x08 |
2928 call __aesni_set_encrypt_key | 2938 call __aesni_set_encrypt_key |
2929 shll $4,%esi | 2939 shll $4,%esi |
2930 testl %eax,%eax | 2940 testl %eax,%eax |
2931 jnz .Ldec_key_ret | 2941 jnz .Ldec_key_ret |
2932 leaq 16(%rdx,%rsi,1),%rdi | 2942 leaq 16(%rdx,%rsi,1),%rdi |
2933 | 2943 |
(...skipping 18 matching lines...) Expand all Loading... |
2952 | 2962 |
2953 movups (%rdx),%xmm0 | 2963 movups (%rdx),%xmm0 |
2954 .byte 102,15,56,219,192 | 2964 .byte 102,15,56,219,192 |
2955 movups %xmm0,(%rdi) | 2965 movups %xmm0,(%rdi) |
2956 .Ldec_key_ret: | 2966 .Ldec_key_ret: |
2957 addq $8,%rsp | 2967 addq $8,%rsp |
2958 .byte 0xf3,0xc3 | 2968 .byte 0xf3,0xc3 |
2959 .LSEH_end_set_decrypt_key: | 2969 .LSEH_end_set_decrypt_key: |
2960 .size aesni_set_decrypt_key,.-aesni_set_decrypt_key | 2970 .size aesni_set_decrypt_key,.-aesni_set_decrypt_key |
2961 .globl aesni_set_encrypt_key | 2971 .globl aesni_set_encrypt_key |
| 2972 .hidden aesni_set_encrypt_key |
2962 .type aesni_set_encrypt_key,@function | 2973 .type aesni_set_encrypt_key,@function |
2963 .align 16 | 2974 .align 16 |
2964 aesni_set_encrypt_key: | 2975 aesni_set_encrypt_key: |
2965 __aesni_set_encrypt_key: | 2976 __aesni_set_encrypt_key: |
2966 .byte 0x48,0x83,0xEC,0x08 | 2977 .byte 0x48,0x83,0xEC,0x08 |
2967 movq $-1,%rax | 2978 movq $-1,%rax |
2968 testq %rdi,%rdi | 2979 testq %rdi,%rdi |
2969 jz .Lenc_key_ret | 2980 jz .Lenc_key_ret |
2970 testq %rdx,%rdx | 2981 testq %rdx,%rdx |
2971 jz .Lenc_key_ret | 2982 jz .Lenc_key_ret |
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3158 .Lincrement64: | 3169 .Lincrement64: |
3159 .long 1,0,0,0 | 3170 .long 1,0,0,0 |
3160 .Lxts_magic: | 3171 .Lxts_magic: |
3161 .long 0x87,0,1,0 | 3172 .long 0x87,0,1,0 |
3162 .Lincrement1: | 3173 .Lincrement1: |
3163 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 | 3174 .byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 |
3164 | 3175 |
3165 .byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,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 | 3176 .byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,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 |
3166 .align 64 | 3177 .align 64 |
3167 #endif | 3178 #endif |
OLD | NEW |