summaryrefslogtreecommitdiff
path: root/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s
diff options
context:
space:
mode:
Diffstat (limited to 'deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s')
-rw-r--r--deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s139
1 files changed, 103 insertions, 36 deletions
diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s
index da5d1b1122..13920e2ace 100644
--- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s
+++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s
@@ -1067,6 +1067,7 @@ L$key_loop:
.p2align 4
_bsaes_cbc_encrypt:
+
cmpl $0,%r9d
jne _asm_AES_cbc_encrypt
cmpq $128,%rdx
@@ -1075,13 +1076,21 @@ _bsaes_cbc_encrypt:
movq %rsp,%rax
L$cbc_dec_prologue:
pushq %rbp
+
pushq %rbx
+
pushq %r12
+
pushq %r13
+
pushq %r14
+
pushq %r15
+
leaq -72(%rsp),%rsp
+
movq %rsp,%rbp
+
movl 240(%rcx),%eax
movq %rdi,%r12
movq %rsi,%r13
@@ -1300,33 +1309,50 @@ L$cbc_dec_bzero:
cmpq %rax,%rbp
ja L$cbc_dec_bzero
- leaq (%rbp),%rsp
- movq 72(%rsp),%r15
- movq 80(%rsp),%r14
- movq 88(%rsp),%r13
- movq 96(%rsp),%r12
- movq 104(%rsp),%rbx
- movq 112(%rsp),%rax
- leaq 120(%rsp),%rsp
- movq %rax,%rbp
+ leaq 120(%rbp),%rax
+
+ movq -48(%rax),%r15
+
+ movq -40(%rax),%r14
+
+ movq -32(%rax),%r13
+
+ movq -24(%rax),%r12
+
+ movq -16(%rax),%rbx
+
+ movq -8(%rax),%rbp
+
+ leaq (%rax),%rsp
+
L$cbc_dec_epilogue:
.byte 0xf3,0xc3
+
.globl _bsaes_ctr32_encrypt_blocks
.p2align 4
_bsaes_ctr32_encrypt_blocks:
+
movq %rsp,%rax
L$ctr_enc_prologue:
pushq %rbp
+
pushq %rbx
+
pushq %r12
+
pushq %r13
+
pushq %r14
+
pushq %r15
+
leaq -72(%rsp),%rsp
+
movq %rsp,%rbp
+
movdqu (%r8),%xmm0
movl 240(%rcx),%eax
movq %rdi,%r12
@@ -1500,32 +1526,49 @@ L$ctr_enc_bzero:
cmpq %rax,%rbp
ja L$ctr_enc_bzero
- leaq (%rbp),%rsp
- movq 72(%rsp),%r15
- movq 80(%rsp),%r14
- movq 88(%rsp),%r13
- movq 96(%rsp),%r12
- movq 104(%rsp),%rbx
- movq 112(%rsp),%rax
- leaq 120(%rsp),%rsp
- movq %rax,%rbp
+ leaq 120(%rbp),%rax
+
+ movq -48(%rax),%r15
+
+ movq -40(%rax),%r14
+
+ movq -32(%rax),%r13
+
+ movq -24(%rax),%r12
+
+ movq -16(%rax),%rbx
+
+ movq -8(%rax),%rbp
+
+ leaq (%rax),%rsp
+
L$ctr_enc_epilogue:
.byte 0xf3,0xc3
+
.globl _bsaes_xts_encrypt
.p2align 4
_bsaes_xts_encrypt:
+
movq %rsp,%rax
L$xts_enc_prologue:
pushq %rbp
+
pushq %rbx
+
pushq %r12
+
pushq %r13
+
pushq %r14
+
pushq %r15
+
leaq -72(%rsp),%rsp
+
movq %rsp,%rbp
+
movq %rdi,%r12
movq %rsi,%r13
movq %rdx,%r14
@@ -1951,32 +1994,48 @@ L$xts_enc_bzero:
cmpq %rax,%rbp
ja L$xts_enc_bzero
- leaq (%rbp),%rsp
- movq 72(%rsp),%r15
- movq 80(%rsp),%r14
- movq 88(%rsp),%r13
- movq 96(%rsp),%r12
- movq 104(%rsp),%rbx
- movq 112(%rsp),%rax
- leaq 120(%rsp),%rsp
- movq %rax,%rbp
+ leaq 120(%rbp),%rax
+
+ movq -48(%rax),%r15
+
+ movq -40(%rax),%r14
+
+ movq -32(%rax),%r13
+
+ movq -24(%rax),%r12
+
+ movq -16(%rax),%rbx
+
+ movq -8(%rax),%rbp
+
+ leaq (%rax),%rsp
+
L$xts_enc_epilogue:
.byte 0xf3,0xc3
+
.globl _bsaes_xts_decrypt
.p2align 4
_bsaes_xts_decrypt:
+
movq %rsp,%rax
L$xts_dec_prologue:
pushq %rbp
+
pushq %rbx
+
pushq %r12
+
pushq %r13
+
pushq %r14
+
pushq %r15
+
leaq -72(%rsp),%rsp
+
movq %rsp,%rbp
movq %rdi,%r12
movq %rsi,%r13
@@ -2429,19 +2488,27 @@ L$xts_dec_bzero:
cmpq %rax,%rbp
ja L$xts_dec_bzero
- leaq (%rbp),%rsp
- movq 72(%rsp),%r15
- movq 80(%rsp),%r14
- movq 88(%rsp),%r13
- movq 96(%rsp),%r12
- movq 104(%rsp),%rbx
- movq 112(%rsp),%rax
- leaq 120(%rsp),%rsp
- movq %rax,%rbp
+ leaq 120(%rbp),%rax
+
+ movq -48(%rax),%r15
+
+ movq -40(%rax),%r14
+
+ movq -32(%rax),%r13
+
+ movq -24(%rax),%r12
+
+ movq -16(%rax),%rbx
+
+ movq -8(%rax),%rbp
+
+ leaq (%rax),%rsp
+
L$xts_dec_epilogue:
.byte 0xf3,0xc3
+
.p2align 6
_bsaes_const:
L$M0ISR: