Avoid an obvious stall on everything newer then arm7tdmi. Note: this can probably be made a lot faster on newer arm targets.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28842 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Michael Giacomelli 2010-12-16 19:45:59 +00:00
parent fa49771809
commit 77d9b040fc

View file

@ -64,9 +64,9 @@ eq_filter:
mov r1, r0 @ fix input history mov r1, r0 @ fix input history
smlal r10, r11, r5, r0 @ acc += b1*x[i - 1] smlal r10, r11, r5, r0 @ acc += b1*x[i - 1]
ldr r0, [r9] @ load input and fix history in same operation ldr r0, [r9] @ load input and fix history in same operation
smlal r10, r11, r4, r0 @ acc += b0*x[i]
smlal r10, r11, r7, r2 @ acc += a1*y[i - 1] smlal r10, r11, r7, r2 @ acc += a1*y[i - 1]
smlal r10, r11, r8, r3 @ acc += a2*y[i - 2] smlal r10, r11, r8, r3 @ acc += a2*y[i - 2]
smlal r10, r11, r4, r0 @ acc += b0*x[i] /* avoid stall on arm9*/
mov r3, r2 @ fix output history mov r3, r2 @ fix output history
mov r2, r11, asl r12 @ get upper part of result and shift left mov r2, r11, asl r12 @ get upper part of result and shift left
#ifdef HIGH_PRECISION #ifdef HIGH_PRECISION