1
0
Fork 0
forked from len0rd/rockbox

FS#12463: Improve performance for multichannel FLAC decoding. Speeds up decoding by 3 MHz on PP5022, 6-7 MHz on S5L870x and 11-12 MHz on MCF5250. 5.1-88kHz-files still do not decode in realtime on Coldfire and PP502x.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31367 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Andree Buschmann 2011-12-19 19:46:10 +00:00
parent 9b920734be
commit 07405841c6
3 changed files with 36 additions and 14 deletions

View file

@ -19,12 +19,26 @@
#define ICODE_ATTR
#endif
#ifndef ICODE_ATTR_FLAC
#if (CONFIG_CPU == MCF5250) || (CONFIG_CPU == PP5022) || (CONFIG_CPU == PP5024)
#define ICODE_ATTR_FLAC ICODE_ATTR
#endif
#define IBSS_ATTR_FLAC IBSS_ATTR
/* Enough IRAM to move additional data to it. */
#define IBSS_ATTR_FLAC_LARGE_IRAM IBSS_ATTR
#define IBSS_ATTR_FLAC_XLARGE_IRAM
#ifndef IBSS_ATTR_FLAC_DECODED0
#define IBSS_ATTR_FLAC_DECODED0 IBSS_ATTR
#elif defined(CPU_S5L870X)
#define ICODE_ATTR_FLAC ICODE_ATTR
#define IBSS_ATTR_FLAC IBSS_ATTR
/* Enough IRAM to move even more additional data to it. */
#define IBSS_ATTR_FLAC_LARGE_IRAM IBSS_ATTR
#define IBSS_ATTR_FLAC_XLARGE_IRAM IBSS_ATTR
#else
#define ICODE_ATTR_FLAC ICODE_ATTR
#define IBSS_ATTR_FLAC IBSS_ATTR
/* Not enough IRAM available. */
#define IBSS_ATTR_FLAC_LARGE_IRAM
#define IBSS_ATTR_FLAC_XLARGE_IRAM
#endif
/* Endian conversion routines for standalone compilation */