summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-10-26 08:04:04 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-10-26 08:04:04 (GMT)
commita721eb2fc6f0b95bb95b508baf60798ca60b1172 (patch)
tree03d4120f8514f91b56b3748d50f5fb49ba7ad57b
parent9c61980b344ae6302bb0b57764c1840164745a71 (diff)
parent7a083cc0b52df31fe9348f7e09eaf6d9e72bdb13 (diff)
downloadQt-a721eb2fc6f0b95bb95b508baf60798ca60b1172.zip
Qt-a721eb2fc6f0b95bb95b508baf60798ca60b1172.tar.gz
Qt-a721eb2fc6f0b95bb95b508baf60798ca60b1172.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Remove qdrawhelper_arm_simd.cpp dependency to u32std.h
-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)