diff options
author | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2022-06-28 06:27:48 +0300 |
---|---|---|
committer | Jean-Marc Valin <jmvalin@jmvalin.ca> | 2022-06-28 06:27:48 +0300 |
commit | be67ea8c7ca22d4803b3828c183af1d47a3932cb (patch) | |
tree | 78503b1b09f1518a73f980f85e40a5b1d6f13258 | |
parent | 57ddf37c83eff80a5064c38fde57b6cc6ad1e739 (diff) |
Fixes wrap-around in silk_inner_prod16_sse4_1()
Thanks Tim
-rw-r--r-- | silk/fixed/x86/vector_ops_FIX_sse4_1.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/silk/fixed/x86/vector_ops_FIX_sse4_1.c b/silk/fixed/x86/vector_ops_FIX_sse4_1.c index 0cfb08d9..a46289bb 100644 --- a/silk/fixed/x86/vector_ops_FIX_sse4_1.c +++ b/silk/fixed/x86/vector_ops_FIX_sse4_1.c @@ -36,6 +36,7 @@ #include "SigProc_FIX.h" #include "pitch.h" +#include "celt/x86/x86cpu.h" opus_int64 silk_inner_prod16_sse4_1( const opus_int16 *inVec1, /* I input vector 1 */ @@ -78,7 +79,7 @@ opus_int64 silk_inner_prod16_sse4_1( _mm_storel_epi64( (__m128i *)&sum, acc1 ); for( ; i < len; i++ ) { - sum = silk_SMLABB( sum, inVec1[ i ], inVec2[ i ] ); + sum = silk_SMLALBB( sum, inVec1[ i ], inVec2[ i ] ); } #ifdef OPUS_CHECK_ASM |