[arm] Implement soft-float abi
Tue Aug 24 10:32:00 GMT 2004
On Tue, 2004-08-24 at 10:21, Vladimir Ivanov wrote:
> What about endianness even in case of soft-float calling convention?
> double foo (double d)
> Argument and result would be:
> FPA r0:r1
> MaverickCrunch r1:r0
> VFP depending on ARM endianness
> What are the plans about this?
It should match the bit-layout in use by the caller (otherwise things
get very complicated on the caller side to no real benefit inside the
The reason for wanting these to use the soft float ABI is that generally
they will never be called from ARM code if you have hardware support
(why call a function to add two doubles together if you have an
instruction that can do it?). However, in thumb there are no such
instructions. Having the ABI defined this way gives better
compatibility between the hard ABI and Thumb code (you still can't pass
floating point arguments to/from Thumb-compiled functions in this ABI,
but you could use floating point within a function compiled as Thumb).
PS. I can't find any statement within the EP9312 document (ds515um1) on
the word-order of Maverick. Is it really 'words-little-endian' at all
times? What about int64 types?
More information about the Gcc-patches