1
0
Fork 0
forked from len0rd/rockbox

opus: put arrays frequently used by pulse decoding on the stack

speeds up decoding of a 64kbps test file by 14MHz on h300 (cf)
and 1MHz on c200 (pp)

Change-Id: I852cb66808676ea51109423f5b70cfc8782dd109
This commit is contained in:
Nils Wallménius 2012-10-04 19:20:55 +02:00
parent 283277e5ab
commit 6d2ad505dc
2 changed files with 13 additions and 7 deletions

View file

@ -35,6 +35,7 @@
#include "cwrs.h"
#include "mathops.h"
#include "arch.h"
#include "rate.h"
#ifdef CUSTOM_MODES
@ -632,11 +633,12 @@ void decode_pulses(int *_y,int _n,int _k,ec_dec *_dec)
default:
{
#endif
VARDECL(opus_uint32,u);
/* VARDECL(opus_uint32,u);
SAVE_STACK;
ALLOC(u,_k+2U,opus_uint32);
ALLOC(u,_k+2U,opus_uint32); */
opus_uint32 u[MAX_PULSES+2];
cwrsi(_n,_k,ec_dec_uint(_dec,ncwrs_urow(_n,_k,u)),_y,u);
RESTORE_STACK;
/* RESTORE_STACK; */
#ifndef SMALL_FOOTPRINT
}
break;