x86: make J disassembler macro available for new use
authorJan Beulich <jbeulich@suse.com>
Thu, 25 Jun 2020 07:31:50 +0000 (09:31 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 25 Jun 2020 07:31:50 +0000 (09:31 +0200)
There's clearly a shortage of available macro characters, as can be seen
from the various two-character macros that had to be introduced. Don't
waste characters for things that can be expressed differently. In the
case of J this alternative is {l|}.

opcodes/ChangeLog
opcodes/i386-dis.c

index 61bc45231e6ff0f7b3880d0e5f9e9614d57e82a9..f36ee55612aeb90f56319e1437631b5106fe4497 100644 (file)
@@ -1,3 +1,9 @@
+2020-06-25  Jan Beulich  <jbeulich@suse.com>
+
+       * i386-dis.c: Adjust description of J macro.
+       (dis386, x86_64_table, mod_table): Replace J.
+       (putop): Remove handling of J.
+
 2020-06-25  Jan Beulich  <jbeulich@suse.com>
 
        * i386-dis.c: (float_mem): Reduce alternatives for fstpt and fldpt.
index 723bbb3a7df4a9cfb50426468aa68ac402584299..8964832ad2d2e01cce5432d25bce3734dfe68053 100644 (file)
@@ -2252,7 +2252,7 @@ struct dis386 {
    'H' => print ",pt" or ",pn" branch hint
    'I' => honor following macro letter even in Intel mode (implemented only
          for some of the macro letters)
-   'J' => print 'l'
+   'J' unused.
    'K' => print 'd' or 'q' if rex prefix is present.
    'L' => print 'l' if suffix_always is true
    'M' => print 'r' if intel_mnemonic is false.
@@ -2536,8 +2536,8 @@ static const struct dis386 dis386[] = {
   /* c8 */
   { "enterT",          { Iw, Ib }, 0 },
   { "leaveT",          { XX }, 0 },
-  { "Jret{|f}P",       { Iw }, 0 },
-  { "Jret{|f}P",       { XX }, 0 },
+  { "{l|}ret{|f}P",    { Iw }, 0 },
+  { "{l|}ret{|f}P",    { XX }, 0 },
   { "int3",            { XX }, 0 },
   { "int",             { Ib }, 0 },
   { X86_64_TABLE (X86_64_CE) },
@@ -6857,7 +6857,7 @@ static const struct dis386 x86_64_table[][2] = {
 
   /* X86_64_9A */
   {
-    { "Jcall{T|}", { Ap }, 0 },
+    { "{l|}call{T|}", { Ap }, 0 },
   },
 
   /* X86_64_C2 */
@@ -6913,7 +6913,7 @@ static const struct dis386 x86_64_table[][2] = {
 
   /* X86_64_EA */
   {
-    { "Jjmp{T|}", { Ap }, 0 },
+    { "{l|}jmp{T|}", { Ap }, 0 },
   },
 
   /* X86_64_0F01_REG_0 */
@@ -10180,11 +10180,11 @@ static const struct dis386 mod_table[][2] = {
   },
   {
     /* MOD_FF_REG_3 */
-    { "Jcall^", { indirEp }, 0 },
+    { "{l|}call^", { indirEp }, 0 },
   },
   {
     /* MOD_FF_REG_5 */
-    { "Jjmp^", { indirEp }, 0 },
+    { "{l|}jmp^", { indirEp }, 0 },
   },
   {
     /* MOD_0F01_REG_0 */
@@ -12867,11 +12867,6 @@ putop (const char *in_template, int sizeflag)
                *obufp++ = 'n';
            }
          break;
-       case 'J':
-         if (intel_syntax)
-           break;
-         *obufp++ = 'l';
-         break;
        case 'K':
          USED_REX (REX_W);
          if (rex & REX_W)