summaryrefslogtreecommitdiff
path: root/apps/codecs/libffmpegFLAC/decoder.c
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2010-05-10 19:05:25 +0000
committerJens Arnold <amiconn@rockbox.org>2010-05-10 19:05:25 +0000
commit08d3c0be378a8e929379b398e0feb2eb164bc36a (patch)
treebe7dc7c8955979ed696d22f50d574072e475f607 /apps/codecs/libffmpegFLAC/decoder.c
parented704825d2a4422c366c82ae3a2dfa62c06a6935 (diff)
downloadrockbox-08d3c0be378a8e929379b398e0feb2eb164bc36a.zip
rockbox-08d3c0be378a8e929379b398e0feb2eb164bc36a.tar.gz
rockbox-08d3c0be378a8e929379b398e0feb2eb164bc36a.tar.bz2
rockbox-08d3c0be378a8e929379b398e0feb2eb164bc36a.tar.xz
Revert r25929. Test have shown that the assembler code is more than 50% faster than the C code both on ARM7TDMI (tested on PP5002 and PP5022) and on ARM1136JF-S (tested on Gigabeat S). If it is slower on ARM9*, it should be disabled for ARM9 only.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25937 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libffmpegFLAC/decoder.c')
-rw-r--r--apps/codecs/libffmpegFLAC/decoder.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/apps/codecs/libffmpegFLAC/decoder.c b/apps/codecs/libffmpegFLAC/decoder.c
index e5c4b42..ed17554 100644
--- a/apps/codecs/libffmpegFLAC/decoder.c
+++ b/apps/codecs/libffmpegFLAC/decoder.c
@@ -44,6 +44,8 @@
#if defined(CPU_COLDFIRE)
#include "coldfire.h"
+#elif defined(CPU_ARM)
+#include "arm.h"
#endif
#define FFMAX(a,b) ((a) > (b) ? (a) : (b))
@@ -262,6 +264,10 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order)
(void)sum;
lpc_decode_emac(s->blocksize - pred_order, qlevel, pred_order,
decoded + pred_order, coeffs);
+ #elif defined(CPU_ARM)
+ (void)sum;
+ lpc_decode_arm(s->blocksize - pred_order, qlevel, pred_order,
+ decoded + pred_order, coeffs);
#else
for (i = pred_order; i < s->blocksize; i++)
{