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: 'broken words' misbehavior?


Alan Modra <amodra@bigpond.net.au> writes:

> On Thu, Feb 22, 2007 at 08:36:02PM -0500, Hans-Peter Nilsson wrote:
> > time and in a code section), but I'd recommend x86 maintainers
> > to consider whether now is the time to #define WORKING_DOT_WORD.
> 
> I dug around some old gcc sources, and it looks to me that i386 gcc as
> early as 1.27 used 32-bit jump tables.  I'm not sure when i386 support
> was added to gcc, but 1.22 doesn't do i386.  So practically from the
> start of i386 gcc, there was no need for the broken word hackery.
> 
> Unless I'm missing something, i386 ought to have defined
> WORKING_DOT_WORD a long time ago.

That concurs with my recollection as well.

Also, my recollection is that gas used to always break words by
default.  WORKING_DOT_WORD was added later, when people complained
about breaking their assembler code.  It is possible that nobody ever
added WORKING_DOT_WORD to tc-i386.h, as it takes an unusual program to
trigger broken dot words.

Broken dot words make more sense when you recall that gas was
originally intended only to compile gcc output, not to serve as a
general purpose assembler.  Making gas into a general purpose
assembler was a hard push against the FSF in the early 90s.

Ian


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