summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/arch
diff options
context:
space:
mode:
authorjsing <>2024-11-16 14:56:39 +0000
committerjsing <>2024-11-16 14:56:39 +0000
commit8e55140e006194dd39836fcc054babaf7f7e6c5d (patch)
tree440bdcfa47dd4c46b50b948e6099723d92a1e59b /src/lib/libcrypto/arch
parentfe7294a5c93bf90f080d28c3a7684b6e91757a35 (diff)
downloadopenbsd-8e55140e006194dd39836fcc054babaf7f7e6c5d.tar.gz
openbsd-8e55140e006194dd39836fcc054babaf7f7e6c5d.tar.bz2
openbsd-8e55140e006194dd39836fcc054babaf7f7e6c5d.zip
Provide a replacement assembly implementation for SHA-512 on amd64.
Replace the perlasm generated SHA-512 assembly with a more readable version and the same C wrapper introduced for SHA-256. As for SHA-256, on a modern CPU the performance is largely the same. ok tb@
Diffstat (limited to 'src/lib/libcrypto/arch')
-rw-r--r--src/lib/libcrypto/arch/amd64/Makefile.inc9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/lib/libcrypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/arch/amd64/Makefile.inc
index 07fcf46ed5..9ba5634f87 100644
--- a/src/lib/libcrypto/arch/amd64/Makefile.inc
+++ b/src/lib/libcrypto/arch/amd64/Makefile.inc
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile.inc,v 1.31 2024/11/08 15:09:48 jsing Exp $ 1# $OpenBSD: Makefile.inc,v 1.32 2024/11/16 14:56:39 jsing Exp $
2 2
3# amd64-specific libcrypto build rules 3# amd64-specific libcrypto build rules
4 4
@@ -54,11 +54,8 @@ CFLAGS+= -DSHA256_ASM
54SRCS+= sha256_amd64.c 54SRCS+= sha256_amd64.c
55SRCS+= sha256_amd64_generic.S 55SRCS+= sha256_amd64_generic.S
56CFLAGS+= -DSHA512_ASM 56CFLAGS+= -DSHA512_ASM
57SRCS+= sha512-x86_64.S 57SRCS+= sha512_amd64.c
58GENERATED+= sha512-x86_64.S 58SRCS+= sha512_amd64_generic.S
59sha512-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl ${EXTRA_PL}
60 cd ${LCRYPTO_SRC}/sha/asm ; \
61 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
62 59
63.for dir f in ${SSLASM} 60.for dir f in ${SSLASM}
64SRCS+= ${f}.S 61SRCS+= ${f}.S