summaryrefslogtreecommitdiff
path: root/firmware
diff options
context:
space:
mode:
authorThom Johansen <thomj@rockbox.org>2005-03-03 12:17:45 +0000
committerThom Johansen <thomj@rockbox.org>2005-03-03 12:17:45 +0000
commit340d8245429db340d4e0dafb8633c4ac2bab2061 (patch)
tree8a623d45c57609513039a0ce2e004da71ea8ffba /firmware
parentd061b371d6f53e0c2f310f4eb5776430772a8ac5 (diff)
downloadrockbox-340d8245429db340d4e0dafb8633c4ac2bab2061.zip
rockbox-340d8245429db340d4e0dafb8633c4ac2bab2061.tar.gz
rockbox-340d8245429db340d4e0dafb8633c4ac2bab2061.tar.bz2
rockbox-340d8245429db340d4e0dafb8633c4ac2bab2061.tar.xz
Added new coldfire assembly LPC decoder routine to libFLAC.
Added clear accumulator policy. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6108 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/system.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/firmware/system.c b/firmware/system.c
index 382a756..a457a13 100644
--- a/firmware/system.c
+++ b/firmware/system.c
@@ -419,6 +419,13 @@ void (* const vbr[]) (void) __attribute__ ((section (".vectors"))) =
void system_init(void)
{
+ /* Clear the accumulators. From here on it's the responsibility of
+ whoever uses them to clear them after use (use movclr instruction). */
+ asm volatile ("movclr.l %%acc0, %%d0\n\t"
+ "movclr.l %%acc1, %%d0\n\t"
+ "movclr.l %%acc2, %%d0\n\t"
+ "movclr.l %%acc3, %%d0\n\t"
+ : : : "d0");
}
void set_cpu_frequency (long) __attribute__ ((section (".icode")));