diff --git a/configure.ac b/configure.ac
index 63ae932943710e818b313c4a8d668f6a49c49905..4bfcb6ecc0b2cee056023917b2faaf4c8a4091bc 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"],