diff options
Diffstat (limited to 'src/corelib/tools/qsimd_p.h')
-rw-r--r-- | src/corelib/tools/qsimd_p.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/corelib/tools/qsimd_p.h b/src/corelib/tools/qsimd_p.h index 05f118a9eb..181da4f7de 100644 --- a/src/corelib/tools/qsimd_p.h +++ b/src/corelib/tools/qsimd_p.h @@ -262,7 +262,7 @@ # endif #endif -#if defined(__AES__) || defined(__PCLMUL__) +#if defined(__AES__) || defined(__PCLMUL__) || (defined(QT_COMPILER_SUPPORTS_AES) && defined(QT_COMPILER_SUPPORTS_SIMD_ALWAYS)) # include <wmmintrin.h> #endif @@ -287,7 +287,7 @@ #define QT_FUNCTION_TARGET_STRING_PCLMUL "pclmul,sse4.2" #define QT_FUNCTION_TARGET_STRING_POPCNT "popcnt" #define QT_FUNCTION_TARGET_STRING_F16C "f16c,avx" -#define QT_FUNCTION_TARGET_STRING_RDRAND "rdrnd" +#define QT_FUNCTION_TARGET_STRING_RDRND "rdrnd" #define QT_FUNCTION_TARGET_STRING_BMI "bmi" #define QT_FUNCTION_TARGET_STRING_BMI2 "bmi2" #define QT_FUNCTION_TARGET_STRING_RDSEED "rdseed" @@ -333,8 +333,6 @@ # include <arm_acle.h> #endif -#undef QT_COMPILER_SUPPORTS_SIMD_ALWAYS - QT_BEGIN_NAMESPACE @@ -360,7 +358,7 @@ enum CPUFeatures { CpuFeatureAES = (0 + 25), CpuFeatureAVX = (0 + 28), CpuFeatureF16C = (0 + 29), - CpuFeatureRDRAND = (0 + 30), + CpuFeatureRDRND = (0 + 30), // 31 is always zero and we've used it for the QSimdInitialized // in level 7, leaf 0, EBX @@ -399,7 +397,7 @@ static const quint64 qCompilerCpuFeatures = 0 | (Q_UINT64_C(1) << CpuFeatureRTM) #endif #ifdef __RDRND__ - | (Q_UINT64_C(1) << CpuFeatureRDRAND) + | (Q_UINT64_C(1) << CpuFeatureRDRND) #endif #ifdef __RDSEED__ | (Q_UINT64_C(1) << CpuFeatureRDSEED) |