[MeeGo-dev] ARM softfloat or hardfloat?
Thiago Macieira
thiago at kde.org
Thu Aug 5 08:19:01 PDT 2010
On Thursday 5. August 2010 11.33.37 Zhang, Austin wrote:
> Gcc doesn't support 'hard' combined with 'vfp' before 4.5.
> Quote from 4.4 manual: "Using '-mfloat-abi=hard' with VFP coprocessors is
> not supported." But 4.5 didn't have this limitation anymore.
> CodeSourcery should backport this support from gcc 4.5 branch.
That sounds weird. How does it do hard floating point without the VFP?
$ arm-none-linux-gnueabi-gcc -dumpversion
4.4.1
$ arm-none-linux-gnueabi-gcc -S -o - -mfloat-abi=hard -xc -
void foo(double); int main() { foo(1.0); }
boils down to:
stmfd sp!, {fp, lr}
add fp, sp, #4
fldd d0, .L3
bl foo
ldmfd sp!, {fp, pc}
No change if I add -mfpu=vfp. With -mfpu=vfpv3 or -mfpu=neon:
stmfd sp!, {fp, lr}
add fp, sp, #4
fconstd d0, #112
bl foo
ldmfd sp!, {fp, pc}
(there's a difference if the argument is 0, neon does vmov.i32 d0, #0, whereas
vfpv3 needs to load from memory)
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Senior Product Manager - Nokia, Qt Development Frameworks
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.meego.com/pipermail/meego-dev/attachments/20100805/040351e9/attachment.pgp>
More information about the MeeGo-dev
mailing list