From: Jan Beulich Date: Thu, 11 Mar 2021 15:21:19 +0000 (+0100) Subject: x86: drop a few redundant EVEX-related checks X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ac7a231133b5a1eeba16fe93396af86b7c5d7c7a;p=binutils-gdb.git x86: drop a few redundant EVEX-related checks vex.b can only be set when vex.evex is also set. Similarly vex.evex can only be set when need_vex is also set. --- diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 54c69d85624..e31a93f7de9 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,10 @@ +2021-03-11 Jan Beulich + + * 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 * i386-dis.c (OP_E_memory): Drop xmmq_mode from broadcast diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index eb91c5df4a6..10dbe7fe183 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)) {