avx: _mm256_insert_epi64 was broken in clang until 3.7
Prior to 3.7 the `i` parameter was an int, but we need to be able to
insert 64 bit integers.
@@ -3681,11 +3681,11 @@ simde_mm256_insert_epi64 (simde__m256i a, int64_t i, const int index)
return simde__m256i_from_private(a_);
}
-#if defined(SIMDE_X86_AVX_NATIVE)
- #if !defined(HEDLEY_MSVC_VERSION) || (HEDLEY_MSVC_VERSION_CHECK(19,20,0) && defined(_M_X64))
+#if defined(SIMDE_X86_AVX_NATIVE) && \
+ (!defined(HEDLEY_MSVC_VERSION) || (HEDLEY_MSVC_VERSION_CHECK(19,20,0) && defined(_M_X64))) && \
+ SIMDE_DETECT_CLANG_VERSION_NOT(3,7,0)
#define simde_mm256_insert_epi64(a, i, index) _mm256_insert_epi64(a, i, index)
#endif
-#endif
#if defined(SIMDE_X86_AVX_ENABLE_NATIVE_ALIASES)
#undef _mm256_insert_epi64
#define _mm256_insert_epi64(a, i, index) simde_mm256_insert_epi64(a, i, index)
