aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2020-05-14 20:24:32 -0700
committerChris Robinson <[email protected]>2020-05-14 21:16:21 -0700
commitd086e78a389ac2936e7e19b3eb6bfb5690c27a0a (patch)
tree2e72e2253dfdbe1bc464676c78297a7a04150d92
parent91b8387c0a1f6025b01cd62584030fbc7ddc3d11 (diff)
Fix the all-pass's shuffle order
-rw-r--r--alc/uhjfilter.cpp4
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)));