summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/aes/asm/aes-x86_64.pl
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/aes/asm/aes-x86_64.pl')
-rwxr-xr-xsrc/lib/libcrypto/aes/asm/aes-x86_64.pl6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/lib/libcrypto/aes/asm/aes-x86_64.pl b/src/lib/libcrypto/aes/asm/aes-x86_64.pl
index f75e90ba87..c37fd55648 100755
--- a/src/lib/libcrypto/aes/asm/aes-x86_64.pl
+++ b/src/lib/libcrypto/aes/asm/aes-x86_64.pl
@@ -1655,6 +1655,7 @@ $code.=<<___;
1655.type AES_cbc_encrypt,\@function,6 1655.type AES_cbc_encrypt,\@function,6
1656.align 16 1656.align 16
1657.extern OPENSSL_ia32cap_P 1657.extern OPENSSL_ia32cap_P
1658.hidden OPENSSL_ia32cap_P
1658.globl asm_AES_cbc_encrypt 1659.globl asm_AES_cbc_encrypt
1659.hidden asm_AES_cbc_encrypt 1660.hidden asm_AES_cbc_encrypt
1660asm_AES_cbc_encrypt: 1661asm_AES_cbc_encrypt:
@@ -1684,7 +1685,7 @@ AES_cbc_encrypt:
1684 jb .Lcbc_slow_prologue 1685 jb .Lcbc_slow_prologue
1685 test \$15,%rdx 1686 test \$15,%rdx
1686 jnz .Lcbc_slow_prologue 1687 jnz .Lcbc_slow_prologue
1687 bt \$28,%r10d 1688 bt \$IA32CAP_BIT0_HT,%r10d
1688 jc .Lcbc_slow_prologue 1689 jc .Lcbc_slow_prologue
1689 1690
1690 # allocate aligned stack frame... 1691 # allocate aligned stack frame...
@@ -1944,7 +1945,7 @@ AES_cbc_encrypt:
1944 lea ($key,%rax),%rax 1945 lea ($key,%rax),%rax
1945 mov %rax,$keyend 1946 mov %rax,$keyend
1946 1947
1947 # pick Te4 copy which can't "overlap" with stack frame or key scdedule 1948 # pick Te4 copy which can't "overlap" with stack frame or key schedule
1948 lea 2048($sbox),$sbox 1949 lea 2048($sbox),$sbox
1949 lea 768-8(%rsp),%rax 1950 lea 768-8(%rsp),%rax
1950 sub $sbox,%rax 1951 sub $sbox,%rax
@@ -2814,6 +2815,7 @@ ___
2814 2815
2815$code =~ s/\`([^\`]*)\`/eval($1)/gem; 2816$code =~ s/\`([^\`]*)\`/eval($1)/gem;
2816 2817
2818print "#include \"x86_arch.h\"\n";
2817print $code; 2819print $code;
2818 2820
2819close STDOUT; 2821close STDOUT;