summaryrefslogtreecommitdiffstats
path: root/config.tests/avx512/avx512.cpp
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-09-25 01:00:35 +0200
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-09-25 01:00:35 +0200
commit35ec3b49e1b0e7c72643a4e5b835bff57762f8cb (patch)
tree97bc6a16cca64905434647f810635cb143ad9aac /config.tests/avx512/avx512.cpp
parent8bd0e6709f733a4934f32b4bd455eb1a46ff02d6 (diff)
parent2e94947c5602800b540fdabbb9c058a63f13e9d0 (diff)
Merge remote-tracking branch 'origin/5.12' into dev
Diffstat (limited to 'config.tests/avx512/avx512.cpp')
-rw-r--r--config.tests/avx512/avx512.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/config.tests/avx512/avx512.cpp b/config.tests/avx512/avx512.cpp
index 29e88ebf15..4d47db8463 100644
--- a/config.tests/avx512/avx512.cpp
+++ b/config.tests/avx512/avx512.cpp
@@ -65,6 +65,10 @@ int main(int, char**argv)
d = _mm512_loadu_pd((double *)argv + 64);
f = _mm512_loadu_ps((float *)argv + 128);
+ // some intrinsic that GCC forgot until GCC 8
+ i = _mm512_maskz_set1_epi32(m, '?');
+ _mm512_mask_cvtepi32_storeu_epi8(argv, m, i);
+
#ifdef WANT_AVX512ER
/* AVX512 Exponential and Reciprocal */
f = _mm512_exp2a23_round_ps(f, 8);
@@ -84,6 +88,7 @@ int main(int, char**argv)
#ifdef WANT_AVX512BW
/* AVX512 Byte and Word support */
i = _mm512_mask_loadu_epi8(i, m, argv - 8);
+ _mm512_mask_cvtepi16_storeu_epi8(argv + 8, m, i);
#endif
#ifdef WANT_AVX512VL
/* AVX512 Vector Length */