diff options
author | Chris Robinson <[email protected]> | 2020-05-14 20:24:32 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2020-05-14 21:16:21 -0700 |
commit | d086e78a389ac2936e7e19b3eb6bfb5690c27a0a (patch) | |
tree | 2e72e2253dfdbe1bc464676c78297a7a04150d92 /alc | |
parent | 91b8387c0a1f6025b01cd62584030fbc7ddc3d11 (diff) |
Fix the all-pass's shuffle order
Diffstat (limited to 'alc')
-rw-r--r-- | alc/uhjfilter.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/alc/uhjfilter.cpp b/alc/uhjfilter.cpp index 696b42c1..faf8fa3f 100644 --- a/alc/uhjfilter.cpp +++ b/alc/uhjfilter.cpp @@ -88,10 +88,10 @@ void allpass_process(al::span<float> dst, const float *RESTRICT src) const __m128 s0{_mm_loadu_ps(&src[j*2])}; const __m128 s1{_mm_loadu_ps(&src[j*2 + 4])}; - __m128 s{_mm_shuffle_ps(s1, s0, _MM_SHUFFLE(3, 1, 3, 1))}; + __m128 s{_mm_shuffle_ps(s0, s1, _MM_SHUFFLE(2, 0, 2, 0))}; r04 = _mm_add_ps(r04, _mm_mul_ps(s, coeffs)); - s = _mm_shuffle_ps(s1, s0, _MM_SHUFFLE(2, 0, 2, 0)); + s = _mm_shuffle_ps(s0, s1, _MM_SHUFFLE(3, 1, 3, 1)); r14 = _mm_add_ps(r14, _mm_mul_ps(s, coeffs)); } r04 = _mm_add_ps(r04, _mm_shuffle_ps(r04, r04, _MM_SHUFFLE(0, 1, 2, 3))); |