This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Set F_VFP_FLOAT for any binary not using FPA instructions
- From: Richard Earnshaw <rearnsha at arm dot com>
- To: Nick Clifton <nickc at cambridge dot redhat dot com>
- Cc: rearnshaw at arm dot com, binutils at sources dot redhat dot com
- Date: Tue, 16 Apr 2002 10:14:53 +0100
- Subject: Re: Set F_VFP_FLOAT for any binary not using FPA instructions
- Organization: ARM Ltd.
- Reply-to: Richard dot Earnshaw at arm dot com
> Hi Richard,
>
> Any objections to my applying the following patch ? It changes the
> logic for setting the F_VFP_FLOAT flag in arm-elf binaries so that
> it is set for any binary that has been created without enabling FPA
> instructions - even binaries that have been assembled with the
> -mno-fpu switch. This is the change from the previous behavior
> where assembling with -mno-fpu would not set the VFP flag.
>
> The reason for this change to get around the problem of compiling
> source files with the gcc switches "-mcpu=xscale -msoft-float".
> Although the soft-float flag is redundant, specifying it passes the
> -mno-fpu flag to the assembler, which then marks the binaries as
> using FPA instructions. This then prevents the object file from
> being linked with other arm or xscale binaries, which by default are
> marked as using VFP instructions.
>
> It also has the side effect of making the code agree with the
> comment above it. :-)
F_VFP_FLOAT should only be set on an image that has pure-endian floating
point numbers (as opposed to the FPA's mixed-endian style). So I don't
think this is quite right.
Note, all these silly flags in the header will have to go away when we
conform to the new EABI and we will have to switch to using the much more
flexible build-attributes system as used in the ADS toolkit.
R.