aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Svetkin <mikhail.svetkin@qt.io>2018-03-15 14:40:51 +0100
committerMikhail Svetkin <mikhail.svetkin@qt.io>2018-03-22 20:25:09 +0000
commit3d67ffa29191799014111accb9ff5d2f737f659c (patch)
tree812b1fda1e0cefc3be7e5b0102ac4b278070ebce
parent641d50eeb0272544e3eaff6c10bdefcdc544106a (diff)
Add additional check for support JIT compilation on ARM platform
JIT compilation is require hardware with FPU double precision. On ARM platform we can check it via __ARM_FP (http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0774g/chr1383660321827.html) Change-Id: I8f3a00e639cebe65d874cb085d97aa8f1cc18a4f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
-rw-r--r--src/qml/jsruntime/qv4global_p.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4global_p.h b/src/qml/jsruntime/qv4global_p.h
index 7f82a02ae0..9b13d4e341 100644
--- a/src/qml/jsruntime/qv4global_p.h
+++ b/src/qml/jsruntime/qv4global_p.h
@@ -108,6 +108,11 @@ inline double trunc(double d) { return d > 0 ? floor(d) : ceil(d); }
//# define V4_ENABLE_JIT
#endif
+// check FPU with double precision on ARM platform
+#if (defined(Q_PROCESSOR_ARM_64) || defined(Q_PROCESSOR_ARM_32)) && defined(V4_ENABLE_JIT) && defined(__ARM_FP) && (__ARM_FP <= 0x04)
+# undef V4_ENABLE_JIT
+#endif
+
// Black list some platforms
#if defined(V4_ENABLE_JIT)
#if defined(Q_OS_IOS) || defined(Q_OS_TVOS)