This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: GAS .fpu directive
- From: Renato Golin <renato dot golin at linaro dot org>
- To: Matthew Fortune <Matthew dot Fortune at imgtec dot com>
- Cc: Peter Bergner <bergner at vnet dot ibm dot com>, Richard Earnshaw <rearnsha at arm dot com>, Nicholas Clifton <nickc at redhat dot com>, "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Thu, 21 Aug 2014 10:20:47 +0100
- Subject: Re: GAS .fpu directive
- Authentication-results: sourceware.org; auth=none
- References: <CAMSE1keWd0+uUS0fpaC3-yXsnN-z2_Bsa5anwvQAQwXgWuw_Yw at mail dot gmail dot com> <53F4C261 dot 8090900 at redhat dot com> <53F4CB31 dot 9080701 at arm dot com> <1408553484 dot 5894 dot 8 dot camel at otta> <CAMSE1kdDQOuuKhPcF8qasM-PMXBkAKDfjioCmYc39cORV3o4gA at mail dot gmail dot com> <1408562067 dot 5894 dot 23 dot camel at otta> <CAMSE1kfq3CoxR8KWOo6dzgoR4CxyLqyA+_o=ZVU_MfJwHf8-mA at mail dot gmail dot com> <6D39441BF12EF246A7ABCE6654B0235320EF4632 at LEMAIL01 dot le dot imgtec dot org> <CAMSE1kdvh+uVriMQV1LeJJYGVY-g7BcO0ZVsESiGUeXs132eBw at mail dot gmail dot com> <6D39441BF12EF246A7ABCE6654B0235320EF47F9 at LEMAIL01 dot le dot imgtec dot org>
On 21 August 2014 10:02, Matthew Fortune <Matthew.Fortune@imgtec.com> wrote:
> FWIW given that behaviour my suggestion would be that for .fpu you would
> want to enforce just one .fpu directive and that should precede all code.
> I guess that might break some existing code though but I'd say that is a
> good thing.
That was my original proposal, and one that I'm ready to enforce in
LLVM's ARM assembler as soon as we reach consensus. :)
> Introducing a new directive to select the 'current' fpu may then be
> necessary for some use cases though. The current situation doesn't sound
> good from a hand-coded assembler nor compiler perspective. It seems fairly
> undesirable to allow an inline asm block to affect a module's attributes.
Indeed!
Other directives have the same problem: .cpu, .arch, .arch_extension,
.eabi_attribute, .syntax, etc.
> It seems less likely to occur in hand-written assembler but the results
> would be equally confusing if multiple .fpu directives did appear.
It does, and that's why I started this discussion. This has shown up
while compiling Chromium for Android with LLVM.
http://llvm.org/bugs/show_bug.cgi?id=20447
cheers,
--renato