From ee398634595e30978295d75706d2316a02975398 Mon Sep 17 00:00:00 2001 From: Jens Arnold Date: Sat, 9 Aug 2008 22:32:34 +0000 Subject: Speed up WMA decoding on coldfire (14% speedup with a 128kbps test file). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18228 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libwma/wmadeci.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'apps/codecs') diff --git a/apps/codecs/libwma/wmadeci.c b/apps/codecs/libwma/wmadeci.c index b09dd0edd2..b8996c1b16 100644 --- a/apps/codecs/libwma/wmadeci.c +++ b/apps/codecs/libwma/wmadeci.c @@ -154,10 +154,13 @@ void vector_fmul_add_add(fixed32 *dst, const fixed32 *data, "movclr.l %%acc1, %%d1;" "movclr.l %%acc2, %%d2;" "movclr.l %%acc3, %%d3;" - "add.l %%d0, (%[dst])+;" - "add.l %%d1, (%[dst])+;" - "add.l %%d2, (%[dst])+;" - "add.l %%d3, (%[dst])+;" + "movem.l (%[dst]), %%d4-%%d5/%%a0-%%a1;" + "add.l %%d4, %%d0;" + "add.l %%d5, %%d1;" + "add.l %%a0, %%d2;" + "add.l %%a1, %%d3;" + "movem.l %%d0-%%d3, (%[dst]);" + "lea.l (16, %[dst]), %[dst];" "subq.l #4, %[n];" "jne 0b;" : [d] "+a" (data), [w] "+a" (window), [dst] "+a" (dst), [n] "+d" (n) -- cgit v1.2.3