diff options
author | Alan Modra <amodra@gmail.com> | 2002-03-09 05:36:51 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2002-03-09 05:36:51 +0000 |
commit | 29b0f896b1eeed927f102b5dbe6d56c97940dd28 (patch) | |
tree | fabd786f4540a4b8a298d363897918353a86c864 /gas/config/tc-i386.h | |
parent | d39196b88805c745f6b46e066543b31b3f90d702 (diff) | |
download | fsf-binutils-gdb-29b0f896b1eeed927f102b5dbe6d56c97940dd28.zip fsf-binutils-gdb-29b0f896b1eeed927f102b5dbe6d56c97940dd28.tar.gz fsf-binutils-gdb-29b0f896b1eeed927f102b5dbe6d56c97940dd28.tar.bz2 |
* config/tc-i386.h (REX_OPCODE): Define.
(REX_MODE64, REX_EXTX, REX_EXTY, REX_EXTZ): Define.
(rex_byte): typedef to int.
* config/tc-i386.c: Group prototypes and vars together.
Formatting fixes. Remove occurrences of "register" keyword.
(true): Delete.
(false): Delete.
(mode_from_disp_size): Add INLINE keyword to prototype.
(fits_in_signed_byte): Likewise.
(fits_in_unsigned_byte): Likewise.
(fits_in_unsigned_word): Likewise.
(fits_in_signed_word): Likewise.
(fits_in_unsigned_long): Likewise.
(fits_in_signed_long): Likewise.
(type_names): Constify.
(intel_float_operand): Constify param.
(add_prefix): Use REX_OPCODE.
(md_assemble): Likewise. Modify for changed rex_byte.
(parse_insn): Split out of md_assemble.
(parse_operands): Likewise.
(swap_operands): Likewise.
(optimize_imm): Likewise.
(optimize_disp): Likewise.
(match_template): Likewise.
(check_string): Likewise.
(process_suffix): Likewise.
(check_byte_reg): Likewise.
(check_long_reg): Likewise.
(check_qword_reg): Likewise.
(check_word_reg): Likewise.
(finalize_imm): Likewise.
(process_operands): Likewise.
(build_modrm_byte): Likewise.
(output_insn): Likewise.
(output_branch): Likewise.
(output_jump): Likewise.
(output_interseg_jump): Likewise.
(output_disp): Likewise.
(output_imm): Likewise.
Diffstat (limited to 'gas/config/tc-i386.h')
-rw-r--r-- | gas/config/tc-i386.h | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/gas/config/tc-i386.h b/gas/config/tc-i386.h index d5ba043..61b5bb9 100644 --- a/gas/config/tc-i386.h +++ b/gas/config/tc-i386.h @@ -467,15 +467,17 @@ typedef struct modrm_byte; /* x86-64 extension prefix. */ -typedef struct - { - unsigned int mode64; - unsigned int extX; /* Used to extend modrm reg field. */ - unsigned int extY; /* Used to extend SIB index field. */ - unsigned int extZ; /* Used to extend modrm reg/mem, SIB base, modrm base fields. */ - unsigned int empty; /* Used to old-style byte registers to new style. */ - } -rex_byte; +typedef int rex_byte; +#define REX_OPCODE 0x40 + +/* Indicates 64 bit operand size. */ +#define REX_MODE64 8 +/* High extension to reg field of modrm byte. */ +#define REX_EXTX 4 +/* High extension to SIB index field. */ +#define REX_EXTY 2 +/* High extension to base field of modrm or SIB, or reg field of opcode. */ +#define REX_EXTZ 1 /* 386 opcode byte to code indirect addressing. */ typedef struct |