summaryrefslogtreecommitdiff
path: root/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s
diff options
context:
space:
mode:
Diffstat (limited to 'deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s')
-rw-r--r--deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s24
1 files changed, 22 insertions, 2 deletions
diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s
index af1ffdd59b..4137d5990a 100644
--- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s
+++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s
@@ -3,7 +3,9 @@
.p2align 4
_mul_1x1:
+
subq $128+8,%rsp
+
movq $-1,%r9
leaq (%rax,%rax,1),%rsi
shrq $3,%r9
@@ -193,16 +195,20 @@ _mul_1x1:
xorq %rdi,%rdx
addq $128+8,%rsp
+
.byte 0xf3,0xc3
L$end_mul_1x1:
+
.globl _bn_GF2m_mul_2x2
.p2align 4
_bn_GF2m_mul_2x2:
- movq _OPENSSL_ia32cap_P(%rip),%rax
- btq $33,%rax
+
+ movq %rsp,%rax
+ movq _OPENSSL_ia32cap_P(%rip),%r10
+ btq $33,%r10
jnc L$vanilla_mul_2x2
.byte 102,72,15,110,198
@@ -230,11 +236,17 @@ _bn_GF2m_mul_2x2:
.p2align 4
L$vanilla_mul_2x2:
leaq -136(%rsp),%rsp
+
movq %r14,80(%rsp)
+
movq %r13,88(%rsp)
+
movq %r12,96(%rsp)
+
movq %rbp,104(%rsp)
+
movq %rbx,112(%rsp)
+
L$body_mul_2x2:
movq %rdi,32(%rsp)
movq %rsi,40(%rsp)
@@ -279,13 +291,21 @@ L$body_mul_2x2:
movq %rax,8(%rbp)
movq 80(%rsp),%r14
+
movq 88(%rsp),%r13
+
movq 96(%rsp),%r12
+
movq 104(%rsp),%rbp
+
movq 112(%rsp),%rbx
+
leaq 136(%rsp),%rsp
+
+L$epilogue_mul_2x2:
.byte 0xf3,0xc3
L$end_mul_2x2:
+
.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,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
.p2align 4