Rockbox mail archiveSubject: Re: hello all (Tremor optimization)
Re: hello all (Tremor optimization)
From: Thom Johansen <thomj_at_pvv.ntnu.no>
Date: Mon, 23 May 2005 11:27:51 +0200
Pedro Vasconcelos wrote:
> What I did define the multiplication and cross-products MULT3x, XPROD3x,
> etc. as assembly inlined functions in an asm_mcf5249.h include (i.e.
> analogous to the stock Tremor asm_arm.h). I didn't use the parallel
> loads as these functions aren't used with sequencial memory accesses.
> Maybe I am missing something here?
Sequential memory access or no, the parallel load versions saves two
bytes of code space for every move you do, but they also pretty much
require that you write all the optimisations in pure assembler, it's
a bit of a bother to use.
> I'm not at home at the moment, but I can send you the header file if
> you're interested.
I've got a pretty good grasp of what you've done, so not necessary for
> Sorry, I don't known what the IRAM is--- could you point me to some
The Coldfire processor we're using has 96kb of fast internal single
cycle access RAM. The slow accesses we get from ordinary RAM is a pretty
big bottleneck, so using this is beneficial.
You can put a variable/array/whatever in IRAM by postfixing the
definition with IDATA_ATTR, like this:
int myarray IDATA_ATTR;
vorbis2wav doesn't support this right now, but I'll commit a fix for
this in five minutes.
Received on 2005-05-23