Incorrect identification of SIMD div support for integers

Issue #331 resolved
Daniel Baker created an issue

_mm512_div_epi64 , _mm512_div_epi32, _mm512_div_epi16 and _mm512_div_epi8 are available under AVX512F but only activated in SVML mode in blaze-lib, and all of the corresponding epu functions are not provided.

Similarly, _mm256_div_ep{i,u}{8,16,32,64} are available under __AVX__ , but not available at all.

In file: blaze/math/simd/Div.h

Comments (6)

  1. Klaus Iglberger

    Hi Daniel!

    Thanks a lot for pointing out this defect. We’ll take a look at this and provide a fix as quickly as possible. Thanks again,

    Best regards,

    Klaus!

  2. Klaus Iglberger

    Daniel,

    According to the Intel Intrinsics Guide _mm512_div_epi64 , _mm512_div_epi32_mm512_div_epi16, and _mm512_div_epi8 are only available in the SVML. The same is true for _mm256_div_epi64, _mm256_div_epi32, _mm256_div_epi16, and _mm256_div_epi8. Is there any proof and/or guarantee that these functions are available under AVX512F and AVX2?

    Best regards,

    Klaus!

  3. Daniel Baker reporter

    Hi Klaus,

    You’re right. It looks like I’m mistaken; I was looking at the CPUID Flags: AVX512F field rather than the color for the instructions.

    My apologies,

    Daniel

  4. Log in to comment