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