summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-04-24 19:57:28 -0500
committerWaldemar Brodkorb <wbx@openadk.org>2015-04-24 19:57:28 -0500
commit928ab832caa67c0c1a44e3a8e1483b0ed33cda50 (patch)
tree6e3df2d0437f834971fe28bdf519a2c8da694fc1 /libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
parent74c69da52ad5029cd2fc2d3d41d581022ed0a7aa (diff)
parentf1f98784e65ce9621a570af50998b1940e7fb81d (diff)
merge uClibc changes
Diffstat (limited to 'libc/sysdeps/linux/arm/bits/uClibc_arch_features.h')
-rw-r--r--libc/sysdeps/linux/arm/bits/uClibc_arch_features.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h b/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
index b01d79c5c..e85aa52fe 100644
--- a/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
+++ b/libc/sysdeps/linux/arm/bits/uClibc_arch_features.h
@@ -48,6 +48,32 @@
/* only weird assemblers generally need this */
#undef __UCLIBC_ASM_LINE_SEP__
+
+/* The __ARM_ARCH define is provided by gcc 4.8. Construct it otherwise. */
+#ifndef __ARM_ARCH
+# ifdef __ARM_ARCH_2__
+# define __ARM_ARCH 2
+# elif defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__)
+# define __ARM_ARCH 3
+# elif defined (__ARM_ARCH_4__) || defined (__ARM_ARCH_4T__)
+# define __ARM_ARCH 4
+# elif defined (__ARM_ARCH_5__) || defined (__ARM_ARCH_5E__) \
+ || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) \
+ || defined(__ARM_ARCH_5TEJ__)
+# define __ARM_ARCH 5
+# elif defined (__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \
+ || defined (__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) \
+ || defined (__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__)
+# define __ARM_ARCH 6
+# elif defined (__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \
+ || defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) \
+ || defined(__ARM_ARCH_7EM__)
+# define __ARM_ARCH 7
+# else
+# error unknown arm architecture
+# endif
+#endif
+
#ifdef __GNUC__
# define __need_uClibc_config_h
# include <bits/uClibc_config.h>