x86: re-order two fields of struct insn_template

To facilitate a subsequent table parser change, re-order CPU flags and
opcode modifier fields. No functional change intended.
This commit is contained in:
Jan Beulich 2021-03-23 17:09:11 +01:00
parent 441f6aca39
commit dac10fb0d1
5 changed files with 13243 additions and 13231 deletions

View File

@ -1,3 +1,9 @@
2021-03-23 Jan Beulich <jbeulich@suse.com>
* config/tc-i386.c (output_i386_opcode): Invoke
process_i386_cpu_flag() slightly later.
(process_i386_opcodes): Likewise.
2021-03-23 Jan Beulich <jbeulich@suse.com>
* config/tc-i386.c (pte): Print prefix and encoding space.

View File

@ -1,3 +1,9 @@
2021-03-23 Jan Beulich <jbeulich@suse.com>
* i386-opc.h (struct insn_template): Move cpu_flags field past
opcode_modifier one.
* i386-tbl.h: Re-generate.
2021-03-23 Jan Beulich <jbeulich@suse.com>
* i386-gen.c (opcode_modifiers): New OpcodeSpace element.

View File

@ -1411,8 +1411,6 @@ output_i386_opcode (FILE *table, const char *name, char *str,
fprintf (table, " { \"%s\", %s, %s, %s, %u,\n",
name, base_opcode, extension_opcode, opcode_length, i);
process_i386_cpu_flag (table, cpu_flags, 0, ",", " ", lineno);
if (process_i386_opcode_modifier (table, opcode_modifier,
operand_types, lineno))
{
@ -1450,6 +1448,8 @@ output_i386_opcode (FILE *table, const char *name, char *str,
}
}
process_i386_cpu_flag (table, cpu_flags, 0, ",", " ", lineno);
fprintf (table, " { ");
for (i = 0; i < ARRAY_SIZE (operand_types); i++)
@ -1837,10 +1837,10 @@ process_i386_opcodes (FILE *table)
fprintf (table, " { NULL, 0, 0, 0, 0,\n");
process_i386_cpu_flag (table, "0", 0, ",", " ", -1);
process_i386_opcode_modifier (table, "0", NULL, -1);
process_i386_cpu_flag (table, "0", 0, ",", " ", -1);
fprintf (table, " { ");
process_i386_operand_type (table, "0", stage_opcodes, "\t ", -1);
fprintf (table, " } }\n");

View File

@ -951,14 +951,14 @@ typedef struct insn_template
/* how many operands */
unsigned char operands;
/* cpu feature flags */
i386_cpu_flags cpu_flags;
/* the bits in opcode_modifier are used to generate the final opcode from
the base_opcode. These bits also are used to detect alternate forms of
the same instruction */
i386_opcode_modifier opcode_modifier;
/* cpu feature flags */
i386_cpu_flags cpu_flags;
/* operand_types[i] describes the type of operand i. This is made
by OR'ing together all of the possible type masks. (e.g.
'operand_types[i] = Reg|Imm' specifies that operand i can be

File diff suppressed because it is too large Load Diff