1
0
Fork 0
forked from len0rd/rockbox

opus: asm MULT16_32_Q15 for arm and cf

Speeds up decoding of a 64kbps opus test file by 34MHz on h300 (cf),
24MHz on c200 (pp) and 13MHz on fuzev1 (amsv1)

Change-Id: I0dce6b3bfe6c81d0a722dfebb13891b9a428c6ba
This commit is contained in:
Nils Wallménius 2012-09-24 23:14:58 +02:00
parent 06fc6fdd0a
commit afc6b3f021
2 changed files with 33 additions and 0 deletions

View file

@ -332,6 +332,12 @@ enum codec_status codec_run(void)
}
global_stack = 0;
#if defined(CPU_COLDFIRE)
/* EMAC rounding is disabled because of MULT16_32_Q15, which will be
inaccurate with rounding in its current incarnation */
coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE);
#endif
/* pre-init the ogg_sync_state buffer, so it won't need many reallocs */
ogg_sync_init(&oy);
oy.storage = 64*1024;