git: c7c33b213a8a - stable/14 - Fix arm64 build after llvm 18.1.3 upgrade

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Sat, 20 Apr 2024 10:32:40 UTC
The branch stable/14 has been updated by dim:

URL: https://cgit.FreeBSD.org/src/commit/?id=c7c33b213a8a7f3203015809def9ae25fa77d8d1

commit c7c33b213a8a7f3203015809def9ae25fa77d8d1
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-04-07 00:07:38 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-04-20 10:03:24 +0000

    Fix arm64 build after llvm 18.1.3 upgrade
    
    Apparently clang 18 has become more strict about using floating point
    registers in inline assembly when -mgeneral-regs-only is used. This
    causes sys/arm64/arm64/vfp.c to fail to compile, with "error:
    instruction requires: fp-armv8", and "error: expected readable system
    register".
    
    To fix it, similar to other files compiled for arm64, disable
    -mgeneral-regs-only for this particular file.
    
    PR:             276104
    MFC after:      1 month
    
    (cherry picked from commit f4d93b67611f6f8b19db7bac6b0973b2ef0cfcb6)
---
 sys/conf/files.arm64 | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64
index 218571d0e23a..b142999ec659 100644
--- a/sys/conf/files.arm64
+++ b/sys/conf/files.arm64
@@ -82,7 +82,8 @@ arm64/arm64/uma_machdep.c			standard
 arm64/arm64/undefined.c				standard
 arm64/arm64/unwind.c				optional ddb | kdtrace_hooks | stack \
 	compile-with "${NORMAL_C:N-fsanitize*}"
-arm64/arm64/vfp.c				standard
+arm64/arm64/vfp.c				standard \
+	compile-with "${NORMAL_C:N-mgeneral-regs-only}"
 arm64/arm64/vm_machdep.c			standard
 
 arm64/coresight/coresight.c			standard