aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-i386.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2002-03-09 05:36:51 +0000
committerAlan Modra <amodra@gmail.com>2002-03-09 05:36:51 +0000
commit29b0f896b1eeed927f102b5dbe6d56c97940dd28 (patch)
treefabd786f4540a4b8a298d363897918353a86c864 /gas/config/tc-i386.h
parentd39196b88805c745f6b46e066543b31b3f90d702 (diff)
downloadgdb-29b0f896b1eeed927f102b5dbe6d56c97940dd28.zip
gdb-29b0f896b1eeed927f102b5dbe6d56c97940dd28.tar.gz
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.h20
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