16-bit code in GAS

Alan Modra amodra@bigpond.net.au
Fri Aug 15 15:25:00 GMT 2003


On Fri, Aug 15, 2003 at 03:44:13PM +0200, Mikulas Patocka wrote:
> The resulting instruction should have prefixes 66 and 67 and should have
> 32-bit address.

It certainly looks buggy.  I would have expected that gas generate just
the data prefix and trim the address to 16 bit.  Instead we get a 32 bit
address inserted into the instruction.

> How can I write 32-bit code that runs in a segment with default operand
> size 16 (without 'D' bit set)?

 .code16
 addr32 movl $0x12345678, 0xabcdef01


-- 
Alan Modra
IBM OzLabs - Linux Technology Centre



More information about the Binutils mailing list