diff options
Diffstat (limited to 'src/corelib/tools/qsimd_p.h')
-rw-r--r-- | src/corelib/tools/qsimd_p.h | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h index 181da4f7de..fafc3e37b0 100644 --- a/src/corelib/tools/qsimd_p.h +++ b/src/corelib/tools/qsimd_p.h @@ -53,7 +53,6 @@ // #include <QtCore/private/qglobal_p.h> -#include <qatomic.h> /* * qt_module_config.prf defines the QT_COMPILER_SUPPORTS_XXX macros. @@ -165,11 +164,7 @@ # if !defined(__MIPS_DSPR2__) && defined(__mips_dspr2) && defined(Q_PROCESSOR_MIPS_32) # define __MIPS_DSPR2__ # endif -#elif (defined(Q_CC_INTEL) || defined(Q_CC_MSVC) \ - || (defined(Q_CC_GNU) && !defined(Q_CC_CLANG) && Q_CC_GNU >= 409) \ - || (defined(Q_CC_CLANG) && Q_CC_CLANG >= 308)) \ - && !defined(QT_BOOTSTRAPPED) -# define QT_COMPILER_SUPPORTS_SIMD_ALWAYS +#elif defined(Q_PROCESSOR_X86) && defined(QT_COMPILER_SUPPORTS_SIMD_ALWAYS) # define QT_COMPILER_SUPPORTS_HERE(x) ((__ ## x ## __) || QT_COMPILER_SUPPORTS(x)) # if defined(Q_CC_GNU) && !defined(Q_CC_INTEL) /* GCC requires attributes for a function */ @@ -333,8 +328,10 @@ # include <arm_acle.h> #endif -QT_BEGIN_NAMESPACE +#ifdef __cplusplus +#include <qatomic.h> +QT_BEGIN_NAMESPACE enum CPUFeatures { #if defined(Q_PROCESSOR_ARM) @@ -512,9 +509,11 @@ static inline quint64 qCpuFeatures() #define ALIGNMENT_PROLOGUE_32BYTES(ptr, i, length) \ for (; i < static_cast<int>(qMin(static_cast<quintptr>(length), ((8 - ((reinterpret_cast<quintptr>(ptr) >> 2) & 0x7)) & 0x7))); ++i) +QT_END_NAMESPACE + +#endif // __cplusplus + #define SIMD_EPILOGUE(i, length, max) \ for (int _i = 0; _i < max && i < length; ++i, ++_i) -QT_END_NAMESPACE - #endif // QSIMD_P_H |