summaryrefslogtreecommitdiffhomepage
path: root/src/crypto
diff options
context:
space:
mode:
authorSamuel Neves <sneves@dei.uc.pt>2018-08-28 09:55:51 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2018-08-28 23:20:37 -0600
commit6e7ac1351e42ecb6ca9cef597a9eaddfadd967aa (patch)
treee8ffe6f746ff58d3eca5aff4c4656e83fe2ebe0e /src/crypto
parent3182e7d5d0cffdb473b95cd01cfa82e798625269 (diff)
curve25519-arm: use ordinary prolog and epilogue
Signed-off-by: Samuel Neves <sneves@dei.uc.pt> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'src/crypto')
-rw-r--r--src/crypto/curve25519-arm.S24
1 files changed, 6 insertions, 18 deletions
diff --git a/src/crypto/curve25519-arm.S b/src/crypto/curve25519-arm.S
index 923241d..5a5a919 100644
--- a/src/crypto/curve25519-arm.S
+++ b/src/crypto/curve25519-arm.S
@@ -16,16 +16,10 @@
.align 4
ENTRY(curve25519_neon)
- mov r12, sp
- sub r3, sp, #736
- and r3, r3, #0xfffffff0
- mov sp, r3
- strd r4, [sp, #0]
- strd r6, [sp, #8]
- strd r8, [sp, #16]
- strd r10, [sp, #24]
- str r12, [sp, #480]
- str r14, [sp, #484]
+ push {r4-r11, lr}
+ mov ip, sp
+ sub sp, sp, #736
+ and sp, sp, #0xfffffff0
add r3, sp, #32
movw r4, 0
movw r5, 254
@@ -2094,14 +2088,8 @@ ENTRY(curve25519_neon)
str r7, [r0, #20]
str r8, [r0, #24]
str r1, [r0, #28]
- ldrd r4, [sp, #0]
- ldrd r6, [sp, #8]
- ldrd r8, [sp, #16]
- ldrd r10, [sp, #24]
- ldr r12, [sp, #480]
- ldr r14, [sp, #484]
movw r0, 0
- mov sp, r12
- bx lr
+ mov sp, ip
+ pop {r4-r11, pc}
ENDPROC(curve25519_neon)
#endif