On Thu, Oct 1, 2020 at 4:06 PM Ed Maste <ema...@freebsd.org> wrote:
>
> Author: emaste
> Date: Thu Oct  1 21:05:50 2020
> New Revision: 366344
> URL: https://svnweb.freebsd.org/changeset/base/366344
>
> Log:
>   libmd: fix assembly optimized skein implementation
>
>   The assembly implementation incorrectly used logical AND instead of
>   bitwise AND. Fix, and re-enable in libmd.
>
>   Submitted by: Yang Zhong <yzh...@freebsdfoundation.org>
>   Reviewed by:  cem (earlier)
>   Sponsored by: The FreeBSD Foundation
>   Differential Revision:        https://reviews.freebsd.org/D26614
>
> Modified:
>   head/lib/libmd/Makefile
>   head/sys/crypto/skein/amd64/skein_block_asm.S
>
> Modified: head/lib/libmd/Makefile
> ==============================================================================
> --- head/lib/libmd/Makefile     Thu Oct  1 20:08:27 2020        (r366343)
> +++ head/lib/libmd/Makefile     Thu Oct  1 21:05:50 2020        (r366344)
> @@ -116,12 +116,12 @@ CFLAGS+= -DSHA1_ASM
>  SRCS+= rmd160.S
>  CFLAGS+= -DRMD160_ASM
>  .endif
> -#.if exists(${MACHINE_ARCH}/skein_block_asm.S)
> -## Fully unroll all loops in the assembly optimized version
> -#ACFLAGS+= -DSKEIN_LOOP=0
> -#SRCS+= skein_block_asm.S
> -#CFLAGS+= -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to 
> replace with assembly: 256+512+1024 = 1792
> -#.endif
> +.if exists(${MACHINE_ARCH}/skein_block_asm.S)
> +# Fully unroll all loops in the assembly optimized version
> +ACFLAGS+= -DSKEIN_LOOP=0
> +SRCS+= skein_block_asm.S
> +CFLAGS+= -DSKEIN_ASM -DSKEIN_USE_ASM=1792 # list of block functions to 
> replace with assembly: 256+512+1024 = 1792
> +.endif
>  .if exists(${MACHINE_ARCH}/sha.S) || exists(${MACHINE_ARCH}/rmd160.S) || 
> exists(${MACHINE_ARCH}/skein_block_asm.S)
>  ACFLAGS+= -DELF -Wa,--noexecstack
>  .endif
>

We need some kind of magic to walk across this for -DNO_CLEAN builds
-- skein_block.c has no reason to get rebuilt, but we need it to
because we're now defining SKEIN_USE_ASM=1792, which will strip out
some symbols.

I haven't had time to look into what kind of magic we can apply here,
kind of needed to skip ahead to get this build finished for some other
testing.

Thanks,

Kyle Evans
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to