From 6ff84632164962aa20a808e7c6708b7a02b015a1 Mon Sep 17 00:00:00 2001 From: Thom Johansen Date: Fri, 28 Oct 2005 22:03:52 +0000 Subject: Enabled the FLAC EMAC optimisations. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7678 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libffmpegFLAC/decoder.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'apps/codecs/libffmpegFLAC/decoder.c') diff --git a/apps/codecs/libffmpegFLAC/decoder.c b/apps/codecs/libffmpegFLAC/decoder.c index 5d3f313..351db1b 100644 --- a/apps/codecs/libffmpegFLAC/decoder.c +++ b/apps/codecs/libffmpegFLAC/decoder.c @@ -42,6 +42,10 @@ #include "decoder.h" +#if defined(CPU_COLDFIRE) && !defined(SIMULATOR) +#include "coldfire.h" +#endif + #define INT_MAX 2147483647 #define FFMAX(a,b) ((a) > (b) ? (a) : (b)) @@ -262,6 +266,10 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order) return -8; if ((s->bps + coeff_prec + av_log2(pred_order)) <= 32) { + #if defined(CPU_COLDFIRE) && !defined(SIMULATOR) + (void)sum; + lpc_decode_emac(s->blocksize - pred_order, qlevel, pred_order, decoded + pred_order, coeffs); + #else for (i = pred_order; i < s->blocksize; i++) { sum = 0; @@ -269,6 +277,7 @@ static int decode_subframe_lpc(FLACContext *s, int32_t* decoded, int pred_order) sum += coeffs[j] * decoded[i-j-1]; decoded[i] += sum >> qlevel; } + #endif } else { for (i = pred_order; i < s->blocksize; i++) { -- cgit v1.1