You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by pk...@apache.org on 2023/01/10 12:58:41 UTC
[nuttx] branch master updated: libc: don't redefined __ARM_ARCH_XXX when __ARM_ARCH defined
This is an automated email from the ASF dual-hosted git repository.
pkarashchenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new e34f79aa28 libc: don't redefined __ARM_ARCH_XXX when __ARM_ARCH defined
e34f79aa28 is described below
commit e34f79aa28e730dde6338ceec0c93bd0cb25dbec
Author: zhangyuan21 <zh...@xiaomi.com>
AuthorDate: Tue Jan 10 17:30:22 2023 +0800
libc: don't redefined __ARM_ARCH_XXX when __ARM_ARCH defined
Signed-off-by: zhangyuan21 <zh...@xiaomi.com>
---
libs/libc/machine/arm/armv7-a/gnu/acle-compat.h | 238 ++++++++++++------------
libs/libc/machine/arm/armv7-m/gnu/acle-compat.h | 238 ++++++++++++------------
libs/libc/machine/arm/armv7-r/gnu/acle-compat.h | 238 ++++++++++++------------
3 files changed, 351 insertions(+), 363 deletions(-)
diff --git a/libs/libc/machine/arm/armv7-a/gnu/acle-compat.h b/libs/libc/machine/arm/armv7-a/gnu/acle-compat.h
index 7b52661e95..04e43cf12a 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/acle-compat.h
+++ b/libs/libc/machine/arm/armv7-a/gnu/acle-compat.h
@@ -31,6 +31,8 @@
#ifndef __LIBS_LIBC_MACHINE_ARM_ARMV7A_GNU_ACLE_COMPAT_H
#define __LIBS_LIBC_MACHINE_ARM_ARMV7A_GNU_ACLE_COMPAT_H
+#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
@@ -41,147 +43,141 @@
/* No need to handle ARMv8, GCC had ACLE support before that. */
-#ifdef __ARM_ARCH_7__
+# 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'
+# define __ARM_ARCH 7
+# define __ARM_ARCH_ISA_THUMB 2
+# define __ARM_FEATURE_CLZ
+# define __ARM_FEATURE_LDREX 7
+# define __ARM_FEATURE_UNALIGNED
# 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
+# 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_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_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_6M__
-# define __ARM_ARCH 6
-# define __ARM_ARCH_ISA_THUMB 1
-# 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
-#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
+# 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
-#endif
-#if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__)
-# define __ARM_ARCH 5
-# define __ARM_ARCH_ISA_ARM
-# ifdef __ARM_ARCH_5TE__
+# ifdef __ARM_ARCH_6M__
+# define __ARM_ARCH 6
# define __ARM_ARCH_ISA_THUMB 1
+# define __ARM_ARCH_PROFILE 'M'
# 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__
+# 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
-# 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
+# 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
-#ifdef __ARM_ARCH_4__
-# define __ARM_ARCH 4
-# define __ARM_ARCH_ISA_ARM
-#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
-#if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
-# define __ARM_ARCH 3
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4T__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# define __ARM_ARCH_ISA_THUMB 1
+# endif
-#ifdef __ARM_ARCH_2__
-# define __ARM_ARCH 2
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# endif
-#ifdef __ARMEB__
-# define __ARM_BIG_ENDIAN
-#endif
+# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
+# define __ARM_ARCH 3
+# define __ARM_ARCH_ISA_ARM
+# endif
-/* If we still don't know what the target architecture is, then we're
- * probably not using GCC.
- */
+# ifdef __ARM_ARCH_2__
+# define __ARM_ARCH 2
+# define __ARM_ARCH_ISA_ARM
+# endif
+
+# ifdef __ARMEB__
+# define __ARM_BIG_ENDIAN
+# endif
-#ifndef __ARM_ARCH
-# error Unable to determine architecture version.
#endif
#endif /* __LIBS_LIBC_MACHINE_ARM_ARMV7A_GNU_ACLE_COMPAT_H */
diff --git a/libs/libc/machine/arm/armv7-m/gnu/acle-compat.h b/libs/libc/machine/arm/armv7-m/gnu/acle-compat.h
index 253361fe07..b035c9c2a2 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/acle-compat.h
+++ b/libs/libc/machine/arm/armv7-m/gnu/acle-compat.h
@@ -31,6 +31,8 @@
#ifndef __LIBS_LIBC_MACHINE_ARM_ARMV7M_GNU_ACLE_COMPAT_H
#define __LIBS_LIBC_MACHINE_ARM_ARMV7M_GNU_ACLE_COMPAT_H
+#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
@@ -41,147 +43,141 @@
/* No need to handle ARMv8, GCC had ACLE support before that. */
-#ifdef __ARM_ARCH_7__
+# 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'
+# define __ARM_ARCH 7
+# define __ARM_ARCH_ISA_THUMB 2
+# define __ARM_FEATURE_CLZ
+# define __ARM_FEATURE_LDREX 7
+# define __ARM_FEATURE_UNALIGNED
# 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
+# 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_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_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_6M__
-# define __ARM_ARCH 6
-# define __ARM_ARCH_ISA_THUMB 1
-# 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
-#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
+# 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
-#endif
-#if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__)
-# define __ARM_ARCH 5
-# define __ARM_ARCH_ISA_ARM
-# ifdef __ARM_ARCH_5TE__
+# ifdef __ARM_ARCH_6M__
+# define __ARM_ARCH 6
# define __ARM_ARCH_ISA_THUMB 1
+# define __ARM_ARCH_PROFILE 'M'
# 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__
+# 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
-# 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
+# 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
-#ifdef __ARM_ARCH_4__
-# define __ARM_ARCH 4
-# define __ARM_ARCH_ISA_ARM
-#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
-#if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
-# define __ARM_ARCH 3
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4T__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# define __ARM_ARCH_ISA_THUMB 1
+# endif
-#ifdef __ARM_ARCH_2__
-# define __ARM_ARCH 2
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# endif
-#ifdef __ARMEB__
-# define __ARM_BIG_ENDIAN
-#endif
+# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
+# define __ARM_ARCH 3
+# define __ARM_ARCH_ISA_ARM
+# endif
-/* If we still don't know what the target architecture is, then we're
- * probably not using GCC.
- */
+# ifdef __ARM_ARCH_2__
+# define __ARM_ARCH 2
+# define __ARM_ARCH_ISA_ARM
+# endif
+
+# ifdef __ARMEB__
+# define __ARM_BIG_ENDIAN
+# endif
-#ifndef __ARM_ARCH
-# error Unable to determine architecture version.
#endif
#endif /* __LIBS_LIBC_MACHINE_ARM_ARMV7M_GNU_ACLE_COMPAT_H */
diff --git a/libs/libc/machine/arm/armv7-r/gnu/acle-compat.h b/libs/libc/machine/arm/armv7-r/gnu/acle-compat.h
index b269933602..f37c67f703 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/acle-compat.h
+++ b/libs/libc/machine/arm/armv7-r/gnu/acle-compat.h
@@ -31,6 +31,8 @@
#ifndef __LIBS_LIBC_MACHINE_ARM_ARMV7R_GNU_ACLE_COMPAT_H
#define __LIBS_LIBC_MACHINE_ARM_ARMV7R_GNU_ACLE_COMPAT_H
+#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
@@ -41,147 +43,141 @@
/* No need to handle ARMv8, GCC had ACLE support before that. */
-#ifdef __ARM_ARCH_7__
+# 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'
+# define __ARM_ARCH 7
+# define __ARM_ARCH_ISA_THUMB 2
+# define __ARM_FEATURE_CLZ
+# define __ARM_FEATURE_LDREX 7
+# define __ARM_FEATURE_UNALIGNED
# 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
+# 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_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_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_6M__
-# define __ARM_ARCH 6
-# define __ARM_ARCH_ISA_THUMB 1
-# 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
-#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
+# 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
-#endif
-#if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__)
-# define __ARM_ARCH 5
-# define __ARM_ARCH_ISA_ARM
-# ifdef __ARM_ARCH_5TE__
+# ifdef __ARM_ARCH_6M__
+# define __ARM_ARCH 6
# define __ARM_ARCH_ISA_THUMB 1
+# define __ARM_ARCH_PROFILE 'M'
# 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__
+# 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
-# 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
+# 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
-#ifdef __ARM_ARCH_4__
-# define __ARM_ARCH 4
-# define __ARM_ARCH_ISA_ARM
-#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
-#if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
-# define __ARM_ARCH 3
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4T__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# define __ARM_ARCH_ISA_THUMB 1
+# endif
-#ifdef __ARM_ARCH_2__
-# define __ARM_ARCH 2
-# define __ARM_ARCH_ISA_ARM
-#endif
+# ifdef __ARM_ARCH_4__
+# define __ARM_ARCH 4
+# define __ARM_ARCH_ISA_ARM
+# endif
-#ifdef __ARMEB__
-# define __ARM_BIG_ENDIAN
-#endif
+# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
+# define __ARM_ARCH 3
+# define __ARM_ARCH_ISA_ARM
+# endif
-/* If we still don't know what the target architecture is, then we're
- * probably not using GCC.
- */
+# ifdef __ARM_ARCH_2__
+# define __ARM_ARCH 2
+# define __ARM_ARCH_ISA_ARM
+# endif
+
+# ifdef __ARMEB__
+# define __ARM_BIG_ENDIAN
+# endif
-#ifndef __ARM_ARCH
-# error Unable to determine architecture version.
#endif
#endif /* __LIBS_LIBC_MACHINE_ARM_ARMV7R_GNU_ACLE_COMPAT_H */