Index | Thread | Search

From:
Mark Kettenis <mark.kettenis@xs4all.nl>
Subject:
Re: Missing ARM SVE header
To:
Brad Smith <brad@comstyle.com>, robert@openbsd.org
Cc:
tech@openbsd.org, kettenis@openbsd.org
Date:
Thu, 20 Mar 2025 22:37:52 +0100

Download raw body.

Thread
> Date: Sun, 9 Mar 2025 17:59:12 -0400
> From: Brad Smith <brad@comstyle.com>
> 
> I have not run this through a build yet but I believe this is what
> is necessary.

Did you manage to run this through a build?

> I was wondering why a projects compiler checks were failing for SVE but the
> commit message gave me a clue and sure enough our local build bits were
> missing installing the header once we jumped past the 14 release. Copying
> the header from the port resolved the issue.

Diff looks good to me.  Don't think there is a huge risk of this
breaking stuff in ports.  But it would be good to have another ok.

> Index: gnu/usr.bin/clang/include/clang/intrin/Makefile
> ===================================================================
> RCS file: /cvs/src/gnu/usr.bin/clang/include/clang/intrin/Makefile,v
> retrieving revision 1.27
> diff -u -p -u -p -r1.27 Makefile
> --- gnu/usr.bin/clang/include/clang/intrin/Makefile	17 Dec 2024 13:22:38 -0000	1.27
> +++ gnu/usr.bin/clang/include/clang/intrin/Makefile	9 Mar 2025 21:43:32 -0000
> @@ -29,6 +29,9 @@ GEN+=		arm_bf16.h
>  GEN+=		arm_mve.h
>  GEN+=		arm_cde.h
>  HEADERS+=	arm_acle.h arm_cmse.h ${GEN}
> +.if ${MACHINE_ARCH} == "aarch64"
> +HEADERS+=	arm_neon_sve_bridge.h
> +.endif
>  .elif ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
>  HEADERS+=	__wmmintrin_aes.h \
>  		__wmmintrin_pclmul.h \
> Index: distrib/sets/lists/comp/clang.arm64
> ===================================================================
> RCS file: /cvs/src/distrib/sets/lists/comp/clang.arm64,v
> retrieving revision 1.43
> diff -u -p -u -p -r1.43 clang.arm64
> --- distrib/sets/lists/comp/clang.arm64	27 Jan 2024 00:12:34 -0000	1.43
> +++ distrib/sets/lists/comp/clang.arm64	9 Mar 2025 21:43:32 -0000
> @@ -2881,6 +2881,7 @@
>  ./usr/lib/clang/16/include/arm_fp16.h
>  ./usr/lib/clang/16/include/arm_mve.h
>  ./usr/lib/clang/16/include/arm_neon.h
> +./usr/lib/clang/16/include/arm_neon_sve_bridge.h
>  ./usr/lib/clang/16/include/arm_sve.h
>  ./usr/lib/clang/16/include/intrin.h
>  ./usr/lib/clang/16/include/module.modulemap
> 
>