From 2931676b5fc30ab3f782759c75f534a36cd2fad4 Mon Sep 17 00:00:00 2001 From: Evan Nemerson Date: Mon, 22 Jun 2020 09:32:27 -0700 Subject: [PATCH] svml: require AVX not SSE for {i,u}divrem_epi32 The IIG says that only SSE is required, but due to the types being __m256i ICC will actually use AVX instructions even if the implementations don't use AVX. --- x86/svml.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x86/svml.h b/x86/svml.h index d62ceba0..8f13ac93 100644 --- a/x86/svml.h +++ b/x86/svml.h @@ -3803,7 +3803,7 @@ simde_mm_idivrem_epi32 (simde__m128i* mem_addr, simde__m128i a, simde__m128i b) SIMDE_FUNCTION_ATTRIBUTES simde__m256i simde_mm256_idivrem_epi32 (simde__m256i* mem_addr, simde__m256i a, simde__m256i b) { - #if defined(SIMDE_X86_SVML_NATIVE) && defined(SIMDE_X86_SSE2_NATIVE) + #if defined(SIMDE_X86_SVML_NATIVE) && defined(SIMDE_X86_AVX_NATIVE) return _mm256_idivrem_epi32(HEDLEY_REINTERPRET_CAST(__m256i*, mem_addr), a, b); #else simde__m256i r; @@ -7147,7 +7147,7 @@ simde_mm_udivrem_epi32 (simde__m128i * mem_addr, simde__m128i a, simde__m128i b) SIMDE_FUNCTION_ATTRIBUTES simde__m256i simde_mm256_udivrem_epi32 (simde__m256i* mem_addr, simde__m256i a, simde__m256i b) { - #if defined(SIMDE_X86_SVML_NATIVE) && defined(SIMDE_X86_SSE2_NATIVE) + #if defined(SIMDE_X86_SVML_NATIVE) && defined(SIMDE_X86_AVX_NATIVE) return _mm256_udivrem_epi32(HEDLEY_REINTERPRET_CAST(__m256i*, mem_addr), a, b); #else simde__m256i r;