aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac9
1 files changed, 8 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 63ae9329..4bfcb6ec 100644
--- a/configure.ac
+++ b/configure.ac
@@ -691,10 +691,17 @@ AS_IF([test x"$enable_intrinsics" = x"yes"],[
#include <time.h>
]],
[[
+ unsigned char utest[16] = {1};
__m256 mtest;
+ __m256 mtest1;
+ __m256 mtest2;
mtest = _mm256_set1_ps((float)time(NULL));
mtest = _mm256_fmadd_ps(mtest, mtest, mtest);
- return _mm256_extract_epi16(_mm256_cvttps_epi32(mtest), 0);
+ mtest1 = _mm256_set_m128i(_mm_loadu_si64(utest));
+ mtest2 =
+ _mm256_cvtepi16_epi32(_mm_loadu_si128((__m128i_u *)utest));
+ return _mm256_extract_epi16(_mm256_xor_si256(
+ _mm256_xor_si256(mtest1, mtest2), _mm256_cvttps_epi32(mtest)), 0);
]]
)
AS_IF([test x"$OPUS_X86_MAY_HAVE_AVX2" = x"1" && test x"$OPUS_X86_PRESUME_AVX2" != x"1"],