summaryrefslogtreecommitdiffstats
path: root/src/corelib/global/qglobal.h
diff options
context:
space:
mode:
authorThierry Bastian <thierry.bastian@nokia.com>2010-03-11 10:39:37 (GMT)
committerThierry Bastian <thierry.bastian@nokia.com>2010-03-11 10:41:19 (GMT)
commit6e25e8b7857de7f688c673ba700384f85b4113d4 (patch)
tree9b6edff63cc7d34423ddebea5879210a1c1a5a88 /src/corelib/global/qglobal.h
parent8404d073d0a8f02d77888496986cba7c0b1b1739 (diff)
downloadQt-6e25e8b7857de7f688c673ba700384f85b4113d4.zip
Qt-6e25e8b7857de7f688c673ba700384f85b4113d4.tar.gz
Qt-6e25e8b7857de7f688c673ba700384f85b4113d4.tar.bz2
make it possible to use sse2 with mingw
All the windows callback functions need an attribute to force the alignment of the arg pointer. Reviewed-by: Benjamin Poulain
Diffstat (limited to 'src/corelib/global/qglobal.h')
-rw-r--r--src/corelib/global/qglobal.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h
index 4d48b60..6437fb7 100644
--- a/src/corelib/global/qglobal.h
+++ b/src/corelib/global/qglobal.h
@@ -1064,6 +1064,16 @@ redefine to built-in booleans to make autotests work properly */
# define QT_FASTCALL
#endif
+//defines the type for the WNDPROC on windows
+//the alignment needs to be forced for sse2 to not crash with mingw
+#if defined(Q_WS_WIN)
+# if defined(Q_CC_MINGW)
+# define QT_WIN_CALLBACK CALLBACK __attribute__ ((force_align_arg_pointer))
+# else
+# define QT_WIN_CALLBACK CALLBACK
+# endif
+#endif
+
typedef int QNoImplicitBoolCast;
#if defined(QT_ARCH_ARM) || defined(QT_ARCH_ARMV6) || defined(QT_ARCH_AVR32) || (defined(QT_ARCH_MIPS) && (defined(Q_WS_QWS) || defined(Q_OS_WINCE))) || defined(QT_ARCH_SH) || defined(QT_ARCH_SH4A)