binutils/0007-x86-fold-duplicate-code-in-MOVSXD_Fixup.patch
dingguangya ccc9d8c777 Enable Intel AVX512_FP16 instructions
(cherry picked from commit dc957bc9fadac974c5930b19a52129ff17dd2fae)
2022-09-05 11:14:32 +08:00

57 lines
1.1 KiB
Diff

From 4454883ff0ee338b1f6aab7f65ab1081af307e7c Mon Sep 17 00:00:00 2001
From: Jan Beulich <jbeulich@suse.com>
Date: Thu, 22 Jul 2021 13:03:53 +0200
Subject: [PATCH] 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);
--
2.33.0