On 11/28/2010 11:14 AM, Peter Robinson wrote:
> From my interpretation of the gcc notes on float it looks like the two
are mutually exclusive. From the notes "Note that the hard-float and
soft-float ABIs are not link-compatible; you must compile your entire
program with the same ABI, and link with a compatible set of
libraries. "
The reason is entirely different calling convention. With
hardware
floating point linkage, arguments and return values are passed in VFP
registers; you have to be sure that target contain VFP. With software
floating point linkage arguments and return values are passed in ARM
registers; it is slower - data has to be transferred to VFP.
My understanding is that all the ARMv7 chips have vfp3 but
there's two
different versions (16 and 32) which means that all the A8 chips
should support that, and it seems on the A9 its optional.
Choice of vfp3-16 is the
best option right now, otherwise the number of
possible targets would be limited.
I vote for vfp3-16 + hardfp + separate repository ;-)
Vaclav