git: 5afc347944e7 - main - arm: Start to remove the now unneeded acle-compat.h

From: Andrew Turner <andrew_at_FreeBSD.org>
Date: Wed, 26 Jun 2024 08:53:15 UTC
The branch main has been updated by andrew:

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

commit 5afc347944e760774797b3275124591d69228fc1
Author:     Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2024-06-25 08:59:42 +0000
Commit:     Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2024-06-26 08:52:08 +0000

    arm: Start to remove the now unneeded acle-compat.h
    
    All supported compilers provide the acle macros so we don't need the
    backup versions.
    
    Keep the file around for anything that included it directly, but make
    it an error to not support the acle macros.
    
    Reviewed by:    imp
    Sponsored by:   Arm Ltd
    Differential Revision:  https://reviews.freebsd.org/D45726
---
 sys/arm/include/acle-compat.h | 158 +-----------------------------------------
 1 file changed, 3 insertions(+), 155 deletions(-)

diff --git a/sys/arm/include/acle-compat.h b/sys/arm/include/acle-compat.h
index 0d5726b7846c..6ab48ac16669 100644
--- a/sys/arm/include/acle-compat.h
+++ b/sys/arm/include/acle-compat.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014 ARM Ltd
+ * Copyright (c) 2024 Arm Ltd
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -27,157 +27,5 @@
  */
 
 #ifndef __ARM_ARCH
-
-/* ACLE standardises a set of pre-defines that describe the ARM architecture.
-   These were mostly implemented in GCC around GCC-4.8; older versions
-   have no, or only partial support.  To provide a level of backwards
-   compatibility we try to work out what the definitions should be, given
-   the older pre-defines that GCC did produce.  This isn't complete, but
-   it should be enough for use by routines that depend on this header.  */
-
-/* No need to handle ARMv8, GCC had ACLE support before that.  */
-
-#define __ARM_ACLE 101
-
-# ifdef __ARM_ARCH_7__
-/* The common subset of ARMv7 in all profiles.  */
-#  define __ARM_ARCH 7
-#  define __ARM_ARCH_ISA_THUMB 2
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_LDREX 7
-#  define __ARM_FEATURE_UNALIGNED
-# endif
-
-# if defined (__ARM_ARCH_7A__) || defined (__ARM_ARCH_7R__)
-#  define __ARM_ARCH 7
-#  define __ARM_ARCH_ISA_THUMB 2
-#  define __ARM_ARCH_ISA_ARM
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_SIMD32
-#  define __ARM_FEATURE_DSP
-#  define __ARM_FEATURE_QBIT
-#  define __ARM_FEATURE_SAT
-#  define __ARM_FEATURE_LDREX 15
-#  define __ARM_FEATURE_UNALIGNED
-#  ifdef __ARM_ARCH_7A__
-#   define __ARM_ARCH_PROFILE 'A'
-#  else
-#   define __ARM_ARCH_PROFILE 'R'
-#  endif
-# endif
-
-# ifdef __ARM_ARCH_7EM__
-#  define __ARM_ARCH 7
-#  define __ARM_ARCH_ISA_THUMB 2
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_SIMD32
-#  define __ARM_FEATURE_DSP
-#  define __ARM_FEATURE_QBIT
-#  define __ARM_FEATURE_SAT
-#  define __ARM_FEATURE_LDREX 7
-#  define __ARM_FEATURE_UNALIGNED
-#  define __ARM_ARCH_PROFILE 'M'
-# endif
-
-# ifdef __ARM_ARCH_7M__
-#  define __ARM_ARCH 7
-#  define __ARM_ARCH_ISA_THUMB 2
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_QBIT
-#  define __ARM_FEATURE_SAT
-#  define __ARM_FEATURE_LDREX 7
-#  define __ARM_FEATURE_UNALIGNED
-#  define __ARM_ARCH_PROFILE 'M'
-# endif
-
-# ifdef __ARM_ARCH_6T2__
-#  define __ARM_ARCH 6
-#  define __ARM_ARCH_ISA_THUMB 2
-#  define __ARM_ARCH_ISA_ARM
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_SIMD32
-#  define __ARM_FEATURE_DSP
-#  define __ARM_FEATURE_QBIT
-#  define __ARM_FEATURE_SAT
-#  define __ARM_FEATURE_LDREX 4
-#  define __ARM_FEATURE_UNALIGNED
-# endif
-
-# ifdef __ARM_ARCH_6M__
-#  define __ARM_ARCH 6
-#  define __ARM_ARCH_ISA_THUMB 1
-#  define __ARM_ARCH_PROFILE 'M'
-# endif
-
-# if defined (__ARM_ARCH_6__) || defined (__ARM_ARCH_6J__) \
-  || defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6Z__) \
-  || defined (__ARM_ARCH_6ZK__)
-#  define __ARM_ARCH 6
-#  define __ARM_ARCH_ISA_THUMB 1
-#  define __ARM_ARCH_ISA_ARM
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_SIMD32
-#  define __ARM_FEATURE_DSP
-#  define __ARM_FEATURE_QBIT
-#  define __ARM_FEATURE_SAT
-#  define __ARM_FEATURE_UNALIGNED
-#  ifndef __thumb__
-#   if defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6ZK__)
-#    define __ARM_FEATURE_LDREX 15
-#   else
-#    define __ARM_FEATURE_LDREX 4
-#   endif
-#  endif
-# endif
-
-# if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__)
-#  define __ARM_ARCH 5
-#  define __ARM_ARCH_ISA_ARM
-#  ifdef __ARM_ARCH_5TE__
-#   define __ARM_ARCH_ISA_THUMB 1
-#  endif
-#  define __ARM_FEATURE_CLZ
-#  define __ARM_FEATURE_DSP
-# endif
-
-# if defined (__ARM_ARCH_5T__) || defined (__ARM_ARCH_5__)
-#  define __ARM_ARCH 5
-#  define __ARM_ARCH_ISA_ARM
-#  ifdef __ARM_ARCH_5TE__
-#   define __ARM_ARCH_ISA_THUMB 1
-#  endif
-#  define __ARM_FEATURE_CLZ
-# endif
-
-# ifdef __ARM_ARCH_4T__
-#  define __ARM_ARCH 4
-#  define __ARM_ARCH_ISA_ARM
-#  define __ARM_ARCH_ISA_THUMB 1
-# endif
-
-# ifdef __ARM_ARCH_4__
-#  define __ARM_ARCH 4
-#  define __ARM_ARCH_ISA_ARM
-# endif
-
-# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
-#  define __ARM_ARCH 3
-#  define __ARM_ARCH_ISA_ARM
-# endif
-
-# ifdef __ARM_ARCH_2__
-#  define __ARM_ARCH 2
-#  define __ARM_ARCH_ISA_ARM
-# endif
-
-# ifdef __ARMEB__
-#  define __ARM_BIG_ENDIAN
-# endif
-
-/* If we still don't know what the target architecture is, then we're
-   probably not using GCC.  */
-# ifndef __ARM_ARCH
-#  error Unable to determine architecture version.
-# endif
-
-#endif /* __ARM_ARCH  */
+#error Your compiler is too old
+#endif