On Thu, 1 Oct 2009, Paul Brook wrote:
> > Do we want to enable more multilibs in arm-elf? > > Almost certainly not. As far as I'm concerned arm-elf is obsolete, and in > maintenance only mode. You should be using arm-eabi. 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. For resource constrained embedded systems built around one of those 32-bit cores arm-elf is actually rather more attractive than arm-eabi. Zoltan