From 398c8513b172d4605a27dfa6125045b55e7cb29e Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 30 May 2012 14:38:16 +0200 Subject: Overhaul the qsimd_p.h: rename macros and update conditionals The QT_HAVE_xxx macros are replaced with QT_COMPILER_SUPPORTS_xxx. They indicate that the compiler supports those intrinsics, but not necessarily that they can be used right now. ICC and MSVC allow one to use the intrinsics anywhere, but for Qt all uses of the intrinsics are either in specially-built files, protected by runtime checks, or they are unconditional (qstring.cpp). So we only use the intrinsics when the compiler was instructed to generate code for that instruction set anyway. Change-Id: Ie58eebbc0518ad1d5420a85174fd84153bb9abaa Reviewed-by: Oswald Buddenhagen --- src/corelib/tools/qsimd.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/corelib/tools/qsimd.cpp') diff --git a/src/corelib/tools/qsimd.cpp b/src/corelib/tools/qsimd.cpp index dacff0fe87..b07667b4f9 100644 --- a/src/corelib/tools/qsimd.cpp +++ b/src/corelib/tools/qsimd.cpp @@ -102,7 +102,7 @@ static inline uint detectProcessorFeatures() return features; } -#elif defined(Q_PROCESSOR_ARM) || defined(QT_HAVE_IWMMXT) || defined(QT_HAVE_NEON) +#elif defined(Q_PROCESSOR_ARM) || defined(QT_COMPILER_SUPPORTS_IWMMXT) || defined(QT_COMPILER_SUPPORTS_NEON) static inline uint detectProcessorFeatures() { uint features = 0; @@ -136,7 +136,7 @@ static inline uint detectProcessorFeatures() // fall back if /proc/self/auxv wasn't found #endif -#if defined(QT_HAVE_IWMMXT) +#if defined(QT_COMPILER_SUPPORTS_IWMMXT) // runtime detection only available when running as a previlegied process features = IWMMXT; #elif defined(QT_ALWAYS_HAVE_NEON) -- cgit v1.2.3