Tue Nov 3 08:34:17 2020 UTC ()
The ARM C Language Extenstion document defines __ARCH_ARM as the integer
macro indicating the current ARM instruction set.  Let's use it.

PR/55778: evbarm64 GENERIC64 kernel fails to build with clang

XXX Handle the fact that for an ARM architecture ARMvX.Y then,
XXX __ARM_ARCH= X * 100 + Y. E.g. for ARMv8.1 __ARM_ARCH = 801.


(skrll)
diff -r1.17 -r1.18 src/sys/arch/arm/include/cdefs.h

cvs diff -r1.17 -r1.18 src/sys/arch/arm/include/cdefs.h (expand / switch to context diff)
--- src/sys/arch/arm/include/cdefs.h 2020/10/11 16:22:02 1.17
+++ src/sys/arch/arm/include/cdefs.h 2020/11/03 08:34:17 1.18
@@ -1,4 +1,4 @@
-/*	$NetBSD: cdefs.h,v 1.17 2020/10/11 16:22:02 skrll Exp $	*/
+/*	$NetBSD: cdefs.h,v 1.18 2020/11/03 08:34:17 skrll Exp $	*/
 
 #ifndef	_ARM_CDEFS_H_
 #define	_ARM_CDEFS_H_
@@ -10,7 +10,8 @@
 #endif
 
 
-#if defined (__ARM_ARCH_8A__) || defined (__ARM_ARCH_8A)
+#if defined (__ARM_ARCH_8A__) || defined (__ARM_ARCH_8A) || \
+    __ARM_ARCH == 8
 	/* __ARM_ARCH_8A__ is a typo */
 #define _ARM_ARCH_8
 #endif