summaryrefslogtreecommitdiff
path: root/apps/eq_cf.S
diff options
context:
space:
mode:
Diffstat (limited to 'apps/eq_cf.S')
-rw-r--r--apps/eq_cf.S11
1 files changed, 5 insertions, 6 deletions
diff --git a/apps/eq_cf.S b/apps/eq_cf.S
index f2440c2bdd..c9458cdc77 100644
--- a/apps/eq_cf.S
+++ b/apps/eq_cf.S
@@ -40,14 +40,13 @@ eq_filter:
40 where y[] is output and x[] is input. This is performed out of order 40 where y[] is output and x[] is input. This is performed out of order
41 to do parallel load of input value. 41 to do parallel load of input value.
42 */ 42 */
43 mac.l %a1, %d0, (%a6), %d4, %acc0 | acc = b1*x[i - 1], x[i] -> d4 43 mac.l %a2, %d1, %acc0 | acc = b2*x[i - 2]
44 mac.l %a2, %d1, %acc0 | acc += b2*x[i - 2] 44 move.l %d0, %d1 | fix input history
45 mac.l %a0, %d4, %acc0 | acc += b0*x[i] 45 mac.l %a1, %d0, (%a6), %d0, %acc0 | acc += b1*x[i - 1], x[i] -> d0
46 mac.l %a0, %d0, %acc0 | acc += b0*x[i]
46 mac.l %a3, %d2, %acc0 | acc += a1*y[i - 1] 47 mac.l %a3, %d2, %acc0 | acc += a1*y[i - 1]
47 mac.l %a4, %d3, %acc0 | acc += a2*y[i - 2] 48 mac.l %a4, %d3, %acc0 | acc += a2*y[i - 2]
48 move.l %d0, %d1 | fix history 49 move.l %d2, %d3 | fix output history
49 move.l %d4, %d0
50 move.l %d2, %d3
51 movclr.l %acc0, %d2 | fetch and write result 50 movclr.l %acc0, %d2 | fetch and write result
52 asl.l %d7, %d2 | restore fixed point format 51 asl.l %d7, %d2 | restore fixed point format
53 move.l %d2, (%a6)+ | save result 52 move.l %d2, (%a6)+ | save result