ref: 73bf6332ed4f60dd40469970f36f0505c595afc0
parent: 4a275d4d8f77afa8d308c2e9998bb5843944ac8c
author: Jean-Marc Valin <[email protected]>
date: Tue Oct 20 03:22:04 EDT 2009
Making the multiplication in normalise_residual() produce a 32-bit result just to be on the safe side (not that I observed any overflow, but I can't prove it can't happen).
--- a/libcelt/vq.c
+++ b/libcelt/vq.c
@@ -109,7 +109,7 @@
i=0;
do
- X[i] = SHR16(MULT16_16_16(g, iy[i]),1);
+ X[i] = EXTRACT16(SHR32(MULT16_16(g, iy[i]),1));
while (++i < N);
}