x86-64 support for gas part I

Alan Modra alan@linuxcare.com.au
Wed Dec 20 03:42:00 GMT 2000


On Wed, 20 Dec 2000, Geoff Keating wrote:

> In both old K&R compilers, and ISO C compilers, on machines with
> 32-bit ints, 0xffffffff and 0x80000000 are of type 'unsigned int'.

I thought the rule for K&R hexadecimal constants was that they are of type
'int' unless they have an 'L' suffix, in which case they are of type
'long int'.  'unsigned int' doesn't get a mention, which is precisely why
there can be a problem.  Under K&R, the above are signed constants, and
will be sign extended when stored into a 64-bit integral type, assuming
the compiler provides such a type.

-- 
Linuxcare.  Support for the Revolution.




More information about the Binutils mailing list