grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Need --divide flag for assembly of startup.S on some platforms


From: Colin Watson
Subject: Re: Need --divide flag for assembly of startup.S on some platforms
Date: Sat, 4 Dec 2010 15:47:53 +0000
User-agent: Mutt/1.5.18 (2008-05-17)

On Thu, Dec 02, 2010 at 10:42:10PM +0100, Vladimir 'φ-coder/phcoder' Serbinenko 
wrote:
> On 12/02/2010 10:29 PM, Colin Watson wrote:
> > On Thu, Dec 02, 2010 at 01:15:10PM -0800, Seth Goldberg wrote:
> >>   Since the default for gas on these platforms is to use he division 
> >> operator as a comment delimiter, the "-Wa,--divide" flags need to be 
> >> passed on the gcc command line when assembling such files.
> >
> > Can we just use >> 1 instead?
> 
> This was my first thought. But for maintenance reasons it would be
> better if we can make all platforms behave the same. Can we just
> inconditionally add -Wa,--divide to TARGET_ASFLAGS ?

(Only on i386, since the existence of the --divide option is
machine-dependent.)

It'd be a substantial bump in our binutils requirement.  Right now,
INSTALL says that we require GNU binutils 2.9.1.0.23 or later.  As far
as I can make out from
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-i386.c?cvsroot=src,
--divide was added in binutils 2.17.  Before that, if I'm reading the
diff correctly, "/" unconditionally introduced a comment on certain
platforms.

So, is it better to require binutils 2.17, or to accept the maintenance
burden of avoiding the / operator in i386 assembly?  My instinct remains
the latter, I think - I have no idea what version of binutils is in
place on our various supported platforms, and I'm not even sure how to
go about finding out, so raising it is a bit scary for me.  I'm used to
platforms that stay pretty current on the GNU toolchain, but I know not
all platforms are like that.

-- 
Colin Watson                                       address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]