svn commit: r366596 - head/sys/modules/crypto
Ed Maste
emaste at FreeBSD.org
Sat Oct 10 01:13:15 UTC 2020
Author: emaste
Date: Sat Oct 10 01:13:14 2020
New Revision: 366596
URL: https://svnweb.freebsd.org/changeset/base/366596
Log:
modules/crypto: reenable assembly optimized skein implementation
r366344 corrected the optimized amd64 skein assembly implementation, so
we can now enable it again.
Also add a dependency on this Makefile for the skein_block object, so
that it will be rebuit (similar to r366362).
PR: 248221
Sponsored by: The FreeBSD Foundation
Modified:
head/sys/modules/crypto/Makefile
Modified: head/sys/modules/crypto/Makefile
==============================================================================
--- head/sys/modules/crypto/Makefile Sat Oct 10 00:01:40 2020 (r366595)
+++ head/sys/modules/crypto/Makefile Sat Oct 10 01:13:14 2020 (r366596)
@@ -28,14 +28,18 @@ SRCS += sha1.c sha256c.c sha512c.c
SRCS += skein.c skein_block.c
# unroll the 256 and 512 loops, half unroll the 1024
CFLAGS.skein_block.c += -DSKEIN_LOOP=995
-#.if exists(${MACHINE_ARCH}/skein_block_asm.S)
-#.PATH: ${SRCTOP}/sys/crypto/skein/${MACHINE_ARCH}
-#SRCS += skein_block_asm.S
-#CFLAGS += -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace with assembly: 256+512+1024 = 1792
-#ACFLAGS += -DELF -Wa,--noexecstack
-## Fully unroll all loops in the assembly optimized version
-#ACFLAGS += -DSKEIN_LOOP=0
-#.endif
+.if exists(${MACHINE_ARCH}/skein_block_asm.S)
+.PATH: ${SRCTOP}/sys/crypto/skein/${MACHINE_ARCH}
+SRCS += skein_block_asm.S
+CFLAGS += -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to replace with assembly: 256+512+1024 = 1792
+ACFLAGS += -DELF -Wa,--noexecstack
+# Fully unroll all loops in the assembly optimized version
+ACFLAGS += -DSKEIN_LOOP=0
+# 20201002 Add explict Makefile dependency for reenabled assembly optimized
+# version. SKEIN_USE_ASM determines which routines should come from the assembly
+# vs C versions, and skein_block needs to be rebuilt if it changes.
+skein_block.o: Makefile
+.endif
SRCS += siphash.c
SRCS += gmac.c gfmult.c
SRCS += blake2b-ref.c
More information about the svn-src-all
mailing list