Skip to content

Commit 3a9e902

Browse files
sse/avx
1 parent 94cafbb commit 3a9e902

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

include/xsimd/arch/xsimd_avx2.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1023,13 +1023,13 @@ namespace xsimd
10231023
template <class A>
10241024
XSIMD_INLINE void store(batch_bool<float, A> b, bool* mem, requires_arch<avx2>) noexcept
10251025
{
1026-
return store(batch_bool<uint32_t, A>(b.data), mem, A {});
1026+
return store(batch_bool<uint32_t, A>(_mm256_castps_si256(b.data)), mem, A {});
10271027
}
10281028

10291029
template <class A>
10301030
XSIMD_INLINE void store(batch_bool<double, A> b, bool* mem, requires_arch<avx2>) noexcept
10311031
{
1032-
return store(batch_bool<uint64_t, A>(b.data), mem, A {});
1032+
return store(batch_bool<uint64_t, A>(_mm256_castpd_si256(b.data)), mem, A {});
10331033
}
10341034

10351035
// ssub

include/xsimd/arch/xsimd_sse2.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1761,13 +1761,13 @@ namespace xsimd
17611761
template <class A>
17621762
XSIMD_INLINE void store(batch_bool<float, A> b, bool* mem, requires_arch<sse2>) noexcept
17631763
{
1764-
store(batch_bool<uint32_t, A>(b.data), mem, A {});
1764+
store(batch_bool<uint32_t, A>(_mm_castsi128_ps(b.data)), mem, A {});
17651765
}
17661766

17671767
template <class A>
17681768
XSIMD_INLINE void store(batch_bool<double, A> b, bool* mem, requires_arch<sse2>) noexcept
17691769
{
1770-
store(batch_bool<uint64_t, A>(b.data), mem, A {});
1770+
store(batch_bool<uint64_t, A>(_mm_castsi128_pd(b.data)), mem, A {});
17711771
}
17721772

17731773
// store_aligned

0 commit comments

Comments
 (0)