x86-64 support for gas part I
Jan Hubicka
jh@suse.cz
Tue Dec 19 02:26:00 GMT 2000
> On Tue, Dec 19, 2000 at 12:18:51PM +1100, Alan Modra wrote:
> > > ! disp = (((disp & 0xffffffff) ^ 0x80000000) - 0x80000000);
> >
> > Constants in range 0x80000000 to 0xffffffff here need fixing.
>
> No, this one's fine. Either it's a 64-bit machine and the
> sign extension happens as planned, or it's a no-op.
On 64bit and K&R C compiler the disp & 0xffffffff is IMO no-op,
assuming that constant is signed int and thus sign extended to
to the 64bit -1.
Anyway my updated patch contains this rewrite to "official" form
using shifts and is consistent with rest of file, so maybe it is
cleaner.
Thanks for comment :)
Honza
>
>
> r~
More information about the Binutils
mailing list