From 8638b7ee92c5bad04f724b056efb47e390b2ad8c Mon Sep 17 00:00:00 2001 From: notaz Date: Fri, 1 Apr 2016 01:16:56 +0300 Subject: [PATCH] use __ARM_ARCH --- include/arm_features.h | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/include/arm_features.h b/include/arm_features.h index 1f749daa..f35e0b7f 100644 --- a/include/arm_features.h +++ b/include/arm_features.h @@ -1,33 +1,49 @@ #ifndef __ARM_FEATURES_H__ #define __ARM_FEATURES_H__ -#if defined(__ARM_ARCH_8A__) +/* note: features only available since: + * __ARM_ARCH gcc 4.8/clang 3.2 + * ARMv8 support gcc 4.8/clang 3.4 + * ARM64 support gcc 4.8/clang 3.5 + */ + +#if defined(__aarch64__) + +#elif (defined(__ARM_ARCH) && __ARM_ARCH >= 8) #define HAVE_ARMV8 #define HAVE_ARMV7 #define HAVE_ARMV6 #define HAVE_ARMV5 -#elif defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \ - || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) \ - || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7S__) +#elif (defined(__ARM_ARCH) && __ARM_ARCH >= 7) \ + || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \ + || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) \ + || defined(__ARM_ARCH_7EM__) || defined(__ARM_ARCH_7S__) #define HAVE_ARMV7 #define HAVE_ARMV6 #define HAVE_ARMV5 -#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \ - || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \ - || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) \ - || defined(__ARM_ARCH_6M__) +#elif (defined(__ARM_ARCH) && __ARM_ARCH >= 6) \ + || defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \ + || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) \ + || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_6T2__) \ + || defined(__ARM_ARCH_6M__) #define HAVE_ARMV6 #define HAVE_ARMV5 +#define HAVE_PRE_ARMV7 #elif defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5E__) \ || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) #define HAVE_ARMV5 +#define HAVE_PRE_ARMV7 + +#elif defined(__arm__) + +#define HAVE_PRE_ARMV7 #endif -- 2.39.2