On Thu, Oct 1, 2009 at 20:22, Paul Brook <p...@codesourcery.com> wrote:
>
> > > Almost certainly not. As far as I'm concerned arm-elf is obsolete, and in
> > > maintenance only mode. You should be using arm-eabi.

Is it now possible to build a 100% arm-eabi functional toolchain
(including i.e. newlib) in multilib mode straight from gnu sources?
Last time I tried, the only possibility was the codesourcery
toolchain, which receives no (public) frequent updates. Something has
changed since then?


> > I'm possibly (probably?) wrong, but as far as I know, it forces alignment
> > of 64-bit datum (namely, doubles and long longs) to 8 byte boundaries,
> > which does not make sense on small 32-bit cores with 32-bit buses and no
> > caches (e.g. practically all ARM7TDMI based chips). Memory is a scarce
> > resource on those and wasting bytes for alignment with no performance
> > benefit is something that makes arm-eabi less attractive. Also, as far as
> > I know passing such datums to functions might cause some headache due to
> > the 64-bit datums being even-register aligned when passing them to
> > functions, effectively forcing arguments to be passed on the stack
> > unnecessarily (memory access is rather expensive on a cache-less
> > ARM7TDMI). If you have to write assembly routines that take long long or
> > double arguments among other types, that forces you to shuffle registers
> > and fetch data from the stack. You lose code space, data space and CPU
> > cycles with absolutely nothing in return.
>
> Meh. Badly written code on antique hardware.
> I realise this sounds harsh, but in all seriousness if you take a bit of care
> (and common sense) you should get the alignment for free in pretty much all
> cases, and it can make a huge difference on ARMv5te cores.
>

I have to agree with Paul, at least partially. Except for a few bytes
wasted now and then regarding the parameter stacking misbehavior you
suggested, the other requirements never attempted to bite me. Not even
once. But I always had at least 2k of free ram to spare, to me that's
a lot :-)

Reply via email to