summaryrefslogtreecommitdiffstats
path: root/src/corelib
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-06-28 22:23:32 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-06-28 22:23:32 (GMT)
commite391d5bb96e08db99ecb5e9efcda439450922dcc (patch)
tree2bc37edc3790e2b3ffd36faeb5a052b6387d080c /src/corelib
parent54155c773c7a879d967e577e1d24ce828850c90a (diff)
parent2b599833c61de7bb164b0dffb5e28194d311972b (diff)
downloadQt-e391d5bb96e08db99ecb5e9efcda439450922dcc.zip
Qt-e391d5bb96e08db99ecb5e9efcda439450922dcc.tar.gz
Qt-e391d5bb96e08db99ecb5e9efcda439450922dcc.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Enable SSE2 for MSVC x64 builds, as it was incorrectly disabled Updated JavaScriptCore from /home/khansen/dev/qtwebkit-qtscript-integration to javascriptcore-snapshot-28062010 ( 0fccd26d3624e80cf68873701ef70ad72ca66bec ) ignore *.vcxproj.user doc: Added more DITA output to the XML generator Don't load ciphers and system certificates for QSslSocket::supportsSsl() Doc: Fixed whitespace issues and added missing files to lists. Doc: Fixed links in the QML documentation. Doc: Changed links to explicitly refer to QML objects. qdoc: Added a workaround for QML/Qt class name clashes.
Diffstat (limited to 'src/corelib')
-rw-r--r--src/corelib/global/qglobal.h6
-rw-r--r--src/corelib/tools/qsimd_p.h3
2 files changed, 4 insertions, 5 deletions
diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h
index 1eab394..76f35ac 100644
--- a/src/corelib/global/qglobal.h
+++ b/src/corelib/global/qglobal.h
@@ -412,15 +412,13 @@ namespace QT_NAMESPACE {}
# if defined(__INTEL_COMPILER)
# define Q_CC_INTEL
# endif
-/* x64 does not support mmx intrinsics on windows */
-# if (defined(Q_OS_WIN64) && defined(_M_X64))
+/* MSVC does not support SSE/MMX on x64 */
+# if (defined(Q_CC_MSVC) && defined(_M_X64))
# undef QT_HAVE_SSE
-# undef QT_HAVE_SSE2
# undef QT_HAVE_MMX
# undef QT_HAVE_3DNOW
# endif
-
#elif defined(__BORLANDC__) || defined(__TURBOC__)
# define Q_CC_BOR
# define Q_INLINE_TEMPLATE
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h
index cbe6146..58d2dcb 100644
--- a/src/corelib/tools/qsimd_p.h
+++ b/src/corelib/tools/qsimd_p.h
@@ -58,7 +58,8 @@ QT_BEGIN_HEADER
#endif
// SSE intrinsics
-#if defined(__SSE2__) && defined(QT_HAVE_SSE2) && !defined(QT_BOOTSTRAPPED)
+#if defined(QT_HAVE_SSE2) && !defined(QT_BOOTSTRAPPED) && (defined(__SSE2__) \
+ || (defined(Q_CC_MSVC) && (defined(_M_X64) || _M_IX86_FP == 2)))
#if defined(QT_LINUXBASE)
/// this is an evil hack - the posix_memalign declaration in LSB
/// is wrong - see http://bugs.linuxbase.org/show_bug.cgi?id=2431