summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2007-08-24 21:03:19 +0000
committerJens Arnold <amiconn@rockbox.org>2007-08-24 21:03:19 +0000
commit163d72ff1f680f81555c9cdd664fef8bde87df24 (patch)
tree4118146cc46ba7f71765c253a2155cf118a8bdb2
parent153d74443ae4f187fae0432346d0346bddfe46f3 (diff)
downloadrockbox-163d72ff1f680f81555c9cdd664fef8bde87df24.tar.gz
rockbox-163d72ff1f680f81555c9cdd664fef8bde87df24.zip
iPod 1st..3rd Gen: Nearly halve the cost of software treble/bass (and eq) by putting the filter routine in IRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14452 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/eq_arm.S6
1 files changed, 6 insertions, 0 deletions
diff --git a/apps/eq_arm.S b/apps/eq_arm.S
index 0c1961d2d3..a18f93a6f8 100644
--- a/apps/eq_arm.S
+++ b/apps/eq_arm.S
@@ -17,6 +17,8 @@
17 * 17 *
18 ****************************************************************************/ 18 ****************************************************************************/
19 19
20#include "config.h"
21
20/* uncomment this to make filtering calculate lower bits after shifting. 22/* uncomment this to make filtering calculate lower bits after shifting.
21 * without this, "shift" of the lower bits will be lost here. 23 * without this, "shift" of the lower bits will be lost here.
22 */ 24 */
@@ -26,7 +28,11 @@
26 * void eq_filter(int32_t **x, struct eqfilter *f, unsigned num, 28 * void eq_filter(int32_t **x, struct eqfilter *f, unsigned num,
27 * unsigned channels, unsigned shift) 29 * unsigned channels, unsigned shift)
28 */ 30 */
31#if CONFIG_CPU == PP5002
32 .section .icode,"ax",%progbits
33#else
29 .text 34 .text
35#endif
30 .global eq_filter 36 .global eq_filter
31eq_filter: 37eq_filter:
32 ldr r12, [sp] @ get shift parameter 38 ldr r12, [sp] @ get shift parameter