This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: x86-64 support for gas part I
- To: alan at linuxcare dot com dot au
- Subject: Re: x86-64 support for gas part I
- From: Geoff Keating <geoffk at geoffk dot org>
- Date: Wed, 20 Dec 2000 00:31:04 -0800
- CC: rth at redhat dot com, jh at suse dot cz, binutils at sourceware dot cygnus dot com, patches at x86-64 dot org
- References: <Pine.LNX.4.21.0012200933360.11063-100000@front.linuxcare.com.au>
- Reply-to: Geoff Keating <geoffk at redhat dot com>
> Date: Wed, 20 Dec 2000 09:46:52 +1100 (EST)
> From: Alan Modra <alan@linuxcare.com.au>
> cc: Jan Hubicka <jh@suse.cz>, binutils@sourceware.cygnus.com,
> patches@x86-64.org
>
> On Tue, 19 Dec 2000, Richard Henderson wrote:
>
> > 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.
>
> No, we're worried about compiling on 32-bit machines with BFD64, and both
> with old K&R compilers and ISO C compilers.
In both old K&R compilers, and ISO C compilers, on machines with
32-bit ints, 0xffffffff and 0x80000000 are of type 'unsigned int'.
--
- Geoffrey Keating <geoffk@geoffk.org>