From 5957b19fb8faeaed8d51be8e8091ad10165ec2b4 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Sun, 21 Jul 2019 00:27:23 -0400 Subject: [PATCH] Fix AVX2 feature test under Clang 3.3 Clang 3.3 appears to support some of AVX2, but it is missing _mm256_broadcastsi128_si256. --- TestPrograms/test_x86_avx2.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/TestPrograms/test_x86_avx2.cxx b/TestPrograms/test_x86_avx2.cxx index 073e9c6f..919339ef 100644 --- a/TestPrograms/test_x86_avx2.cxx +++ b/TestPrograms/test_x86_avx2.cxx @@ -1,7 +1,9 @@ #include int main(int argc, char* argv[]) { - __m256i x = _mm256_setzero_si256(); - x=_mm256_add_epi64 (x,x); + // _mm256_broadcastsi128_si256 due to Clang + __m128i x = _mm_setzero_si128 (); + __m256i y = _mm256_broadcastsi128_si256 (x); + y = _mm256_add_epi64 (y,y); return 0; }