This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH] x86: suppress emission of zero displacements in memoryoperands
- From: "Dave Korn" <dave dot korn at artimi dot com>
- To: "'H. J. Lu'" <hjl at lucon dot org>, "'Clifford T. Matthews'" <ctm at ardi dot com>
- Cc: <binutils at sources dot redhat dot com>
- Date: Fri, 14 Jul 2006 18:34:22 +0100
- Subject: RE: [PATCH] x86: suppress emission of zero displacements in memoryoperands
On 14 July 2006 18:31, H. J. Lu wrote:
> On Fri, Jul 14, 2006 at 11:03:38AM -0600, Clifford T. Matthews wrote:
>> Howdy,
>>
>> I'm a little over a year late to the discussion, but it was only
>> yesterday that I figured out that I was being bitten by a change that was
>> made in May of 2005.
>>
>> Syn68k is software (written by Mat Hostetter) that dynamically
>> translates 68k assembly to x86 assembly. It doesn't want to invoke a
>> full-blown assembler as it does its work, so instead, at build time,
>> it uses gas to compile a whole bunch of templates and figure out the
>> significance of the bits that get created.
>>
>> Starting with binutils-2.16.90.0.3, instructions like
>>
>> lea 0x0(%eax),%eax
>>
>> began compiling into the exact same byte sequence as
>>
>> lea (%eax),%eax
>>
>
> I have been thinking to use 0x0B, 0x0W, 0x0L to indicate the size
> of displacements.
>
That would be useful. However, 0x0B is a valid hex number! How about using
the same syntax as m68k, where you'd say 0x0.b, 0x0.w or 0x0.l ?
cheers,
DaveK
--
Can't think of a witty .sigline today....