Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Oct 2020 01:13:15 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r366596 - head/sys/modules/crypto
Message-ID:  <202010100113.09A1DFUN018923@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202010100113.09A1DFUN018923>