diff --git a/gas/ChangeLog b/gas/ChangeLog index 96ceb582a7..3e00c761d0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2017-12-15 Jan Beulich + + * config/tc-i386.c (match_template): Add missing ! to + reg{x,y,z}mm checks in q- and l-suffix handling. + 2017-12-15 Jan Beulich * config/tc-i386.c (build_modrm_byte): Add missing ! to reg64 diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 36e5b1958a..5c71bb69ff 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -4968,9 +4968,9 @@ match_template (char mnem_suffix) && !operand_types[0].bitfield.regymm && !operand_types[0].bitfield.regzmm) || (!operand_types[t->operands > 1].bitfield.regmmx - && operand_types[t->operands > 1].bitfield.regxmm - && operand_types[t->operands > 1].bitfield.regymm - && operand_types[t->operands > 1].bitfield.regzmm)) + && !operand_types[t->operands > 1].bitfield.regxmm + && !operand_types[t->operands > 1].bitfield.regymm + && !operand_types[t->operands > 1].bitfield.regzmm)) && (t->base_opcode != 0x0fc7 || t->extension_opcode != 1 /* cmpxchg8b */)) continue; @@ -4985,7 +4985,7 @@ match_template (char mnem_suffix) && ((!operand_types[0].bitfield.regmmx && !operand_types[0].bitfield.regxmm) || (!operand_types[t->operands > 1].bitfield.regmmx - && operand_types[t->operands > 1].bitfield.regxmm))) + && !operand_types[t->operands > 1].bitfield.regxmm))) continue; /* Do not verify operands when there are none. */