[PATCH] x86-64 corrections
Nick Clifton
nickc@redhat.com
Wed Jul 21 16:11:00 GMT 2004
Hi Jan,
> gas:
> 2004-07-02 Jan Beulich <jbeulich@novell.com>
>
> * config/tc-i386.c (optimize_imm): Adjust immediates to only
> those
> permissible for the selected instruction suffix.
> (match_template): Don't permit 64-bit general purpose operands
> in
> 32-bit mode.
> (finalize_imm): Permit 64-bit immediates.
> (build_modrm_byte): Don't treat 32-bit addressing in 64-bit
> mode
> specially except for the width of the used base and/or index
> registers.
> For 32-bit displacements, use sign-extended relocations only
> when
> using 64-bit addressing.
> Force zero displacement on rip-relative addressing when there is
> no
> other displacement.
> (i386_index_check): Don't treat 32-bit addressing in 64-bit
> mode
> specially except for the width of the used base and/or index
> registers.
> (parse_register): Disallow Reg64 registers in 32-bit mode.
> * testsuite/gas/i386/x86-64-addr32.[ds]: New test for x86-64
> 32-bit addressing in 64-bit mode.
> * testsuite/gas/i386/x86-64-rip.[ds]: New test for x86-64
> rip-relative addressing.
> * testsuite/gas/i386/i386.exp: Run the two new tests.
>
> opcodes:
> 2004-07-02 Jan Beulich <jbeulich@novell.com>
>
> * i386-dis.c (OP_E): Show rip-relative addressing in 64-bit
> mode
> regardless of address size prefix in effect.
> (ptr_reg): Size or address registers does not depend on rex64,
> but on
> the presence of an address size override.
> (OP_MMX): Use rex.x only for xmm registers.
> (OP_EM): Use rex.z only for xmm registers.
Approved and applied.
Note - there is a separate ChangeLog file in the gas/testsuite directory
so I have moved part of your gas/ChangeLog entry there.
Cheers
Nick
More information about the Binutils
mailing list