Index | Thread | Search

From:
Brad Smith <brad@comstyle.com>
Subject:
Re: Missing ARM SVE header
To:
Mark Kettenis <mark.kettenis@xs4all.nl>, robert@openbsd.org
Cc:
tech@openbsd.org, kettenis@openbsd.org
Date:
Fri, 21 Mar 2025 23:26:34 -0400

Download raw body.

Thread
On 2025-03-20 5:37 p.m., Mark Kettenis wrote:
>> 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 have been able to.

arm64# pwd
/dest/base/destdir/usr/lib/clang/16/include
arm64# ls -la
total 12320
drwxr-xr-x  2 root  bin      512 Mar 21 22:01 .
drwxr-xr-x  4 root  bin      512 Mar 21 22:01 ..
-r--r--r--  1 root  bin    26203 Mar 21 22:01 arm_acle.h
-r--r--r--  1 root  bin      548 Mar 21 22:01 arm_bf16.h
-r--r--r--  1 root  bin    33450 Mar 21 22:01 arm_cde.h
-r--r--r--  1 root  bin     6357 Mar 21 22:01 arm_cmse.h
-r--r--r--  1 root  bin    17325 Mar 21 22:01 arm_fp16.h
-r--r--r--  1 root  bin  1554929 Mar 21 22:01 arm_mve.h
-r--r--r--  1 root  bin  2567990 Mar 21 22:01 arm_neon.h
-r--r--r--  1 root  bin     9708 Mar 21 22:01 arm_neon_sve_bridge.h
-r--r--r--  1 root  bin  1584758 Mar 21 22:01 arm_sve.h
-r--r--r--  1 root  bin    28895 Mar 21 22:01 intrin.h
-r--r--r--  1 root  bin     3414 Mar 21 22:01 module.modulemap
-r--r--r--  1 root  bin      583 Mar 21 22:01 stdalign.h
-r--r--r--  1 root  bin     8077 Mar 21 22:01 stdatomic.h
-r--r--r--  1 root  bin     1197 Mar 21 22:01 stdnoreturn.h
-r--r--r--  1 root  bin    30389 Mar 21 22:01 tgmath.h
-r--r--r--  1 root  bin    11477 Mar 21 22:01 unwind.h
-r--r--r--  1 root  bin     1420 Mar 21 22:01 vadefs.h
-r--r--r--  1 root  bin      477 Mar 21 22:01 varargs.h
arm64# pwd
/dest/base/destdir/usr/lib/clang/16/include
arm64# ls -la /dest/base/release/
total 1050352
drwxr-xr-x  2 root   wheel        512 Mar 21 23:20 .
drwxr-xr-x  4 root   wheel        512 Mar 21 21:57 ..
-r-xr-xr-x  1 root   bin       233644 Mar 21 22:48 BOOTAA64.EFI
-rw-r--r--  1 build  wheel         54 Mar 21 23:20 BUILDINFO
-rw-r--r--  1 root   wheel      41786 Mar 21 23:20 INSTALL.arm64
-rw-r--r--  1 build  wheel       1034 Mar 21 23:20 SHA256
-rw-r--r--  1 build  wheel  352529050 Mar 21 23:19 base77.tgz
-rwxr-xr-x  1 build  wheel   18749117 Mar 21 23:17 bsd
-rwxr-xr-x  1 build  wheel   18849519 Mar 21 23:17 bsd.mp
-rwxr-xr-x  1 root   wheel   18451446 Mar 21 23:20 bsd.rd
-rw-r--r--  1 root   wheel   21471232 Mar 21 23:20 cd77.iso
-rw-r--r--  1 build  wheel   80646071 Mar 21 23:19 comp77.tgz
-rw-r--r--  1 build  wheel    2816842 Mar 21 23:19 game77.tgz
-rw-r--r--  1 build  wheel    8482831 Mar 21 23:20 man77.tgz
-rw-r--r--  1 root   wheel   45088768 Mar 21 23:20 miniroot77.img


>> 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
>>
>>