]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
x86/APX: fix disassembly of byte register operands
authorJan Beulich <jbeulich@suse.com>
Fri, 21 Jun 2024 06:36:03 +0000 (08:36 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 21 Jun 2024 06:36:03 +0000 (08:36 +0200)
Like for REX/REX2, EVEX-prefixed insns access the low bytes of all
registers; %ah...%bh are inaccessible. Reflect this correctly in output,
by leveraging REX machinery we already have to this effect.

opcodes/i386-dis.c

index 3a1afcc2fcee6ff18edc3f8dcd6c0bbf5d95ac7e..9c5063eb4ccd5a1b5dd7dda7dbe76bed13174035 100644 (file)
@@ -9004,6 +9004,7 @@ get_valid_dis386 (const struct dis386 *dp, instr_info *ins)
          ins->evex_type = evex_from_legacy;
          if (ins->address_mode != mode_64bit)
            return &bad_opcode;
+         ins->rex |= REX_OPCODE;
          break;
        case 0x5:
          vex_table_index = EVEX_MAP5;