commit 9a9e87a2b4ca7643c26bd851fe8548f8bd490bd1
parent 3b1f2bdb633397d871afb1945a5afd9dec45b9b6
Author: Dan Levin <d.levin256@gmail.com>
Date: Thu, 27 Feb 2020 12:30:48 +0300
Merge pull request #79 from BenjaminNavarro/dev
Fix compilation in debug with GCC
Diffstat:
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/include/kfr/simd/impl/backend_generic.hpp b/include/kfr/simd/impl/backend_generic.hpp
@@ -1521,14 +1521,16 @@ KFR_INTRINSIC simd<float, 4> simd_vec_shuffle(simd_t<float, 4>, const simd<float
csizes_t<I0, I1, I2, I3>)
{
// SSE -> SSE
- return _mm_shuffle_ps(x, x, shuffle_mask<8, I0, I1, I2, I3>::value);
+ constexpr size_t mask = shuffle_mask<8, I0, I1, I2, I3>::value;
+ return _mm_shuffle_ps(x, x, mask);
}
template <size_t I0, size_t I1>
KFR_INTRINSIC simd<double, 2> simd_vec_shuffle(simd_t<double, 2>, const simd<double, 2>& x, csizes_t<I0, I1>)
{
// SSE -> SSE
- return _mm_shuffle_pd(x, x, shuffle_mask<2, I0, I1>::value);
+ constexpr size_t mask = shuffle_mask<2, I0, I1>::value;
+ return _mm_shuffle_pd(x, x, mask);
}
#endif