OLD | NEW |
1 #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM) | 1 #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM) |
2 .text | 2 .text |
3 .extern»OPENSSL_ia32cap_P | 3 .extern»OPENSSL_ia32cap_addr |
4 .hidden OPENSSL_ia32cap_P | 4 .hidden OPENSSL_ia32cap_addr |
5 .globl aesni_encrypt | 5 .globl aesni_encrypt |
6 .hidden aesni_encrypt | 6 .hidden aesni_encrypt |
7 .type aesni_encrypt,@function | 7 .type aesni_encrypt,@function |
8 .align 16 | 8 .align 16 |
9 aesni_encrypt: | 9 aesni_encrypt: |
10 movups (%rdi),%xmm2 | 10 movups (%rdi),%xmm2 |
11 movl 240(%rdx),%eax | 11 movl 240(%rdx),%eax |
12 movups (%rdx),%xmm0 | 12 movups (%rdx),%xmm0 |
13 movups 16(%rdx),%xmm1 | 13 movups 16(%rdx),%xmm1 |
14 leaq 32(%rdx),%rdx | 14 leaq 32(%rdx),%rdx |
(...skipping 1065 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1080 bswapl %r9d | 1080 bswapl %r9d |
1081 leaq 6(%r8),%r10 | 1081 leaq 6(%r8),%r10 |
1082 movl 240(%rcx),%eax | 1082 movl 240(%rcx),%eax |
1083 xorl %ebp,%r9d | 1083 xorl %ebp,%r9d |
1084 bswapl %r10d | 1084 bswapl %r10d |
1085 movl %r9d,80+12(%rsp) | 1085 movl %r9d,80+12(%rsp) |
1086 xorl %ebp,%r10d | 1086 xorl %ebp,%r10d |
1087 leaq 7(%r8),%r9 | 1087 leaq 7(%r8),%r9 |
1088 movl %r10d,96+12(%rsp) | 1088 movl %r10d,96+12(%rsp) |
1089 bswapl %r9d | 1089 bswapl %r9d |
1090 » movl» OPENSSL_ia32cap_P+4(%rip),%r10d | 1090 » movq» OPENSSL_ia32cap_addr(%rip),%r10 |
| 1091 » movl» 4(%r10),%r10d |
1091 xorl %ebp,%r9d | 1092 xorl %ebp,%r9d |
1092 andl $71303168,%r10d | 1093 andl $71303168,%r10d |
1093 movl %r9d,112+12(%rsp) | 1094 movl %r9d,112+12(%rsp) |
1094 | 1095 |
1095 movups 16(%rcx),%xmm1 | 1096 movups 16(%rcx),%xmm1 |
1096 | 1097 |
1097 movdqa 64(%rsp),%xmm6 | 1098 movdqa 64(%rsp),%xmm6 |
1098 movdqa 80(%rsp),%xmm7 | 1099 movdqa 80(%rsp),%xmm7 |
1099 | 1100 |
1100 cmpq $8,%rdx | 1101 cmpq $8,%rdx |
(...skipping 2365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3466 movdqu 16(%rdi),%xmm3 | 3467 movdqu 16(%rdi),%xmm3 |
3467 movdqa %xmm2,%xmm11 | 3468 movdqa %xmm2,%xmm11 |
3468 movdqu 32(%rdi),%xmm4 | 3469 movdqu 32(%rdi),%xmm4 |
3469 movdqa %xmm3,%xmm12 | 3470 movdqa %xmm3,%xmm12 |
3470 movdqu 48(%rdi),%xmm5 | 3471 movdqu 48(%rdi),%xmm5 |
3471 movdqa %xmm4,%xmm13 | 3472 movdqa %xmm4,%xmm13 |
3472 movdqu 64(%rdi),%xmm6 | 3473 movdqu 64(%rdi),%xmm6 |
3473 movdqa %xmm5,%xmm14 | 3474 movdqa %xmm5,%xmm14 |
3474 movdqu 80(%rdi),%xmm7 | 3475 movdqu 80(%rdi),%xmm7 |
3475 movdqa %xmm6,%xmm15 | 3476 movdqa %xmm6,%xmm15 |
3476 » movl» OPENSSL_ia32cap_P+4(%rip),%r9d | 3477 » movq» OPENSSL_ia32cap_addr(%rip),%r9 |
| 3478 » movl» 4(%r9),%r9d |
3477 cmpq $0x70,%rdx | 3479 cmpq $0x70,%rdx |
3478 jbe .Lcbc_dec_six_or_seven | 3480 jbe .Lcbc_dec_six_or_seven |
3479 | 3481 |
3480 andl $71303168,%r9d | 3482 andl $71303168,%r9d |
3481 subq $0x50,%rdx | 3483 subq $0x50,%rdx |
3482 cmpl $4194304,%r9d | 3484 cmpl $4194304,%r9d |
3483 je .Lcbc_dec_loop6_enter | 3485 je .Lcbc_dec_loop6_enter |
3484 subq $0x20,%rdx | 3486 subq $0x20,%rdx |
3485 leaq 112(%rcx),%rcx | 3487 leaq 112(%rcx),%rcx |
3486 jmp .Lcbc_dec_loop8_enter | 3488 jmp .Lcbc_dec_loop8_enter |
(...skipping 500 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3987 .align 16 | 3989 .align 16 |
3988 aesni_set_encrypt_key: | 3990 aesni_set_encrypt_key: |
3989 __aesni_set_encrypt_key: | 3991 __aesni_set_encrypt_key: |
3990 .byte 0x48,0x83,0xEC,0x08 | 3992 .byte 0x48,0x83,0xEC,0x08 |
3991 movq $-1,%rax | 3993 movq $-1,%rax |
3992 testq %rdi,%rdi | 3994 testq %rdi,%rdi |
3993 jz .Lenc_key_ret | 3995 jz .Lenc_key_ret |
3994 testq %rdx,%rdx | 3996 testq %rdx,%rdx |
3995 jz .Lenc_key_ret | 3997 jz .Lenc_key_ret |
3996 | 3998 |
3997 movl $268437504,%r10d | |
3998 movups (%rdi),%xmm0 | 3999 movups (%rdi),%xmm0 |
3999 xorps %xmm4,%xmm4 | 4000 xorps %xmm4,%xmm4 |
4000 » andl» OPENSSL_ia32cap_P+4(%rip),%r10d | 4001 » movq» OPENSSL_ia32cap_addr(%rip),%r10 |
| 4002 » movl» 4(%r10),%r10d |
| 4003 » andl» $268437504,%r10d |
4001 leaq 16(%rdx),%rax | 4004 leaq 16(%rdx),%rax |
4002 cmpl $256,%esi | 4005 cmpl $256,%esi |
4003 je .L14rounds | 4006 je .L14rounds |
4004 cmpl $192,%esi | 4007 cmpl $192,%esi |
4005 je .L12rounds | 4008 je .L12rounds |
4006 cmpl $128,%esi | 4009 cmpl $128,%esi |
4007 jne .Lbad_keybits | 4010 jne .Lbad_keybits |
4008 | 4011 |
4009 .L10rounds: | 4012 .L10rounds: |
4010 movl $9,%esi | 4013 movl $9,%esi |
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4369 .Lkey_rotate192: | 4372 .Lkey_rotate192: |
4370 .long 0x04070605,0x04070605,0x04070605,0x04070605 | 4373 .long 0x04070605,0x04070605,0x04070605,0x04070605 |
4371 .Lkey_rcon1: | 4374 .Lkey_rcon1: |
4372 .long 1,1,1,1 | 4375 .long 1,1,1,1 |
4373 .Lkey_rcon1b: | 4376 .Lkey_rcon1b: |
4374 .long 0x1b,0x1b,0x1b,0x1b | 4377 .long 0x1b,0x1b,0x1b,0x1b |
4375 | 4378 |
4376 .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 | 4379 .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 |
4377 .align 64 | 4380 .align 64 |
4378 #endif | 4381 #endif |
OLD | NEW |