diff options
-rw-r--r-- | opcodes/ChangeLog | 7 | ||||
-rw-r--r-- | opcodes/i386-dis.c | 7 |
2 files changed, 10 insertions, 4 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 54c69d8..e31a93f 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,5 +1,12 @@ 2021-03-11 Jan Beulich <jbeulich@suse.com> + * i386-dis.c (putop): Drop need_vex check when also checking + vex.evex. + (intel_operand_size, OP_E_memory): Drop vex.evex check when also + checking vex.b. + +2021-03-11 Jan Beulich <jbeulich@suse.com> + * i386-dis.c (OP_E_memory): Drop xmmq_mode from broadcast checks. Move case label past broadcast check. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index eb91c5d..10dbe7f 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -10749,7 +10749,7 @@ putop (const char *in_template, int sizeflag) } else if (l == 1 && last[0] == 'X') { - if (!need_vex || !vex.evex) + if (!vex.evex) abort (); if (intel_syntax || ((modrm.mod == 3 || vex.b) && !(sizeflag & SUFFIX_ALWAYS))) @@ -10951,8 +10951,7 @@ print_displacement (char *buf, bfd_vma disp) static void intel_operand_size (int bytemode, int sizeflag) { - if (vex.evex - && vex.b + if (vex.b && (bytemode == x_mode || bytemode == evex_half_bcst_xmmq_mode)) { @@ -11845,7 +11844,7 @@ OP_E_memory (int bytemode, int sizeflag) oappend (scratchbuf); } } - if (vex.evex && vex.b + if (vex.b && (bytemode == x_mode || bytemode == evex_half_bcst_xmmq_mode)) { |