diff --git a/webrtc/common_audio/signal_processing/include/signal_processing_library.h b/webrtc/common_audio/signal_processing/include/signal_processing_library.h index 8fa38139b7..3db793b00c 100644 --- a/webrtc/common_audio/signal_processing/include/signal_processing_library.h +++ b/webrtc/common_audio/signal_processing/include/signal_processing_library.h @@ -53,8 +53,6 @@ ((int32_t) ((int32_t)(a) * (int32_t)(b))) #define WEBRTC_SPL_UMUL(a, b) \ ((uint32_t) ((uint32_t)(a) * (uint32_t)(b))) -#define WEBRTC_SPL_UMUL_RSFT16(a, b) \ - ((uint32_t) ((uint32_t)(a) * (uint32_t)(b)) >> 16) #define WEBRTC_SPL_UMUL_16_16(a, b) \ ((uint32_t) (uint16_t)(a) * (uint16_t)(b)) #define WEBRTC_SPL_UMUL_16_16_RSFT16(a, b) \ diff --git a/webrtc/common_audio/signal_processing/signal_processing_unittest.cc b/webrtc/common_audio/signal_processing/signal_processing_unittest.cc index 158f838ed1..7b1f7fd5e5 100644 --- a/webrtc/common_audio/signal_processing/signal_processing_unittest.cc +++ b/webrtc/common_audio/signal_processing/signal_processing_unittest.cc @@ -46,7 +46,6 @@ TEST_F(SplTest, MacroTest) { EXPECT_EQ(-2147483645, WEBRTC_SPL_MUL(a, b)); EXPECT_EQ(2147483651u, WEBRTC_SPL_UMUL(a, b)); b = WEBRTC_SPL_WORD16_MAX >> 1; - EXPECT_EQ(65535u, WEBRTC_SPL_UMUL_RSFT16(a, b)); EXPECT_EQ(1073627139u, WEBRTC_SPL_UMUL_16_16(a, b)); EXPECT_EQ(16382u, WEBRTC_SPL_UMUL_16_16_RSFT16(a, b)); EXPECT_EQ(4294918147u, WEBRTC_SPL_UMUL_32_16(a, b)); diff --git a/webrtc/modules/audio_coding/codecs/isac/fix/source/arith_routines_hist.c b/webrtc/modules/audio_coding/codecs/isac/fix/source/arith_routines_hist.c index 5c23f7ab71..c66be2e484 100644 --- a/webrtc/modules/audio_coding/codecs/isac/fix/source/arith_routines_hist.c +++ b/webrtc/modules/audio_coding/codecs/isac/fix/source/arith_routines_hist.c @@ -67,9 +67,9 @@ int WebRtcIsacfix_EncHistMulti(Bitstr_enc *streamData, W_upper_LSB = W_upper & 0x0000FFFF; W_upper_MSB = WEBRTC_SPL_RSHIFT_W32(W_upper, 16); W_lower = WEBRTC_SPL_UMUL(W_upper_MSB, cdfLo); - W_lower += WEBRTC_SPL_UMUL_RSFT16(W_upper_LSB, cdfLo); + W_lower += ((W_upper_LSB * cdfLo) >> 16); W_upper = WEBRTC_SPL_UMUL(W_upper_MSB, cdfHi); - W_upper += WEBRTC_SPL_UMUL_RSFT16(W_upper_LSB, cdfHi); + W_upper += ((W_upper_LSB * cdfHi) >> 16); /* shift interval such that it begins at zero */ W_upper -= ++W_lower;