ref: 2582ca925988cd53edf0c4d6690dba2c66fde8e8
parent: e12c7f584a542ec6f2b00be67bf33165e182b24b
author: Jean-Marc Valin <jmvalin@jmvalin.ca>
date: Fri Feb 2 13:32:55 EST 2024
Allow wrap-around in silk_LPC_analysis_filter_avx2() Matches the C version (see 4a7027b)
--- a/silk/x86/NSQ_del_dec_avx2.c
+++ b/silk/x86/NSQ_del_dec_avx2.c
@@ -1073,7 +1073,7 @@
out32_Q12 = silk_mm256_hsum_epi32(sum);
/* Subtract prediction */
- out32_Q12 = silk_LSHIFT((opus_int32)*in_ptr, 12 ) - out32_Q12;
+ out32_Q12 = silk_SUB32_ovflw( silk_LSHIFT( (opus_int32)*in_ptr, 12 ), out32_Q12 );
/* Scale to Q0 */
out32 = silk_sar_round_32(out32_Q12, 12);
--
⑨