This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] MIPS: Add a GNU attribute for -mips32 -mfp64 objects


On Wed, 14 Nov 2007, Thiemo Seufer wrote:

> While I wrote this patch I noticed that the tagging takes only place
> when the respective gnu_attribute is found in the source code. This
> leaves objects created from assembly untagged. I wonder if it is a good
> idea to generally add a FP ABI attribute, derived from the assembler's
> command line flags, unless this is overridden by a gnu_attribute
> directive in the source. Is there a backward compatibility issue I fail
> to see, or some other effect which makes this a bad idea?

I didn't think the compiler passed the -msoft-float/-mhard-float ABI 
information to the assembler, so this could cause problems with incorrect 
tagging when older compilers are used with newer assemblers.  The ABI is a 
separate matter from what instructions are enabled, and a valid ABI is 
being compatible with both hard and soft float; a file with purely integer 
instructions could be a soft-float file if the functions are taking 
floating-point parameters, or a file compatible with both if they are 
taking integer parameters.  How would you deduce the C language function 
call compatibility of an object (which is what the attributes describe) 
from the assembler source and command line options?

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]