From: Jan Beulich Date: Thu, 22 Jul 2021 11:03:53 +0000 (+0200) Subject: x86: fold duplicate code in MOVSXD_Fixup() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4454883ff0ee338b1f6aab7f65ab1081af307e7c;p=binutils-gdb.git x86: fold duplicate code in MOVSXD_Fixup() There's no need to have two paths printing the "xd" mnemonic suffix. --- diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index 725b38b1dda..ddb659fb041 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -13601,31 +13601,25 @@ MOVSXD_Fixup (int bytemode, int sizeflag) switch (bytemode) { case movsxd_mode: - if (intel_syntax) + if (!intel_syntax) { - *p++ = 'x'; - *p++ = 'd'; - goto skip; + USED_REX (REX_W); + if (rex & REX_W) + { + *p++ = 'l'; + *p++ = 'q'; + break; + } } - USED_REX (REX_W); - if (rex & REX_W) - { - *p++ = 'l'; - *p++ = 'q'; - } - else - { - *p++ = 'x'; - *p++ = 'd'; - } + *p++ = 'x'; + *p++ = 'd'; break; default: oappend (INTERNAL_DISASSEMBLER_ERROR); break; } - skip: mnemonicendp = p; *p = '\0'; OP_E (bytemode, sizeflag);