Displaying 1 result from an estimated 1 matches for "compute_pitch_errorl".
Did you mean:
compute_pitch_error
2007 Aug 24
1
Speex on ARM7
...= SUB32(sum,MULT16_16(MULT16_16_16(g[0],g[0]),C[6]));
sum = SUB32(sum,MULT16_16(MULT16_16_16(g[1],g[1]),C[7]));
sum = SUB32(sum,MULT16_16(MULT16_16_16(g[2],g[2]),C[8]));
return sum;
}
is about 30 times slower than similar operation using 32 bits (int) below.
static inline long compute_pitch_errorL(int *C, int *g, int pitch_control)
{
spx_word32_t sum=0;
sum+=g[0] * pitch_control * C[0]; //
ADD32(sum,MULT16_16(MULT16_16_16(g[0],pitch_control),C[0]));
sum+=g[1] * pitch_control * C[1]; //
ADD32(sum,MULT16_16(MULT16_16_16(g[1],pitch_control),C[1]));
sum+=g[2] * pitch_control * C...