summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-10-26 11:42:18 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-10-26 11:42:18 (GMT)
commit20ff096f7928af788b6fdcce3e7de688120b060c (patch)
tree409a6102b98d0d738d9cf881b76e7c61d1fcd2e7 /src/gui/painting
parentcb8d8035dcf949e4b372e83d1c6e701a4ac3527a (diff)
parenta721eb2fc6f0b95bb95b508baf60798ca60b1172 (diff)
downloadQt-20ff096f7928af788b6fdcce3e7de688120b060c.zip
Qt-20ff096f7928af788b6fdcce3e7de688120b060c.tar.gz
Qt-20ff096f7928af788b6fdcce3e7de688120b060c.tar.bz2
Merge branch 4.7 into qt-master-from-4.7
Diffstat (limited to 'src/gui/painting')
-rw-r--r--src/gui/painting/qdrawhelper_arm_simd.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/gui/painting/qdrawhelper_arm_simd.cpp b/src/gui/painting/qdrawhelper_arm_simd.cpp
index 61dac5e..2a5f5e4 100644
--- a/src/gui/painting/qdrawhelper_arm_simd.cpp
+++ b/src/gui/painting/qdrawhelper_arm_simd.cpp
@@ -47,7 +47,26 @@
#ifdef QT_HAVE_ARM_SIMD
#if defined(Q_OS_SYMBIAN)
-#include <u32std.h>
+#if !defined(__SWITCH_TO_ARM)
+#ifdef __MARM_THUMB__
+#ifndef __ARMCC__
+#define __SWITCH_TO_ARM asm("push {r0} ");\
+ asm("add r0, pc, #4 ");\
+ asm("bx r0 ");\
+ asm("nop ");\
+ asm(".align 2 ");\
+ asm(".code 32 ");\
+ asm("ldr r0, [sp], #4 ")
+#define __END_ARM asm(".code 16 ")
+#else
+#define __SWITCH_TO_ARM asm(".code 32 ");
+#define __END_ARM
+#endif // __ARMCC__
+#else
+#define __SWITCH_TO_ARM
+#define __END_ARM
+#endif //__MARM_THUMB__
+#endif
#endif
#if defined(Q_OS_SYMBIAN) && defined(Q_CC_RVCT)