diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2008-01-15 01:37:56 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2008-01-15 01:37:56 +0000 |
commit | 5c07affcae1a9698e488eefae0b1eb30d9743657 (patch) | |
tree | b9e29cc4c40d8db0ca2ae4a1a11a9028e2f00d13 /opcodes/i386-opc.h | |
parent | 787daa7a0b1c68d0c52bdccd8747a12198ec9d75 (diff) | |
download | gdb-5c07affcae1a9698e488eefae0b1eb30d9743657.zip gdb-5c07affcae1a9698e488eefae0b1eb30d9743657.tar.gz gdb-5c07affcae1a9698e488eefae0b1eb30d9743657.tar.bz2 |
gas/
2008-01-14 H.J. Lu <hongjiu.lu@intel.com>
* config/tc-i386.c (match_reg_size): New.
(match_mem_size): Likewise.
(operand_size_match): Likewise.
(operand_type_match): Also clear all size fields.
(match_template): Skip Intel syntax when in AT&T syntax.
Call operand_size_match to check operand size.
(i386_att_operand): Set the mem field to 1 for memory
operand.
(i386_intel_operand): Likewise.
gas/testsuite/
2008-01-14 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.s: Add tests for movsx, movzx and movnti.
* gas/i386/inval.s: Likewise.
* gas/i386/x86_64.s: Likewise.
* gas/i386/x86-64-inval.s: Likewise.
* gas/i386/i386.d: Updated.
* gas/i386/inval.l: Likewise.
* gas/i386/x86_64.d: Likewise.
* gas/i386/x86-64-inval.l: Likewise.
opcodes/
2008-01-14 H.J. Lu <hongjiu.lu@intel.com>
* i386-gen.c (opcode_modifiers): Add IntelSyntax.
(operand_types): Add Mem.
* i386-opc.h (IntelSyntax): New.
* i386-opc.h (Mem): New.
(Byte): Updated.
(Opcode_Modifier_Max): Updated.
(i386_opcode_modifier): Add intelsyntax.
(i386_operand_type): Add mem.
* i386-opc.tbl: Remove Reg16 from movnti. Add sizes to more
instructions.
* i386-reg.tbl: Add size for accumulator.
* i386-init.h: Regenerated.
* i386-tbl.h: Likewise.
Diffstat (limited to 'opcodes/i386-opc.h')
-rw-r--r-- | opcodes/i386-opc.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/opcodes/i386-opc.h b/opcodes/i386-opc.h index 92c3ebd..460b835 100644 --- a/opcodes/i386-opc.h +++ b/opcodes/i386-opc.h @@ -227,8 +227,10 @@ typedef union i386_cpu_flags #define ATTMnemonic (OldGcc + 1) /* AT&T syntax. */ #define ATTSyntax (ATTMnemonic + 1) +/* Intel syntax. */ +#define IntelSyntax (ATTSyntax + 1) /* The last bitfield in i386_opcode_modifier. */ -#define Opcode_Modifier_Max ATTSyntax +#define Opcode_Modifier_Max IntelSyntax typedef struct i386_opcode_modifier { @@ -273,6 +275,7 @@ typedef struct i386_opcode_modifier unsigned int oldgcc:1; unsigned int attmnemonic:1; unsigned int attsyntax:1; + unsigned int intelsyntax:1; } i386_opcode_modifier; /* Position of operand_type bits. */ @@ -352,8 +355,10 @@ typedef struct i386_opcode_modifier flag to the destination register operand to indicate that it should be encoded in the regmem field. */ #define RegMem (EsSeg + 1) +/* Memory. */ +#define Mem (RegMem + 1) /* BYTE memory. */ -#define Byte (RegMem + 1) +#define Byte (Mem + 1) /* WORD memory. 2 byte */ #define Word (Byte + 1) /* DWORD memory. 4 byte */ @@ -419,6 +424,7 @@ typedef union i386_operand_type unsigned int jumpabsolute:1; unsigned int esseg:1; unsigned int regmem:1; + unsigned int mem:1; unsigned int byte:1; unsigned int word:1; unsigned int dword:1; |