audio_coding/codec/ilbc: Removed usage of WEBRTC_SPL_MUL_16_16_RSFT
The macro is defined as
#define WEBRTC_SPL_MUL_16_16_RSFT(a, b, c) \
(WEBRTC_SPL_MUL_16_16(a, b) >> (c))
where the latter macro is in C defined as
(For definitions on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_{armv7,mips}.h)
The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
- minor cleanups like remove of unnecessary parantheses and style changes
BUG=3348, 3353
TESTED=locally on Mac and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/39139004
Cr-Commit-Position: refs/heads/master@{#8544}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8544 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
@ -53,10 +53,9 @@ void WebRtcIlbcfix_Window32W32(
|
||||
y_low = (int16_t)((y[i] - temp) >> 1);
|
||||
|
||||
/* Calculate z by a 32 bit multiplication using both low and high from x and y */
|
||||
temp = (x_hi * y_hi) << 1;
|
||||
temp = (temp + (WEBRTC_SPL_MUL_16_16_RSFT(x_hi, y_low, 14)));
|
||||
temp = ((x_hi * y_hi) << 1) + ((x_hi * y_low) >> 14);
|
||||
|
||||
z[i] = (temp + (WEBRTC_SPL_MUL_16_16_RSFT(x_low, y_hi, 14)));
|
||||
z[i] = temp + ((x_low * y_hi) >> 14);
|
||||
}
|
||||
|
||||
WebRtcSpl_VectorBitShiftW32(z, N, z, left_shifts);
|
||||
|
||||
Reference in New Issue
Block a user