summaryrefslogtreecommitdiffstats
path: root/src/corelib
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@digia.com>2013-09-16 15:25:17 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-09-16 23:18:59 +0200
commit410e9cd5b1a6eb87f150f058062087756d52ec25 (patch)
tree47f37b78c0c393d98a7911ce6ae7e625af25c983 /src/corelib
parent15c384f82f86e65718c67afcd99d7da7ffc011d2 (diff)
Add support for ARMv8/ARM64 to qprocessordetection.h
As used by the upcoming iPhone 5S' A7 SoC. Change-Id: I276dc739c2565bce23fb1a12c9470dcd311e67ba Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/global/qprocessordetection.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/corelib/global/qprocessordetection.h b/src/corelib/global/qprocessordetection.h
index ca7689c527..fb664cbc82 100644
--- a/src/corelib/global/qprocessordetection.h
+++ b/src/corelib/global/qprocessordetection.h
@@ -90,14 +90,24 @@
// Q_BYTE_ORDER not defined, use endianness auto-detection
/*
- ARM family, known revisions: V5, V6, and V7
+ ARM family, known revisions: V5, V6, V7, V8
ARM is bi-endian, detect using __ARMEL__ or __ARMEB__, falling back to
auto-detection implemented below.
*/
-#if defined(__arm__) || defined(__TARGET_ARCH_ARM) || defined(_M_ARM)
+#if defined(__arm__) || defined(__TARGET_ARCH_ARM) || defined(_M_ARM) || defined(__arm64__)
# define Q_PROCESSOR_ARM
-# if defined(__ARM_ARCH_7__) \
+# if defined(__arm64__)
+# define Q_PROCESSOR_ARM_64
+# else
+# define Q_PROCESSOR_ARM_32
+# endif
+# if defined(__ARM64_ARCH_8__)
+# define Q_PROCESSOR_ARM_V8
+# define Q_PROCESSOR_ARM_V7
+# define Q_PROCESSOR_ARM_V6
+# define Q_PROCESSOR_ARM_V5
+# elif defined(__ARM_ARCH_7__) \
|| defined(__ARM_ARCH_7A__) \
|| defined(__ARM_ARCH_7R__) \
|| defined(__ARM_ARCH_7M__) \