* config/tc-z8k.c (cons, obj_coff_section): Delete declarations.
authorAlan Modra <amodra@gmail.com>
Thu, 12 Dec 2002 21:27:58 +0000 (21:27 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 12 Dec 2002 21:27:58 +0000 (21:27 +0000)
(whatreg, parse_reg, parse_exp): Make static, prototype.
(checkfor, regword, regaddr, get_ctrl_operand): Prototype.
(get_flags_operand, get_interrupt_operand, get_cc_operand): Likewise.
(get_operand, get_operands, get_specific, newfix): Likewise.
(apply_fix, build_bytes): Likewise.
(md_atof): Remove declaration of atof_ieee.
(tc_aout_fix_to_chars): Delete.
(md_begin): Constify "opcode".  Don't try to init opcode->idx.
Fix s_unseg call.
(md_parse_option): Fix s_segm and s_unseg calls.

* z8kgen.c: Include "libiberty.h".
(opt, args, toks): Fix initializer warnings.
(chewname): Make "name" a char **.  Return mnemonic trimmed of
operands.
(gas): Improve emitted "DO NOT EDIT" warning.  Format emitted
opcode_entry_type, and make "nicename" and "name" const.  Make
z8k_table const too.  Formatting.  Generate idx as gas needs it.
* z8k-opc.h: Regenerate.

gas/ChangeLog
gas/config/tc-z8k.c
opcodes/ChangeLog
opcodes/z8k-opc.h
opcodes/z8kgen.c

index 4447873dcb4165575fcb67999df84dace2c437f8..3ffb9ca16b346695d8c909516cc13cb6358adcf8 100644 (file)
@@ -1,3 +1,17 @@
+2002-12-13  Alan Modra  <amodra@bigpond.net.au>
+
+       * config/tc-z8k.c (cons, obj_coff_section): Delete declarations.
+       (whatreg, parse_reg, parse_exp): Make static, prototype.
+       (checkfor, regword, regaddr, get_ctrl_operand): Prototype.
+       (get_flags_operand, get_interrupt_operand, get_cc_operand): Likewise.
+       (get_operand, get_operands, get_specific, newfix): Likewise.
+       (apply_fix, build_bytes): Likewise.
+       (md_atof): Remove declaration of atof_ieee.
+       (tc_aout_fix_to_chars): Delete.
+       (md_begin): Constify "opcode".  Don't try to init opcode->idx.
+       Fix s_unseg call.
+       (md_parse_option): Fix s_segm and s_unseg calls.
+
 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>
 
        * tc-mips.c (RELAX_BRANCH_ENCODE): Remove reloc_s2 argument.
@@ -14,8 +28,7 @@
        (md_convert_frag): Use only BFD_RELOC_16_PCREL_S2 for branches.
 
 2002-12-12  Alexandre Oliva  <aoliva@redhat.com>,
-
-       Alan Modra  <amodra@bigpond.net.au>
+           Alan Modra  <amodra@bigpond.net.au>
 
        * config/tc-mn10300.h (TC_VALIDATE_FIX_SUB): Define.
        (TC_LINKRELAX_FIXUP): Add comments.
index bde058ab652b8fbbd045370d25f2876e82eb1b14..a5dfb583c29ae70228aaf3fd45b2fe953d89c550 100644 (file)
@@ -38,18 +38,24 @@ extern int coff_flags;
 int segmented_mode;
 const int md_reloc_size;
 
-void cons ();
+static void s_segm PARAMS ((int));
+static void s_unseg PARAMS ((int));
+static void even PARAMS ((int));
+static int tohex PARAMS ((int));
+static void sval PARAMS ((int));
 
-void
-s_segm ()
+static void
+s_segm (ignore)
+     int ignore ATTRIBUTE_UNUSED;
 {
   segmented_mode = 1;
   machine = bfd_mach_z8001;
   coff_flags = F_Z8001;
 }
 
-void
-s_unseg ()
+static void
+s_unseg (ignore)
+     int ignore ATTRIBUTE_UNUSED;
 {
   segmented_mode = 0;
   machine = bfd_mach_z8002;
@@ -57,15 +63,14 @@ s_unseg ()
 }
 
 static void
-even ()
+even (ignore)
+     int ignore ATTRIBUTE_UNUSED;
 {
   frag_align (1, 0, 0);
   record_alignment (now_seg, 1);
 }
 
-void obj_coff_section ();
-
-int
+static int
 tohex (c)
      int c;
 {
@@ -76,8 +81,9 @@ tohex (c)
   return c - 'A' + 10;
 }
 
-void
-sval ()
+static void
+sval (ignore)
+     int ignore ATTRIBUTE_UNUSED;
 {
   SKIP_WHITESPACE ();
   if (*input_line_pointer == '\'')
@@ -149,26 +155,21 @@ static struct hash_control *opcode_hash_control;
 void
 md_begin ()
 {
-  opcode_entry_type *opcode;
-  char *prev_name = "";
-  int idx = 0;
+  const opcode_entry_type *opcode;
+  int idx = -1;
 
   opcode_hash_control = hash_new ();
 
   for (opcode = z8k_table; opcode->name; opcode++)
     {
       /* Only enter unique codes into the table.  */
-      if (strcmp (opcode->name, prev_name))
-       {
-         hash_insert (opcode_hash_control, opcode->name, (char *) opcode);
-         idx++;
-       }
-      opcode->idx = idx;
-      prev_name = opcode->name;
+      if (idx != opcode->idx)
+       hash_insert (opcode_hash_control, opcode->name, (char *) opcode);
+      idx = opcode->idx;
     }
 
   /* Default to z8002.  */
-  s_unseg ();
+  s_unseg (0);
 
   /* Insert the pseudo ops, too.  */
   for (idx = 0; md_pseudo_table[idx].poc_name; idx++)
@@ -215,7 +216,34 @@ int the_ctrl;
 int the_flags;
 int the_interrupt;
 
-char *
+static char *whatreg PARAMS ((int *, char *));
+static char *parse_reg PARAMS ((char *, int *, unsigned int *));
+static char *parse_exp PARAMS ((char *, expressionS *));
+static char *checkfor PARAMS ((char *, char));
+static void regword PARAMS ((int, char *));
+static void regaddr PARAMS ((int, char *));
+static void get_ctrl_operand
+  PARAMS ((char **, struct z8k_op *, unsigned int));
+static void get_flags_operand
+  PARAMS ((char **, struct z8k_op *, unsigned int));
+static void get_interrupt_operand
+  PARAMS ((char **, struct z8k_op *, unsigned int));
+static void get_cc_operand
+  PARAMS ((char **, struct z8k_op *, unsigned int));
+static void get_operand
+  PARAMS ((char **, struct z8k_op *, unsigned int));
+static char *get_operands
+  PARAMS ((const opcode_entry_type *, char *, op_type *));
+static opcode_entry_type *get_specific
+  PARAMS ((opcode_entry_type *, op_type *));
+static void newfix
+  PARAMS ((int, int, expressionS *));
+static char *apply_fix
+  PARAMS ((char *, int, expressionS *, int));
+static void build_bytes
+  PARAMS ((opcode_entry_type *, struct z8k_op *));
+
+static char *
 whatreg (reg, src)
      int *reg;
      char *src;
@@ -249,7 +277,7 @@ whatreg (reg, src)
 /* Try to parse a reg name.  Return a pointer to the first character
    in SRC after the reg name.  */
 
-char *
+static char *
 parse_reg (src, mode, reg)
      char *src;
      int *mode;
@@ -329,7 +357,7 @@ parse_reg (src, mode, reg)
   return res;
 }
 
-char *
+static char *
 parse_exp (s, op)
      char *s;
      expressionS *op;
@@ -724,7 +752,7 @@ get_operand (ptr, mode, dst)
 
 static char *
 get_operands (opcode, op_end, operand)
-     opcode_entry_type *opcode;
+     const opcode_entry_type *opcode;
      char *op_end;
      op_type *operand;
 {
@@ -825,7 +853,6 @@ static opcode_entry_type *
 get_specific (opcode, operands)
      opcode_entry_type *opcode;
      op_type *operands;
-
 {
   opcode_entry_type *this_try = opcode;
   int found = 0;
@@ -1288,7 +1315,6 @@ md_atof (type, litP, sizeP)
   LITTLENUM_TYPE words[MAX_LITTLENUMS];
   LITTLENUM_TYPE *wordP;
   char *t;
-  char *atof_ieee ();
 
   switch (type)
     {
@@ -1351,9 +1377,9 @@ md_parse_option (c, arg)
     {
     case 'z':
       if (!strcmp (arg, "8001"))
-       s_segm ();
+       s_segm (0);
       else if (!strcmp (arg, "8002"))
-       s_unseg ();
+       s_unseg (0);
       else
        {
          as_bad (_("invalid architecture -z%s"), arg);
@@ -1378,13 +1404,6 @@ Z8K options:\n\
 -z8002                 generate unsegmented code\n"));
 }
 \f
-void
-tc_aout_fix_to_chars ()
-{
-  printf (_("call to tc_aout_fix_to_chars \n"));
-  abort ();
-}
-
 void
 md_convert_frag (headers, seg, fragP)
      object_headers *headers ATTRIBUTE_UNUSED;
index 8ab4ea31de4bdbbec5eadbb62cc7c0d70640f5ae..a6ff9abf0b3f7d1dd83ebfd23ee16a555c6f565e 100644 (file)
@@ -1,3 +1,14 @@
+2002-12-13  Alan Modra  <amodra@bigpond.net.au>
+
+       * z8kgen.c: Include "libiberty.h".
+       (opt, args, toks): Fix initializer warnings.
+       (chewname): Make "name" a char **.  Return mnemonic trimmed of
+       operands.
+       (gas): Improve emitted "DO NOT EDIT" warning.  Format emitted
+       opcode_entry_type, and make "nicename" and "name" const.  Make
+       z8k_table const too.  Formatting.  Generate idx as gas needs it.
+       * z8k-opc.h: Regenerate.
+
 2002-12-08  Stephane Carrez  <stcarrez@nerim.fr>
 
        * m68hc11-dis.c (print_indexed_operand): Fix PC-relative address
index 0c73b8cd801e0a647ba647f77ababab203b34d13..022f58132057d8e54732a0f33f508a1f54ac34cf 100644 (file)
@@ -1,4 +1,6 @@
-                       /* THIS FILE IS AUTOMAGICALLY GENERATED, DON'T EDIT IT */
+/* DO NOT EDIT!  -*- buffer-read-only: t -*-
+   This file is automatically generated by z8kgen.  */
+
 #define ARG_MASK 0x0f
 #define ARG_SRC 0x01
 #define ARG_DST 0x02
 #define OPC_ldctlb 174
 #define OPC_sin 175
 #define OPC_trtdb 176
+
 typedef struct {
 #ifdef NICENAMES
-char *nicename;
-int type;
-int cycles;
-int flags;
-#endif
-char *name;
-unsigned char opcode;
-void (*func) PARAMS ((void));
-unsigned int arg_info[4];
-unsigned int byte_info[10];
-int noperands;
-int length;
-int idx;
+  const char *nicename;
+  int type;
+  int cycles;
+  int flags;
+#endif
+  const char *name;
+  unsigned char opcode;
+  void (*func) PARAMS ((void));
+  unsigned int arg_info[4];
+  unsigned int byte_info[10];
+  int noperands;
+  int length;
+  int idx;
 } opcode_entry_type;
+
 #ifdef DEFINE_TABLE
 const opcode_entry_type z8k_table[] = {
 
-
 /* 1011 0101 ssss dddd *** adc rd,rs */
 {
 #ifdef NICENAMES
-"adc rd,rs",16,5,
-0x3c,
+"adc rd,rs",16,5,0x3c,
 #endif
 "adc",OPC_adc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
        {CLASS_BIT+0xb,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,0},
 
-
 /* 1011 0100 ssss dddd *** adcb rbd,rbs */
 {
 #ifdef NICENAMES
-"adcb rbd,rbs",8,5,
-0x3f,
+"adcb rbd,rbs",8,5,0x3f,
 #endif
 "adcb",OPC_adcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
        {CLASS_BIT+0xb,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,1},
 
-
 /* 0000 0001 ssN0 dddd *** add rd,@rs */
 {
 #ifdef NICENAMES
-"add rd,@rs",16,7,
-0x3c,
+"add rd,@rs",16,7,0x3c,
 #endif
 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
        {CLASS_BIT+0,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
 
-
 /* 0100 0001 0000 dddd address_src *** add rd,address_src */
 {
 #ifdef NICENAMES
-"add rd,address_src",16,9,
-0x3c,
+"add rd,address_src",16,9,0x3c,
 #endif
 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
-
+       {CLASS_BIT+4,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,2},
 
 /* 0100 0001 ssN0 dddd address_src *** add rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"add rd,address_src(rs)",16,10,
-0x3c,
+"add rd,address_src(rs)",16,10,0x3c,
 #endif
 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
-
+       {CLASS_BIT+4,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,2},
 
 /* 0000 0001 0000 dddd imm16 *** add rd,imm16 */
 {
 #ifdef NICENAMES
-"add rd,imm16",16,7,
-0x3c,
+"add rd,imm16",16,7,0x3c,
 #endif
 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,5},
-
+       {CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,2},
 
 /* 1000 0001 ssss dddd *** add rd,rs */
 {
 #ifdef NICENAMES
-"add rd,rs",16,4,
-0x3c,
+"add rd,rs",16,4,0x3c,
 #endif
 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
-
+       {CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
 
 /* 0000 0000 ssN0 dddd *** addb rbd,@rs */
 {
 #ifdef NICENAMES
-"addb rbd,@rs",8,7,
-0x3f,
+"addb rbd,@rs",8,7,0x3f,
 #endif
 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,7},
-
+       {CLASS_BIT+0,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
 
 /* 0100 0000 0000 dddd address_src *** addb rbd,address_src */
 {
 #ifdef NICENAMES
-"addb rbd,address_src",8,9,
-0x3f,
+"addb rbd,address_src",8,9,0x3f,
 #endif
 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,8},
-
+       {CLASS_BIT+4,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
 
 /* 0100 0000 ssN0 dddd address_src *** addb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"addb rbd,address_src(rs)",8,10,
-0x3f,
+"addb rbd,address_src(rs)",8,10,0x3f,
 #endif
 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,9},
-
+       {CLASS_BIT+4,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
 
 /* 0000 0000 0000 dddd imm8 imm8 *** addb rbd,imm8 */
 {
 #ifdef NICENAMES
-"addb rbd,imm8",8,7,
-0x3f,
+"addb rbd,imm8",8,7,0x3f,
 #endif
 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,10},
-
+       {CLASS_BIT+0,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,3},
 
 /* 1000 0000 ssss dddd *** addb rbd,rbs */
 {
 #ifdef NICENAMES
-"addb rbd,rbs",8,4,
-0x3f,
+"addb rbd,rbs",8,4,0x3f,
 #endif
 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,11},
-
+       {CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
 
 /* 0001 0110 ssN0 dddd *** addl rrd,@rs */
 {
 #ifdef NICENAMES
-"addl rrd,@rs",32,14,
-0x3c,
+"addl rrd,@rs",32,14,0x3c,
 #endif
 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,12},
-
+       {CLASS_BIT+1,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
 
 /* 0101 0110 0000 dddd address_src *** addl rrd,address_src */
 {
 #ifdef NICENAMES
-"addl rrd,address_src",32,15,
-0x3c,
+"addl rrd,address_src",32,15,0x3c,
 #endif
 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,13},
-
+       {CLASS_BIT+5,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
 
 /* 0101 0110 ssN0 dddd address_src *** addl rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"addl rrd,address_src(rs)",32,16,
-0x3c,
+"addl rrd,address_src(rs)",32,16,0x3c,
 #endif
 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,14},
-
+       {CLASS_BIT+5,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
 
 /* 0001 0110 0000 dddd imm32 *** addl rrd,imm32 */
 {
 #ifdef NICENAMES
-"addl rrd,imm32",32,14,
-0x3c,
+"addl rrd,imm32",32,14,0x3c,
 #endif
 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,15},
-
+       {CLASS_BIT+1,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,4},
 
 /* 1001 0110 ssss dddd *** addl rrd,rrs */
 {
 #ifdef NICENAMES
-"addl rrd,rrs",32,8,
-0x3c,
+"addl rrd,rrs",32,8,0x3c,
 #endif
 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,16},
-
+       {CLASS_BIT+9,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
 
 /* 0000 0111 ssN0 dddd *** and rd,@rs */
 {
 #ifdef NICENAMES
-"and rd,@rs",16,7,
-0x18,
+"and rd,@rs",16,7,0x18,
 #endif
 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,17},
-
+       {CLASS_BIT+0,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
 
 /* 0100 0111 0000 dddd address_src *** and rd,address_src */
 {
 #ifdef NICENAMES
-"and rd,address_src",16,9,
-0x18,
+"and rd,address_src",16,9,0x18,
 #endif
 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
-
+       {CLASS_BIT+4,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,5},
 
 /* 0100 0111 ssN0 dddd address_src *** and rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"and rd,address_src(rs)",16,10,
-0x18,
+"and rd,address_src(rs)",16,10,0x18,
 #endif
 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,19},
-
+       {CLASS_BIT+4,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,5},
 
 /* 0000 0111 0000 dddd imm16 *** and rd,imm16 */
 {
 #ifdef NICENAMES
-"and rd,imm16",16,7,
-0x18,
+"and rd,imm16",16,7,0x18,
 #endif
 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,20},
-
+       {CLASS_BIT+0,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,5},
 
 /* 1000 0111 ssss dddd *** and rd,rs */
 {
 #ifdef NICENAMES
-"and rd,rs",16,4,
-0x18,
+"and rd,rs",16,4,0x18,
 #endif
 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,21},
-
+       {CLASS_BIT+8,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
 
 /* 0000 0110 ssN0 dddd *** andb rbd,@rs */
 {
 #ifdef NICENAMES
-"andb rbd,@rs",8,7,
-0x1c,
+"andb rbd,@rs",8,7,0x1c,
 #endif
 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,22},
-
+       {CLASS_BIT+0,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
 
 /* 0100 0110 0000 dddd address_src *** andb rbd,address_src */
 {
 #ifdef NICENAMES
-"andb rbd,address_src",8,9,
-0x1c,
+"andb rbd,address_src",8,9,0x1c,
 #endif
 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,23},
-
+       {CLASS_BIT+4,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,6},
 
 /* 0100 0110 ssN0 dddd address_src *** andb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"andb rbd,address_src(rs)",8,10,
-0x1c,
+"andb rbd,address_src(rs)",8,10,0x1c,
 #endif
 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,24},
-
+       {CLASS_BIT+4,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,6},
 
 /* 0000 0110 0000 dddd imm8 imm8 *** andb rbd,imm8 */
 {
 #ifdef NICENAMES
-"andb rbd,imm8",8,7,
-0x1c,
+"andb rbd,imm8",8,7,0x1c,
 #endif
 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,25},
-
+       {CLASS_BIT+0,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,6},
 
 /* 1000 0110 ssss dddd *** andb rbd,rbs */
 {
 #ifdef NICENAMES
-"andb rbd,rbs",8,4,
-0x1c,
+"andb rbd,rbs",8,4,0x1c,
 #endif
 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,26},
-
+       {CLASS_BIT+8,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
 
 /* 0010 0111 ddN0 imm4 *** bit @rd,imm4 */
 {
 #ifdef NICENAMES
-"bit @rd,imm4",16,8,
-0x10,
+"bit @rd,imm4",16,8,0x10,
 #endif
 "bit",OPC_bit,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,27},
-
+       {CLASS_BIT+2,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
 
 /* 0110 0111 ddN0 imm4 address_dst *** bit address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"bit address_dst(rd),imm4",16,11,
-0x10,
+"bit address_dst(rd),imm4",16,11,0x10,
 #endif
 "bit",OPC_bit,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,28},
-
+       {CLASS_BIT+6,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,7},
 
 /* 0110 0111 0000 imm4 address_dst *** bit address_dst,imm4 */
 {
 #ifdef NICENAMES
-"bit address_dst,imm4",16,10,
-0x10,
+"bit address_dst,imm4",16,10,0x10,
 #endif
 "bit",OPC_bit,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+7,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,29},
-
+       {CLASS_BIT+6,CLASS_BIT+7,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,7},
 
 /* 1010 0111 dddd imm4 *** bit rd,imm4 */
 {
 #ifdef NICENAMES
-"bit rd,imm4",16,4,
-0x10,
+"bit rd,imm4",16,4,0x10,
 #endif
 "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+7,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,30},
-
+       {CLASS_BIT+0xa,CLASS_BIT+7,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
 
 /* 0010 0111 0000 ssss 0000 dddd 0000 0000 *** bit rd,rs */
 {
 #ifdef NICENAMES
-"bit rd,rs",16,10,
-0x10,
+"bit rd,rs",16,10,0x10,
 #endif
 "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,31},
-
+       {CLASS_BIT+2,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,7},
 
 /* 0010 0110 ddN0 imm4 *** bitb @rd,imm4 */
 {
 #ifdef NICENAMES
-"bitb @rd,imm4",8,8,
-0x10,
+"bitb @rd,imm4",8,8,0x10,
 #endif
 "bitb",OPC_bitb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,32},
-
+       {CLASS_BIT+2,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
 
 /* 0110 0110 ddN0 imm4 address_dst *** bitb address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"bitb address_dst(rd),imm4",8,11,
-0x10,
+"bitb address_dst(rd),imm4",8,11,0x10,
 #endif
 "bitb",OPC_bitb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,33},
-
+       {CLASS_BIT+6,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,8},
 
 /* 0110 0110 0000 imm4 address_dst *** bitb address_dst,imm4 */
 {
 #ifdef NICENAMES
-"bitb address_dst,imm4",8,10,
-0x10,
+"bitb address_dst,imm4",8,10,0x10,
 #endif
 "bitb",OPC_bitb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+6,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,34},
-
+       {CLASS_BIT+6,CLASS_BIT+6,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,8},
 
 /* 1010 0110 dddd imm4 *** bitb rbd,imm4 */
 {
 #ifdef NICENAMES
-"bitb rbd,imm4",8,4,
-0x10,
+"bitb rbd,imm4",8,4,0x10,
 #endif
 "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+6,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,35},
-
+       {CLASS_BIT+0xa,CLASS_BIT+6,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
 
 /* 0010 0110 0000 ssss 0000 dddd 0000 0000 *** bitb rbd,rs */
 {
 #ifdef NICENAMES
-"bitb rbd,rs",8,10,
-0x10,
+"bitb rbd,rs",8,10,0x10,
 #endif
 "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,36},
-
+       {CLASS_BIT+2,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,8},
 
 /* 0011 0110 0000 0000 *** bpt */
 {
 #ifdef NICENAMES
-"bpt",8,2,
-0x00,
+"bpt",8,2,0x00,
 #endif
 "bpt",OPC_bpt,0,{0},
-       {CLASS_BIT+3,CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,37},
-
+       {CLASS_BIT+3,CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,9},
 
 /* 0001 1111 ddN0 0000 *** call @rd */
 {
 #ifdef NICENAMES
-"call @rd",32,10,
-0x00,
+"call @rd",32,10,0x00,
 #endif
 "call",OPC_call,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+1,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,38},
-
+       {CLASS_BIT+1,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,10},
 
 /* 0101 1111 0000 0000 address_dst *** call address_dst */
 {
 #ifdef NICENAMES
-"call address_dst",32,12,
-0x00,
+"call address_dst",32,12,0x00,
 #endif
 "call",OPC_call,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,39},
-
+       {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,10},
 
 /* 0101 1111 ddN0 0000 address_dst *** call address_dst(rd) */
 {
 #ifdef NICENAMES
-"call address_dst(rd)",32,13,
-0x00,
+"call address_dst(rd)",32,13,0x00,
 #endif
 "call",OPC_call,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,40},
-
+       {CLASS_BIT+5,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,10},
 
 /* 1101 disp12 *** calr disp12 */
 {
 #ifdef NICENAMES
-"calr disp12",16,10,
-0x00,
+"calr disp12",16,10,0x00,
 #endif
 "calr",OPC_calr,0,{CLASS_DISP,},
-       {CLASS_BIT+0xd,CLASS_DISP+(ARG_DISP12),0,0,0,0,0,0,0,},1,2,41},
-
+       {CLASS_BIT+0xd,CLASS_DISP+(ARG_DISP12),0,0,0,0,0,0,0,},1,2,11},
 
 /* 0000 1101 ddN0 1000 *** clr @rd */
 {
 #ifdef NICENAMES
-"clr @rd",16,8,
-0x00,
+"clr @rd",16,8,0x00,
 #endif
 "clr",OPC_clr,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,42},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,12},
 
 /* 0100 1101 0000 1000 address_dst *** clr address_dst */
 {
 #ifdef NICENAMES
-"clr address_dst",16,11,
-0x00,
+"clr address_dst",16,11,0x00,
 #endif
 "clr",OPC_clr,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,43},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,12},
 
 /* 0100 1101 ddN0 1000 address_dst *** clr address_dst(rd) */
 {
 #ifdef NICENAMES
-"clr address_dst(rd)",16,12,
-0x00,
+"clr address_dst(rd)",16,12,0x00,
 #endif
 "clr",OPC_clr,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,44},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,12},
 
 /* 1000 1101 dddd 1000 *** clr rd */
 {
 #ifdef NICENAMES
-"clr rd",16,7,
-0x00,
+"clr rd",16,7,0x00,
 #endif
 "clr",OPC_clr,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,45},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,12},
 
 /* 0000 1100 ddN0 1000 *** clrb @rd */
 {
 #ifdef NICENAMES
-"clrb @rd",8,8,
-0x00,
+"clrb @rd",8,8,0x00,
 #endif
 "clrb",OPC_clrb,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,46},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
 
 /* 0100 1100 0000 1000 address_dst *** clrb address_dst */
 {
 #ifdef NICENAMES
-"clrb address_dst",8,11,
-0x00,
+"clrb address_dst",8,11,0x00,
 #endif
 "clrb",OPC_clrb,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,47},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
 
 /* 0100 1100 ddN0 1000 address_dst *** clrb address_dst(rd) */
 {
 #ifdef NICENAMES
-"clrb address_dst(rd)",8,12,
-0x00,
+"clrb address_dst(rd)",8,12,0x00,
 #endif
 "clrb",OPC_clrb,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,48},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
 
 /* 1000 1100 dddd 1000 *** clrb rbd */
 {
 #ifdef NICENAMES
-"clrb rbd",8,7,
-0x00,
+"clrb rbd",8,7,0x00,
 #endif
 "clrb",OPC_clrb,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,49},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
 
 /* 0000 1101 ddN0 0000 *** com @rd */
 {
 #ifdef NICENAMES
-"com @rd",16,12,
-0x18,
+"com @rd",16,12,0x18,
 #endif
 "com",OPC_com,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,50},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,14},
 
 /* 0100 1101 0000 0000 address_dst *** com address_dst */
 {
 #ifdef NICENAMES
-"com address_dst",16,15,
-0x18,
+"com address_dst",16,15,0x18,
 #endif
 "com",OPC_com,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,51},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
 
 /* 0100 1101 ddN0 0000 address_dst *** com address_dst(rd) */
 {
 #ifdef NICENAMES
-"com address_dst(rd)",16,16,
-0x18,
+"com address_dst(rd)",16,16,0x18,
 #endif
 "com",OPC_com,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,52},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
 
 /* 1000 1101 dddd 0000 *** com rd */
 {
 #ifdef NICENAMES
-"com rd",16,7,
-0x18,
+"com rd",16,7,0x18,
 #endif
 "com",OPC_com,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,53},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,14},
 
 /* 0000 1100 ddN0 0000 *** comb @rd */
 {
 #ifdef NICENAMES
-"comb @rd",8,12,
-0x1c,
+"comb @rd",8,12,0x1c,
 #endif
 "comb",OPC_comb,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,54},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
 
 /* 0100 1100 0000 0000 address_dst *** comb address_dst */
 {
 #ifdef NICENAMES
-"comb address_dst",8,15,
-0x1c,
+"comb address_dst",8,15,0x1c,
 #endif
 "comb",OPC_comb,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,55},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
 
 /* 0100 1100 ddN0 0000 address_dst *** comb address_dst(rd) */
 {
 #ifdef NICENAMES
-"comb address_dst(rd)",8,16,
-0x1c,
+"comb address_dst(rd)",8,16,0x1c,
 #endif
 "comb",OPC_comb,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,56},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
 
 /* 1000 1100 dddd 0000 *** comb rbd */
 {
 #ifdef NICENAMES
-"comb rbd",8,7,
-0x1c,
+"comb rbd",8,7,0x1c,
 #endif
 "comb",OPC_comb,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,57},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
 
 /* 1000 1101 flags 0101 *** comflg flags */
 {
 #ifdef NICENAMES
-"comflg flags",16,7,
-0x3c,
+"comflg flags",16,7,0x3c,
 #endif
 "comflg",OPC_comflg,0,{CLASS_FLAGS,},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+5,0,0,0,0,0,},1,2,58},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+5,0,0,0,0,0,},1,2,16},
 
 /* 0000 1101 ddN0 0001 imm16 *** cp @rd,imm16 */
 {
 #ifdef NICENAMES
-"cp @rd,imm16",16,11,
-0x3c,
+"cp @rd,imm16",16,11,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,59},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,17},
 
 /* 0100 1101 ddN0 0001 address_dst imm16 *** cp address_dst(rd),imm16 */
 {
 #ifdef NICENAMES
-"cp address_dst(rd),imm16",16,15,
-0x3c,
+"cp address_dst(rd),imm16",16,15,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,60},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,17},
 
 /* 0100 1101 0000 0001 address_dst imm16 *** cp address_dst,imm16 */
 {
 #ifdef NICENAMES
-"cp address_dst,imm16",16,14,
-0x3c,
+"cp address_dst,imm16",16,14,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,61},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,17},
 
 /* 0000 1011 ssN0 dddd *** cp rd,@rs */
 {
 #ifdef NICENAMES
-"cp rd,@rs",16,7,
-0x3c,
+"cp rd,@rs",16,7,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,62},
-
+       {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,17},
 
 /* 0100 1011 0000 dddd address_src *** cp rd,address_src */
 {
 #ifdef NICENAMES
-"cp rd,address_src",16,9,
-0x3c,
+"cp rd,address_src",16,9,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,63},
-
+       {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,17},
 
 /* 0100 1011 ssN0 dddd address_src *** cp rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"cp rd,address_src(rs)",16,10,
-0x3c,
+"cp rd,address_src(rs)",16,10,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,64},
-
+       {CLASS_BIT+4,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,17},
 
 /* 0000 1011 0000 dddd imm16 *** cp rd,imm16 */
 {
 #ifdef NICENAMES
-"cp rd,imm16",16,7,
-0x3c,
+"cp rd,imm16",16,7,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,65},
-
+       {CLASS_BIT+0,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,17},
 
 /* 1000 1011 ssss dddd *** cp rd,rs */
 {
 #ifdef NICENAMES
-"cp rd,rs",16,4,
-0x3c,
+"cp rd,rs",16,4,0x3c,
 #endif
 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,66},
-
+       {CLASS_BIT+8,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,17},
 
 /* 0000 1100 ddN0 0001 imm8 imm8 *** cpb @rd,imm8 */
 {
 #ifdef NICENAMES
-"cpb @rd,imm8",8,11,
-0x3c,
+"cpb @rd,imm8",8,11,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,67},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,18},
 
 /* 0100 1100 ddN0 0001 address_dst imm8 imm8 *** cpb address_dst(rd),imm8 */
 {
 #ifdef NICENAMES
-"cpb address_dst(rd),imm8",8,15,
-0x3c,
+"cpb address_dst(rd),imm8",8,15,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,68},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,18},
 
 /* 0100 1100 0000 0001 address_dst imm8 imm8 *** cpb address_dst,imm8 */
 {
 #ifdef NICENAMES
-"cpb address_dst,imm8",8,14,
-0x3c,
+"cpb address_dst,imm8",8,14,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,69},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,18},
 
 /* 0000 1010 ssN0 dddd *** cpb rbd,@rs */
 {
 #ifdef NICENAMES
-"cpb rbd,@rs",8,7,
-0x3c,
+"cpb rbd,@rs",8,7,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,70},
-
+       {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
 
 /* 0100 1010 0000 dddd address_src *** cpb rbd,address_src */
 {
 #ifdef NICENAMES
-"cpb rbd,address_src",8,9,
-0x3c,
+"cpb rbd,address_src",8,9,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,71},
-
+       {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
 
 /* 0100 1010 ssN0 dddd address_src *** cpb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"cpb rbd,address_src(rs)",8,10,
-0x3c,
+"cpb rbd,address_src(rs)",8,10,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,72},
-
+       {CLASS_BIT+4,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
 
 /* 0000 1010 0000 dddd imm8 imm8 *** cpb rbd,imm8 */
 {
 #ifdef NICENAMES
-"cpb rbd,imm8",8,7,
-0x3c,
+"cpb rbd,imm8",8,7,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,73},
-
+       {CLASS_BIT+0,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,18},
 
 /* 1000 1010 ssss dddd *** cpb rbd,rbs */
 {
 #ifdef NICENAMES
-"cpb rbd,rbs",8,4,
-0x3c,
+"cpb rbd,rbs",8,4,0x3c,
 #endif
 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,74},
-
+       {CLASS_BIT+8,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
 
 /* 1011 1011 ssN0 1000 0000 rrrr dddd cccc *** cpd rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpd rd,@rs,rr,cc",16,11,
-0x3c,
+"cpd rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpd",OPC_cpd,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,75},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,19},
 
 /* 1011 1010 ssN0 1000 0000 rrrr dddd cccc *** cpdb rbd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpdb rbd,@rs,rr,cc",8,11,
-0x3c,
+"cpdb rbd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpdb",OPC_cpdb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,76},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,20},
 
 /* 1011 1011 ssN0 1100 0000 rrrr dddd cccc *** cpdr rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpdr rd,@rs,rr,cc",16,11,
-0x3c,
+"cpdr rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpdr",OPC_cpdr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,77},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,21},
 
 /* 1011 1010 ssN0 1100 0000 rrrr dddd cccc *** cpdrb rbd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpdrb rbd,@rs,rr,cc",8,11,
-0x3c,
+"cpdrb rbd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpdrb",OPC_cpdrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,78},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,22},
 
 /* 1011 1011 ssN0 0000 0000 rrrr dddd cccc *** cpi rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpi rd,@rs,rr,cc",16,11,
-0x3c,
+"cpi rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpi",OPC_cpi,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,79},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,23},
 
 /* 1011 1010 ssN0 0000 0000 rrrr dddd cccc *** cpib rbd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpib rbd,@rs,rr,cc",8,11,
-0x3c,
+"cpib rbd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpib",OPC_cpib,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,80},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,24},
 
 /* 1011 1011 ssN0 0100 0000 rrrr dddd cccc *** cpir rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpir rd,@rs,rr,cc",16,11,
-0x3c,
+"cpir rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpir",OPC_cpir,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,81},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,25},
 
 /* 1011 1010 ssN0 0100 0000 rrrr dddd cccc *** cpirb rbd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpirb rbd,@rs,rr,cc",8,11,
-0x3c,
+"cpirb rbd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpirb",OPC_cpirb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,82},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REG+(ARG_RD),CLASS_CC,0,},4,4,26},
 
 /* 0001 0000 ssN0 dddd *** cpl rrd,@rs */
 {
 #ifdef NICENAMES
-"cpl rrd,@rs",32,14,
-0x3c,
+"cpl rrd,@rs",32,14,0x3c,
 #endif
 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,83},
-
+       {CLASS_BIT+1,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,27},
 
 /* 0101 0000 0000 dddd address_src *** cpl rrd,address_src */
 {
 #ifdef NICENAMES
-"cpl rrd,address_src",32,15,
-0x3c,
+"cpl rrd,address_src",32,15,0x3c,
 #endif
 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,84},
-
+       {CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,27},
 
 /* 0101 0000 ssN0 dddd address_src *** cpl rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"cpl rrd,address_src(rs)",32,16,
-0x3c,
+"cpl rrd,address_src(rs)",32,16,0x3c,
 #endif
 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,85},
-
+       {CLASS_BIT+5,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,27},
 
 /* 0001 0000 0000 dddd imm32 *** cpl rrd,imm32 */
 {
 #ifdef NICENAMES
-"cpl rrd,imm32",32,14,
-0x3c,
+"cpl rrd,imm32",32,14,0x3c,
 #endif
 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,86},
-
+       {CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,27},
 
 /* 1001 0000 ssss dddd *** cpl rrd,rrs */
 {
 #ifdef NICENAMES
-"cpl rrd,rrs",32,8,
-0x3c,
+"cpl rrd,rrs",32,8,0x3c,
 #endif
 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,87},
-
+       {CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,27},
 
 /* 1011 1011 ssN0 1010 0000 rrrr ddN0 cccc *** cpsd @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsd @rd,@rs,rr,cc",16,11,
-0x3c,
+"cpsd @rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpsd",OPC_cpsd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,88},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,28},
 
 /* 1011 1010 ssN0 1010 0000 rrrr ddN0 cccc *** cpsdb @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsdb @rd,@rs,rr,cc",8,11,
-0x3c,
+"cpsdb @rd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpsdb",OPC_cpsdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,89},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,29},
 
 /* 1011 1011 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdr @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsdr @rd,@rs,rr,cc",16,11,
-0x3c,
+"cpsdr @rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpsdr",OPC_cpsdr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,90},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,30},
 
 /* 1011 1010 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdrb @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsdrb @rd,@rs,rr,cc",8,11,
-0x3c,
+"cpsdrb @rd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpsdrb",OPC_cpsdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,91},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,31},
 
 /* 1011 1011 ssN0 0010 0000 rrrr ddN0 cccc *** cpsi @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsi @rd,@rs,rr,cc",16,11,
-0x3c,
+"cpsi @rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpsi",OPC_cpsi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,92},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,32},
 
 /* 1011 1010 ssN0 0010 0000 rrrr ddN0 cccc *** cpsib @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsib @rd,@rs,rr,cc",8,11,
-0x3c,
+"cpsib @rd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpsib",OPC_cpsib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,93},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,33},
 
 /* 1011 1011 ssN0 0110 0000 rrrr ddN0 cccc *** cpsir @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsir @rd,@rs,rr,cc",16,11,
-0x3c,
+"cpsir @rd,@rs,rr,cc",16,11,0x3c,
 #endif
 "cpsir",OPC_cpsir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,94},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,34},
 
 /* 1011 1010 ssN0 0110 0000 rrrr ddN0 cccc *** cpsirb @rd,@rs,rr,cc */
 {
 #ifdef NICENAMES
-"cpsirb @rd,@rs,rr,cc",8,11,
-0x3c,
+"cpsirb @rd,@rs,rr,cc",8,11,0x3c,
 #endif
 "cpsirb",OPC_cpsirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,95},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_CC,0,},4,4,35},
 
 /* 1011 0000 dddd 0000 *** dab rbd */
 {
 #ifdef NICENAMES
-"dab rbd",8,5,
-0x38,
+"dab rbd",8,5,0x38,
 #endif
 "dab",OPC_dab,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,96},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,36},
 
 /* 1111 dddd 0disp7 *** dbjnz rbd,disp7 */
 {
 #ifdef NICENAMES
-"dbjnz rbd,disp7",16,11,
-0x00,
+"dbjnz rbd,disp7",16,11,0x00,
 #endif
 "dbjnz",OPC_dbjnz,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_0DISP7,0,0,0,0,0,0,},2,2,97},
-
+       {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_0DISP7,0,0,0,0,0,0,},2,2,37},
 
 /* 0010 1011 ddN0 imm4m1 *** dec @rd,imm4m1 */
 {
 #ifdef NICENAMES
-"dec @rd,imm4m1",16,11,
-0x1c,
+"dec @rd,imm4m1",16,11,0x1c,
 #endif
 "dec",OPC_dec,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+2,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,98},
-
+       {CLASS_BIT+2,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,38},
 
 /* 0110 1011 ddN0 imm4m1 address_dst *** dec address_dst(rd),imm4m1 */
 {
 #ifdef NICENAMES
-"dec address_dst(rd),imm4m1",16,14,
-0x1c,
+"dec address_dst(rd),imm4m1",16,14,0x1c,
 #endif
 "dec",OPC_dec,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,99},
-
+       {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,38},
 
 /* 0110 1011 0000 imm4m1 address_dst *** dec address_dst,imm4m1 */
 {
 #ifdef NICENAMES
-"dec address_dst,imm4m1",16,13,
-0x1c,
+"dec address_dst,imm4m1",16,13,0x1c,
 #endif
 "dec",OPC_dec,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,100},
-
+       {CLASS_BIT+6,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,38},
 
 /* 1010 1011 dddd imm4m1 *** dec rd,imm4m1 */
 {
 #ifdef NICENAMES
-"dec rd,imm4m1",16,4,
-0x1c,
+"dec rd,imm4m1",16,4,0x1c,
 #endif
 "dec",OPC_dec,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,101},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,38},
 
 /* 0010 1010 ddN0 imm4m1 *** decb @rd,imm4m1 */
 {
 #ifdef NICENAMES
-"decb @rd,imm4m1",8,11,
-0x1c,
+"decb @rd,imm4m1",8,11,0x1c,
 #endif
 "decb",OPC_decb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+2,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,102},
-
+       {CLASS_BIT+2,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
 
 /* 0110 1010 ddN0 imm4m1 address_dst *** decb address_dst(rd),imm4m1 */
 {
 #ifdef NICENAMES
-"decb address_dst(rd),imm4m1",8,14,
-0x1c,
+"decb address_dst(rd),imm4m1",8,14,0x1c,
 #endif
 "decb",OPC_decb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,103},
-
+       {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
 
 /* 0110 1010 0000 imm4m1 address_dst *** decb address_dst,imm4m1 */
 {
 #ifdef NICENAMES
-"decb address_dst,imm4m1",8,13,
-0x1c,
+"decb address_dst,imm4m1",8,13,0x1c,
 #endif
 "decb",OPC_decb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,104},
-
+       {CLASS_BIT+6,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
 
 /* 1010 1010 dddd imm4m1 *** decb rbd,imm4m1 */
 {
 #ifdef NICENAMES
-"decb rbd,imm4m1",8,4,
-0x1c,
+"decb rbd,imm4m1",8,4,0x1c,
 #endif
 "decb",OPC_decb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,105},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
 
 /* 0111 1100 0000 00ii *** di i2 */
 {
 #ifdef NICENAMES
-"di i2",16,7,
-0x00,
+"di i2",16,7,0x00,
 #endif
 "di",OPC_di,0,{CLASS_IMM+(ARG_IMM2),},
-       {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_00II,0,0,0,0,0,},1,2,106},
-
+       {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_00II,0,0,0,0,0,},1,2,40},
 
 /* 0001 1011 ssN0 dddd *** div rrd,@rs */
 {
 #ifdef NICENAMES
-"div rrd,@rs",16,107,
-0x3c,
+"div rrd,@rs",16,107,0x3c,
 #endif
 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,107},
-
+       {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,41},
 
 /* 0101 1011 0000 dddd address_src *** div rrd,address_src */
 {
 #ifdef NICENAMES
-"div rrd,address_src",16,107,
-0x3c,
+"div rrd,address_src",16,107,0x3c,
 #endif
 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,108},
-
+       {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,41},
 
 /* 0101 1011 ssN0 dddd address_src *** div rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"div rrd,address_src(rs)",16,107,
-0x3c,
+"div rrd,address_src(rs)",16,107,0x3c,
 #endif
 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,109},
-
+       {CLASS_BIT+5,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,41},
 
 /* 0001 1011 0000 dddd imm16 *** div rrd,imm16 */
 {
 #ifdef NICENAMES
-"div rrd,imm16",16,107,
-0x3c,
+"div rrd,imm16",16,107,0x3c,
 #endif
 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,110},
-
+       {CLASS_BIT+1,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,41},
 
 /* 1001 1011 ssss dddd *** div rrd,rs */
 {
 #ifdef NICENAMES
-"div rrd,rs",16,107,
-0x3c,
+"div rrd,rs",16,107,0x3c,
 #endif
 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,111},
-
+       {CLASS_BIT+9,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,41},
 
 /* 0001 1010 ssN0 dddd *** divl rqd,@rs */
 {
 #ifdef NICENAMES
-"divl rqd,@rs",32,744,
-0x3c,
+"divl rqd,@rs",32,744,0x3c,
 #endif
 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,112},
-
+       {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
 
 /* 0101 1010 0000 dddd address_src *** divl rqd,address_src */
 {
 #ifdef NICENAMES
-"divl rqd,address_src",32,745,
-0x3c,
+"divl rqd,address_src",32,745,0x3c,
 #endif
 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,113},
-
+       {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
 
 /* 0101 1010 ssN0 dddd address_src *** divl rqd,address_src(rs) */
 {
 #ifdef NICENAMES
-"divl rqd,address_src(rs)",32,746,
-0x3c,
+"divl rqd,address_src(rs)",32,746,0x3c,
 #endif
 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,114},
-
+       {CLASS_BIT+5,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
 
 /* 0001 1010 0000 dddd imm32 *** divl rqd,imm32 */
 {
 #ifdef NICENAMES
-"divl rqd,imm32",32,744,
-0x3c,
+"divl rqd,imm32",32,744,0x3c,
 #endif
 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,115},
-
+       {CLASS_BIT+1,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,42},
 
 /* 1001 1010 ssss dddd *** divl rqd,rrs */
 {
 #ifdef NICENAMES
-"divl rqd,rrs",32,744,
-0x3c,
+"divl rqd,rrs",32,744,0x3c,
 #endif
 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,116},
-
+       {CLASS_BIT+9,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
 
 /* 1111 dddd 1disp7 *** djnz rd,disp7 */
 {
 #ifdef NICENAMES
-"djnz rd,disp7",16,11,
-0x00,
+"djnz rd,disp7",16,11,0x00,
 #endif
 "djnz",OPC_djnz,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_1DISP7,0,0,0,0,0,0,},2,2,117},
-
+       {CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_1DISP7,0,0,0,0,0,0,},2,2,43},
 
 /* 0111 1100 0000 01ii *** ei i2 */
 {
 #ifdef NICENAMES
-"ei i2",16,7,
-0x00,
+"ei i2",16,7,0x00,
 #endif
 "ei",OPC_ei,0,{CLASS_IMM+(ARG_IMM2),},
-       {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_01II,0,0,0,0,0,},1,2,118},
-
+       {CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_01II,0,0,0,0,0,},1,2,44},
 
 /* 0010 1101 ssN0 dddd *** ex rd,@rs */
 {
 #ifdef NICENAMES
-"ex rd,@rs",16,12,
-0x00,
+"ex rd,@rs",16,12,0x00,
 #endif
 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,119},
-
+       {CLASS_BIT+2,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,45},
 
 /* 0110 1101 0000 dddd address_src *** ex rd,address_src */
 {
 #ifdef NICENAMES
-"ex rd,address_src",16,15,
-0x00,
+"ex rd,address_src",16,15,0x00,
 #endif
 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,120},
-
+       {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,45},
 
 /* 0110 1101 ssN0 dddd address_src *** ex rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"ex rd,address_src(rs)",16,16,
-0x00,
+"ex rd,address_src(rs)",16,16,0x00,
 #endif
 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,121},
-
+       {CLASS_BIT+6,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,45},
 
 /* 1010 1101 ssss dddd *** ex rd,rs */
 {
 #ifdef NICENAMES
-"ex rd,rs",16,6,
-0x00,
+"ex rd,rs",16,6,0x00,
 #endif
 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,122},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,45},
 
 /* 0010 1100 ssN0 dddd *** exb rbd,@rs */
 {
 #ifdef NICENAMES
-"exb rbd,@rs",8,12,
-0x00,
+"exb rbd,@rs",8,12,0x00,
 #endif
 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,123},
-
+       {CLASS_BIT+2,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
 
 /* 0110 1100 0000 dddd address_src *** exb rbd,address_src */
 {
 #ifdef NICENAMES
-"exb rbd,address_src",8,15,
-0x00,
+"exb rbd,address_src",8,15,0x00,
 #endif
 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,124},
-
+       {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
 
 /* 0110 1100 ssN0 dddd address_src *** exb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"exb rbd,address_src(rs)",8,16,
-0x00,
+"exb rbd,address_src(rs)",8,16,0x00,
 #endif
 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,125},
-
+       {CLASS_BIT+6,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
 
 /* 1010 1100 ssss dddd *** exb rbd,rbs */
 {
 #ifdef NICENAMES
-"exb rbd,rbs",8,6,
-0x00,
+"exb rbd,rbs",8,6,0x00,
 #endif
 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,126},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
 
 /* 0000 1110 imm8 *** ext0e imm8 */
 {
 #ifdef NICENAMES
-"ext0e imm8",8,10,
-0x00,
+"ext0e imm8",8,10,0x00,
 #endif
 "ext0e",OPC_ext0e,0,{CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,127},
-
+       {CLASS_BIT+0,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,47},
 
 /* 0000 1111 imm8 *** ext0f imm8 */
 {
 #ifdef NICENAMES
-"ext0f imm8",8,10,
-0x00,
+"ext0f imm8",8,10,0x00,
 #endif
 "ext0f",OPC_ext0f,0,{CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,128},
-
+       {CLASS_BIT+0,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,48},
 
 /* 1000 1110 imm8 *** ext8e imm8 */
 {
 #ifdef NICENAMES
-"ext8e imm8",8,10,
-0x00,
+"ext8e imm8",8,10,0x00,
 #endif
 "ext8e",OPC_ext8e,0,{CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+8,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,129},
-
+       {CLASS_BIT+8,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,49},
 
 /* 1000 1111 imm8 *** ext8f imm8 */
 {
 #ifdef NICENAMES
-"ext8f imm8",8,10,
-0x00,
+"ext8f imm8",8,10,0x00,
 #endif
 "ext8f",OPC_ext8f,0,{CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+8,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,130},
-
+       {CLASS_BIT+8,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,50},
 
 /* 1011 0001 dddd 1010 *** exts rrd */
 {
 #ifdef NICENAMES
-"exts rrd",16,11,
-0x00,
+"exts rrd",16,11,0x00,
 #endif
 "exts",OPC_exts,0,{CLASS_REG_LONG+(ARG_RD),},
-       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0xa,0,0,0,0,0,},1,2,131},
-
+       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0xa,0,0,0,0,0,},1,2,51},
 
 /* 1011 0001 dddd 0000 *** extsb rd */
 {
 #ifdef NICENAMES
-"extsb rd",8,11,
-0x00,
+"extsb rd",8,11,0x00,
 #endif
 "extsb",OPC_extsb,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,132},
-
+       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,52},
 
 /* 1011 0001 dddd 0111 *** extsl rqd */
 {
 #ifdef NICENAMES
-"extsl rqd",32,11,
-0x00,
+"extsl rqd",32,11,0x00,
 #endif
 "extsl",OPC_extsl,0,{CLASS_REG_QUAD+(ARG_RD),},
-       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+7,0,0,0,0,0,},1,2,133},
-
+       {CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+7,0,0,0,0,0,},1,2,53},
 
 /* 0111 1010 0000 0000 *** halt */
 {
 #ifdef NICENAMES
-"halt",16,8,
-0x00,
+"halt",16,8,0x00,
 #endif
 "halt",OPC_halt,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,134},
-
+       {CLASS_BIT+7,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,54},
 
 /* 0011 1101 ssN0 dddd *** in rd,@rs */
 {
 #ifdef NICENAMES
-"in rd,@rs",16,10,
-0x00,
+"in rd,@rs",16,10,0x00,
 #endif
 "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,135},
-
+       {CLASS_BIT+3,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,55},
 
 /* 0011 1011 dddd 0100 imm16 *** in rd,imm16 */
 {
 #ifdef NICENAMES
-"in rd,imm16",16,12,
-0x00,
+"in rd,imm16",16,12,0x00,
 #endif
 "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,136},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,55},
 
 /* 0011 1100 ssN0 dddd *** inb rbd,@rs */
 {
 #ifdef NICENAMES
-"inb rbd,@rs",8,12,
-0x00,
+"inb rbd,@rs",8,12,0x00,
 #endif
 "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,137},
-
+       {CLASS_BIT+3,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,56},
 
 /* 0011 1010 dddd 0100 imm16 *** inb rbd,imm16 */
 {
 #ifdef NICENAMES
-"inb rbd,imm16",8,10,
-0x00,
+"inb rbd,imm16",8,10,0x00,
 #endif
 "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,138},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,56},
 
 /* 0010 1001 ddN0 imm4m1 *** inc @rd,imm4m1 */
 {
 #ifdef NICENAMES
-"inc @rd,imm4m1",16,11,
-0x1c,
+"inc @rd,imm4m1",16,11,0x1c,
 #endif
 "inc",OPC_inc,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+2,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,139},
-
+       {CLASS_BIT+2,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,57},
 
 /* 0110 1001 ddN0 imm4m1 address_dst *** inc address_dst(rd),imm4m1 */
 {
 #ifdef NICENAMES
-"inc address_dst(rd),imm4m1",16,14,
-0x1c,
+"inc address_dst(rd),imm4m1",16,14,0x1c,
 #endif
 "inc",OPC_inc,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,140},
-
+       {CLASS_BIT+6,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,57},
 
 /* 0110 1001 0000 imm4m1 address_dst *** inc address_dst,imm4m1 */
 {
 #ifdef NICENAMES
-"inc address_dst,imm4m1",16,13,
-0x1c,
+"inc address_dst,imm4m1",16,13,0x1c,
 #endif
 "inc",OPC_inc,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+9,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,141},
-
+       {CLASS_BIT+6,CLASS_BIT+9,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,57},
 
 /* 1010 1001 dddd imm4m1 *** inc rd,imm4m1 */
 {
 #ifdef NICENAMES
-"inc rd,imm4m1",16,4,
-0x1c,
+"inc rd,imm4m1",16,4,0x1c,
 #endif
 "inc",OPC_inc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+0xa,CLASS_BIT+9,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,142},
-
+       {CLASS_BIT+0xa,CLASS_BIT+9,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,57},
 
 /* 0010 1000 ddN0 imm4m1 *** incb @rd,imm4m1 */
 {
 #ifdef NICENAMES
-"incb @rd,imm4m1",8,11,
-0x1c,
+"incb @rd,imm4m1",8,11,0x1c,
 #endif
 "incb",OPC_incb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+2,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,143},
-
+       {CLASS_BIT+2,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
 
 /* 0110 1000 ddN0 imm4m1 address_dst *** incb address_dst(rd),imm4m1 */
 {
 #ifdef NICENAMES
-"incb address_dst(rd),imm4m1",8,14,
-0x1c,
+"incb address_dst(rd),imm4m1",8,14,0x1c,
 #endif
 "incb",OPC_incb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,144},
-
+       {CLASS_BIT+6,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
 
 /* 0110 1000 0000 imm4m1 address_dst *** incb address_dst,imm4m1 */
 {
 #ifdef NICENAMES
-"incb address_dst,imm4m1",8,13,
-0x1c,
+"incb address_dst,imm4m1",8,13,0x1c,
 #endif
 "incb",OPC_incb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+6,CLASS_BIT+8,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,145},
-
+       {CLASS_BIT+6,CLASS_BIT+8,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
 
 /* 1010 1000 dddd imm4m1 *** incb rbd,imm4m1 */
 {
 #ifdef NICENAMES
-"incb rbd,imm4m1",8,4,
-0x1c,
+"incb rbd,imm4m1",8,4,0x1c,
 #endif
 "incb",OPC_incb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
-       {CLASS_BIT+0xa,CLASS_BIT+8,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,146},
-
+       {CLASS_BIT+0xa,CLASS_BIT+8,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
 
 /* 0011 1011 ssN0 1000 0000 aaaa ddN0 1000 *** ind @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"ind @rd,@rs,ra",16,21,
-0x04,
+"ind @rd,@rs,ra",16,21,0x04,
 #endif
 "ind",OPC_ind,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,147},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,59},
 
 /* 0011 1010 ssN0 1000 0000 aaaa ddN0 1000 *** indb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"indb @rd,@rs,rba",8,21,
-0x04,
+"indb @rd,@rs,rba",8,21,0x04,
 #endif
 "indb",OPC_indb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,148},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,60},
 
 /* 0011 1010 ssN0 0000 0000 aaaa ddN0 1000 *** inib @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"inib @rd,@rs,ra",8,21,
-0x04,
+"inib @rd,@rs,ra",8,21,0x04,
 #endif
 "inib",OPC_inib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,149},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,61},
 
 /* 0011 1010 ssN0 0000 0000 aaaa ddN0 0000 *** inibr @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"inibr @rd,@rs,ra",16,21,
-0x04,
+"inibr @rd,@rs,ra",16,21,0x04,
 #endif
 "inibr",OPC_inibr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,150},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,62},
 
 /* 0111 1011 0000 0000 *** iret */
 {
 #ifdef NICENAMES
-"iret",16,13,
-0x3f,
+"iret",16,13,0x3f,
 #endif
 "iret",OPC_iret,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,151},
-
+       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,63},
 
 /* 0001 1110 ddN0 cccc *** jp cc,@rd */
 {
 #ifdef NICENAMES
-"jp cc,@rd",16,10,
-0x00,
+"jp cc,@rd",16,10,0x00,
 #endif
 "jp",OPC_jp,0,{CLASS_CC,CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+1,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,152},
-
+       {CLASS_BIT+1,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,64},
 
 /* 0101 1110 0000 cccc address_dst *** jp cc,address_dst */
 {
 #ifdef NICENAMES
-"jp cc,address_dst",16,7,
-0x00,
+"jp cc,address_dst",16,7,0x00,
 #endif
 "jp",OPC_jp,0,{CLASS_CC,CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,153},
-
+       {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,64},
 
 /* 0101 1110 ddN0 cccc address_dst *** jp cc,address_dst(rd) */
 {
 #ifdef NICENAMES
-"jp cc,address_dst(rd)",16,8,
-0x00,
+"jp cc,address_dst(rd)",16,8,0x00,
 #endif
 "jp",OPC_jp,0,{CLASS_CC,CLASS_X+(ARG_RD),},
-       {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,154},
-
+       {CLASS_BIT+5,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,64},
 
 /* 1110 cccc disp8 *** jr cc,disp8 */
 {
 #ifdef NICENAMES
-"jr cc,disp8",16,6,
-0x00,
+"jr cc,disp8",16,6,0x00,
 #endif
 "jr",OPC_jr,0,{CLASS_CC,CLASS_DISP,},
-       {CLASS_BIT+0xe,CLASS_CC,CLASS_DISP8,0,0,0,0,0,0,},2,2,155},
-
+       {CLASS_BIT+0xe,CLASS_CC,CLASS_DISP8,0,0,0,0,0,0,},2,2,65},
 
 /* 0000 1101 ddN0 0101 imm16 *** ld @rd,imm16 */
 {
 #ifdef NICENAMES
-"ld @rd,imm16",16,7,
-0x00,
+"ld @rd,imm16",16,7,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,156},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,66},
 
 /* 0010 1111 ddN0 ssss *** ld @rd,rs */
 {
 #ifdef NICENAMES
-"ld @rd,rs",16,8,
-0x00,
+"ld @rd,rs",16,8,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,157},
-
+       {CLASS_BIT+2,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,66},
 
 /* 0100 1101 ddN0 0101 address_dst imm16 *** ld address_dst(rd),imm16 */
 {
 #ifdef NICENAMES
-"ld address_dst(rd),imm16",16,15,
-0x00,
+"ld address_dst(rd),imm16",16,15,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,158},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,66},
 
 /* 0110 1111 ddN0 ssss address_dst *** ld address_dst(rd),rs */
 {
 #ifdef NICENAMES
-"ld address_dst(rd),rs",16,12,
-0x00,
+"ld address_dst(rd),rs",16,12,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,159},
-
+       {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,66},
 
 /* 0100 1101 0000 0101 address_dst imm16 *** ld address_dst,imm16 */
 {
 #ifdef NICENAMES
-"ld address_dst,imm16",16,14,
-0x00,
+"ld address_dst,imm16",16,14,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,160},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM16),0,0,0,},2,6,66},
 
 /* 0110 1111 0000 ssss address_dst *** ld address_dst,rs */
 {
 #ifdef NICENAMES
-"ld address_dst,rs",16,11,
-0x00,
+"ld address_dst,rs",16,11,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,161},
-
+       {CLASS_BIT+6,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,66},
 
 /* 0011 0011 ddN0 ssss imm16 *** ld rd(imm16),rs */
 {
 #ifdef NICENAMES
-"ld rd(imm16),rs",16,14,
-0x00,
+"ld rd(imm16),rs",16,14,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_BA+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,162},
-
+       {CLASS_BIT+3,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,66},
 
 /* 0111 0011 ddN0 ssss 0000 xxxx 0000 0000 *** ld rd(rx),rs */
 {
 #ifdef NICENAMES
-"ld rd(rx),rs",16,14,
-0x00,
+"ld rd(rx),rs",16,14,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_BX+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,163},
-
+       {CLASS_BIT+7,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,66},
 
 /* 0010 0001 ssN0 dddd *** ld rd,@rs */
 {
 #ifdef NICENAMES
-"ld rd,@rs",16,7,
-0x00,
+"ld rd,@rs",16,7,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,164},
-
+       {CLASS_BIT+2,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,66},
 
 /* 0110 0001 0000 dddd address_src *** ld rd,address_src */
 {
 #ifdef NICENAMES
-"ld rd,address_src",16,9,
-0x00,
+"ld rd,address_src",16,9,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+6,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,165},
-
+       {CLASS_BIT+6,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,66},
 
 /* 0110 0001 ssN0 dddd address_src *** ld rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"ld rd,address_src(rs)",16,10,
-0x00,
+"ld rd,address_src(rs)",16,10,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,166},
-
+       {CLASS_BIT+6,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,66},
 
 /* 0010 0001 0000 dddd imm16 *** ld rd,imm16 */
 {
 #ifdef NICENAMES
-"ld rd,imm16",16,7,
-0x00,
+"ld rd,imm16",16,7,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+2,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,167},
-
+       {CLASS_BIT+2,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,66},
 
 /* 1010 0001 ssss dddd *** ld rd,rs */
 {
 #ifdef NICENAMES
-"ld rd,rs",16,3,
-0x00,
+"ld rd,rs",16,3,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xa,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,168},
-
+       {CLASS_BIT+0xa,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,66},
 
 /* 0011 0001 ssN0 dddd imm16 *** ld rd,rs(imm16) */
 {
 #ifdef NICENAMES
-"ld rd,rs(imm16)",16,14,
-0x00,
+"ld rd,rs(imm16)",16,14,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BA+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,169},
-
+       {CLASS_BIT+3,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,66},
 
 /* 0111 0001 ssN0 dddd 0000 xxxx 0000 0000 *** ld rd,rs(rx) */
 {
 #ifdef NICENAMES
-"ld rd,rs(rx)",16,14,
-0x00,
+"ld rd,rs(rx)",16,14,0x00,
 #endif
 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BX+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,170},
-
+       {CLASS_BIT+7,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,66},
 
 /* 0111 0110 0000 dddd address_src *** lda prd,address_src */
 {
 #ifdef NICENAMES
-"lda prd,address_src",16,12,
-0x00,
+"lda prd,address_src",16,12,0x00,
 #endif
 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+7,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,171},
-
+       {CLASS_BIT+7,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,67},
 
 /* 0111 0110 ssN0 dddd address_src *** lda prd,address_src(rs) */
 {
 #ifdef NICENAMES
-"lda prd,address_src(rs)",16,13,
-0x00,
+"lda prd,address_src(rs)",16,13,0x00,
 #endif
 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,172},
-
+       {CLASS_BIT+7,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,67},
 
 /* 0011 0100 ssN0 dddd imm16 *** lda prd,rs(imm16) */
 {
 #ifdef NICENAMES
-"lda prd,rs(imm16)",16,15,
-0x00,
+"lda prd,rs(imm16)",16,15,0x00,
 #endif
 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BA+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,173},
-
+       {CLASS_BIT+3,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,67},
 
 /* 0111 0100 ssN0 dddd 0000 xxxx 0000 0000 *** lda prd,rs(rx) */
 {
 #ifdef NICENAMES
-"lda prd,rs(rx)",16,15,
-0x00,
+"lda prd,rs(rx)",16,15,0x00,
 #endif
 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BX+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,174},
-
+       {CLASS_BIT+7,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,67},
 
 /* 0011 0100 0000 dddd disp16 *** ldar prd,disp16 */
 {
 #ifdef NICENAMES
-"ldar prd,disp16",16,15,
-0x00,
+"ldar prd,disp16",16,15,0x00,
 #endif
 "ldar",OPC_ldar,0,{CLASS_PR+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+3,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,175},
-
+       {CLASS_BIT+3,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,68},
 
 /* 0000 1100 ddN0 0101 imm8 imm8 *** ldb @rd,imm8 */
 {
 #ifdef NICENAMES
-"ldb @rd,imm8",8,7,
-0x00,
+"ldb @rd,imm8",8,7,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,176},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,69},
 
 /* 0010 1110 ddN0 ssss *** ldb @rd,rbs */
 {
 #ifdef NICENAMES
-"ldb @rd,rbs",8,8,
-0x00,
+"ldb @rd,rbs",8,8,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,177},
-
+       {CLASS_BIT+2,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,69},
 
 /* 0100 1100 ddN0 0101 address_dst imm8 imm8 *** ldb address_dst(rd),imm8 */
 {
 #ifdef NICENAMES
-"ldb address_dst(rd),imm8",8,15,
-0x00,
+"ldb address_dst(rd),imm8",8,15,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,178},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,69},
 
 /* 0110 1110 ddN0 ssss address_dst *** ldb address_dst(rd),rbs */
 {
 #ifdef NICENAMES
-"ldb address_dst(rd),rbs",8,12,
-0x00,
+"ldb address_dst(rd),rbs",8,12,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,179},
-
+       {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
 
 /* 0100 1100 0000 0101 address_dst imm8 imm8 *** ldb address_dst,imm8 */
 {
 #ifdef NICENAMES
-"ldb address_dst,imm8",8,14,
-0x00,
+"ldb address_dst,imm8",8,14,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,180},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+5,CLASS_ADDRESS+(ARG_DST),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,},2,6,69},
 
 /* 0110 1110 0000 ssss address_dst *** ldb address_dst,rbs */
 {
 #ifdef NICENAMES
-"ldb address_dst,rbs",8,11,
-0x00,
+"ldb address_dst,rbs",8,11,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,181},
-
+       {CLASS_BIT+6,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
 
 /* 0010 0000 ssN0 dddd *** ldb rbd,@rs */
 {
 #ifdef NICENAMES
-"ldb rbd,@rs",8,7,
-0x00,
+"ldb rbd,@rs",8,7,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,182},
-
+       {CLASS_BIT+2,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,69},
 
 /* 0110 0000 0000 dddd address_src *** ldb rbd,address_src */
 {
 #ifdef NICENAMES
-"ldb rbd,address_src",8,9,
-0x00,
+"ldb rbd,address_src",8,9,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,183},
-
+       {CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,69},
 
 /* 0110 0000 ssN0 dddd address_src *** ldb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"ldb rbd,address_src(rs)",8,10,
-0x00,
+"ldb rbd,address_src(rs)",8,10,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+6,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,184},
-
+       {CLASS_BIT+6,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,69},
 
 /* 1100 dddd imm8 *** ldb rbd,imm8 */
 {
 #ifdef NICENAMES
-"ldb rbd,imm8",8,5,
-0x00,
+"ldb rbd,imm8",8,5,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},2,2,185},
-
+       {CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},2,2,69},
 
 /* 1010 0000 ssss dddd *** ldb rbd,rbs */
 {
 #ifdef NICENAMES
-"ldb rbd,rbs",8,3,
-0x00,
+"ldb rbd,rbs",8,3,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,186},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,69},
 
 /* 0011 0000 ssN0 dddd imm16 *** ldb rbd,rs(imm16) */
 {
 #ifdef NICENAMES
-"ldb rbd,rs(imm16)",8,14,
-0x00,
+"ldb rbd,rs(imm16)",8,14,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BA+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,187},
-
+       {CLASS_BIT+3,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,69},
 
 /* 0111 0000 ssN0 dddd 0000 xxxx 0000 0000 *** ldb rbd,rs(rx) */
 {
 #ifdef NICENAMES
-"ldb rbd,rs(rx)",8,14,
-0x00,
+"ldb rbd,rs(rx)",8,14,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BX+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,188},
-
+       {CLASS_BIT+7,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,69},
 
 /* 0011 0010 ddN0 ssss imm16 *** ldb rd(imm16),rbs */
 {
 #ifdef NICENAMES
-"ldb rd(imm16),rbs",8,14,
-0x00,
+"ldb rd(imm16),rbs",8,14,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_BA+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,189},
-
+       {CLASS_BIT+3,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,69},
 
 /* 0111 0010 ddN0 ssss 0000 xxxx 0000 0000 *** ldb rd(rx),rbs */
 {
 #ifdef NICENAMES
-"ldb rd(rx),rbs",8,14,
-0x00,
+"ldb rd(rx),rbs",8,14,0x00,
 #endif
 "ldb",OPC_ldb,0,{CLASS_BX+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,190},
-
+       {CLASS_BIT+7,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,69},
 
 /* 0111 1101 ssss 1ccc *** ldctl ctrl,rs */
 {
 #ifdef NICENAMES
-"ldctl ctrl,rs",32,7,
-0x00,
+"ldctl ctrl,rs",32,7,0x00,
 #endif
 "ldctl",OPC_ldctl,0,{CLASS_CTRL,CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_1CCC,0,0,0,0,0,},2,2,191},
-
+       {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_1CCC,0,0,0,0,0,},2,2,70},
 
 /* 0111 1101 dddd 0ccc *** ldctl rd,ctrl */
 {
 #ifdef NICENAMES
-"ldctl rd,ctrl",32,7,
-0x00,
+"ldctl rd,ctrl",32,7,0x00,
 #endif
 "ldctl",OPC_ldctl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_CTRL,},
-       {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_0CCC,0,0,0,0,0,},2,2,192},
-
+       {CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_0CCC,0,0,0,0,0,},2,2,70},
 
 /* 1000 1100 ssss 1001 *** ldctlb ctrl,rbs */
 {
 #ifdef NICENAMES
-"ldctlb ctrl,rbs",32,7,
-0x3f,
+"ldctlb ctrl,rbs",32,7,0x3f,
 #endif
 "ldctlb",OPC_ldctlb,0,{CLASS_CTRL,CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_BIT+9,0,0,0,0,0,},2,2,193},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_BIT+9,0,0,0,0,0,},2,2,71},
 
 /* 1000 1100 dddd 0001 *** ldctlb rbd,ctrl */
 {
 #ifdef NICENAMES
-"ldctlb rbd,ctrl",32,7,
-0x00,
+"ldctlb rbd,ctrl",32,7,0x00,
 #endif
 "ldctlb",OPC_ldctlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_CTRL,},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+1,0,0,0,0,0,},2,2,194},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+1,0,0,0,0,0,},2,2,71},
 
 /* 1011 1011 ssN0 1001 0000 rrrr ddN0 1000 *** ldd @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"ldd @rd,@rs,rr",16,11,
-0x04,
+"ldd @rd,@rs,rr",16,11,0x04,
 #endif
 "ldd",OPC_ldd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,195},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,72},
 
 /* 1011 1010 ssN0 1001 0000 rrrr ddN0 1000 *** lddb @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"lddb @rd,@rs,rr",8,11,
-0x04,
+"lddb @rd,@rs,rr",8,11,0x04,
 #endif
 "lddb",OPC_lddb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,196},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,73},
 
 /* 1011 1011 ssN0 1001 0000 rrrr ddN0 0000 *** lddr @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"lddr @rd,@rs,rr",16,11,
-0x04,
+"lddr @rd,@rs,rr",16,11,0x04,
 #endif
 "lddr",OPC_lddr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,197},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,74},
 
 /* 1011 1010 ssN0 1001 0000 rrrr ddN0 0000 *** lddrb @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"lddrb @rd,@rs,rr",8,11,
-0x04,
+"lddrb @rd,@rs,rr",8,11,0x04,
 #endif
 "lddrb",OPC_lddrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,198},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,75},
 
 /* 1011 1011 ssN0 0001 0000 rrrr ddN0 1000 *** ldi @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"ldi @rd,@rs,rr",16,11,
-0x04,
+"ldi @rd,@rs,rr",16,11,0x04,
 #endif
 "ldi",OPC_ldi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,199},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,76},
 
 /* 1011 1010 ssN0 0001 0000 rrrr ddN0 1000 *** ldib @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"ldib @rd,@rs,rr",8,11,
-0x04,
+"ldib @rd,@rs,rr",8,11,0x04,
 #endif
 "ldib",OPC_ldib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,200},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,77},
 
 /* 1011 1011 ssN0 0001 0000 rrrr ddN0 0000 *** ldir @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"ldir @rd,@rs,rr",16,11,
-0x04,
+"ldir @rd,@rs,rr",16,11,0x04,
 #endif
 "ldir",OPC_ldir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,201},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,78},
 
 /* 1011 1010 ssN0 0001 0000 rrrr ddN0 0000 *** ldirb @rd,@rs,rr */
 {
 #ifdef NICENAMES
-"ldirb @rd,@rs,rr",8,11,
-0x04,
+"ldirb @rd,@rs,rr",8,11,0x04,
 #endif
 "ldirb",OPC_ldirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,202},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,79},
 
 /* 1011 1101 dddd imm4 *** ldk rd,imm4 */
 {
 #ifdef NICENAMES
-"ldk rd,imm4",16,5,
-0x00,
+"ldk rd,imm4",16,5,0x00,
 #endif
 "ldk",OPC_ldk,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,203},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,80},
 
 /* 0001 1101 ddN0 ssss *** ldl @rd,rrs */
 {
 #ifdef NICENAMES
-"ldl @rd,rrs",32,11,
-0x00,
+"ldl @rd,rrs",32,11,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,204},
-
+       {CLASS_BIT+1,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,81},
 
 /* 0101 1101 ddN0 ssss address_dst *** ldl address_dst(rd),rrs */
 {
 #ifdef NICENAMES
-"ldl address_dst(rd),rrs",32,14,
-0x00,
+"ldl address_dst(rd),rrs",32,14,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_X+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,205},
-
+       {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,81},
 
 /* 0101 1101 0000 ssss address_dst *** ldl address_dst,rrs */
 {
 #ifdef NICENAMES
-"ldl address_dst,rrs",32,15,
-0x00,
+"ldl address_dst,rrs",32,15,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_DA+(ARG_DST),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,206},
-
+       {CLASS_BIT+5,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,81},
 
 /* 0011 0111 ddN0 ssss imm16 *** ldl rd(imm16),rrs */
 {
 #ifdef NICENAMES
-"ldl rd(imm16),rrs",32,17,
-0x00,
+"ldl rd(imm16),rrs",32,17,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_BA+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,207},
-
+       {CLASS_BIT+3,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,81},
 
 /* 0111 0111 ddN0 ssss 0000 xxxx 0000 0000 *** ldl rd(rx),rrs */
 {
 #ifdef NICENAMES
-"ldl rd(rx),rrs",32,17,
-0x00,
+"ldl rd(rx),rrs",32,17,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_BX+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,208},
-
+       {CLASS_BIT+7,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,81},
 
 /* 0001 0100 ssN0 dddd *** ldl rrd,@rs */
 {
 #ifdef NICENAMES
-"ldl rrd,@rs",32,11,
-0x00,
+"ldl rrd,@rs",32,11,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,209},
-
+       {CLASS_BIT+1,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,81},
 
 /* 0101 0100 0000 dddd address_src *** ldl rrd,address_src */
 {
 #ifdef NICENAMES
-"ldl rrd,address_src",32,12,
-0x00,
+"ldl rrd,address_src",32,12,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,210},
-
+       {CLASS_BIT+5,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,81},
 
 /* 0101 0100 ssN0 dddd address_src *** ldl rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"ldl rrd,address_src(rs)",32,13,
-0x00,
+"ldl rrd,address_src(rs)",32,13,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,211},
-
+       {CLASS_BIT+5,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,81},
 
 /* 0001 0100 0000 dddd imm32 *** ldl rrd,imm32 */
 {
 #ifdef NICENAMES
-"ldl rrd,imm32",32,11,
-0x00,
+"ldl rrd,imm32",32,11,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,212},
-
+       {CLASS_BIT+1,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,81},
 
 /* 1001 0100 ssss dddd *** ldl rrd,rrs */
 {
 #ifdef NICENAMES
-"ldl rrd,rrs",32,5,
-0x00,
+"ldl rrd,rrs",32,5,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,213},
-
+       {CLASS_BIT+9,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,81},
 
 /* 0011 0101 ssN0 dddd imm16 *** ldl rrd,rs(imm16) */
 {
 #ifdef NICENAMES
-"ldl rrd,rs(imm16)",32,17,
-0x00,
+"ldl rrd,rs(imm16)",32,17,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BA+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,214},
-
+       {CLASS_BIT+3,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,81},
 
 /* 0111 0101 ssN0 dddd 0000 xxxx 0000 0000 *** ldl rrd,rs(rx) */
 {
 #ifdef NICENAMES
-"ldl rrd,rs(rx)",32,17,
-0x00,
+"ldl rrd,rs(rx)",32,17,0x00,
 #endif
 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BX+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,215},
-
+       {CLASS_BIT+7,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_REG+(ARG_RX),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,81},
 
 /* 0001 1100 ddN0 1001 0000 ssss 0000 imm4m1 *** ldm @rd,rs,n */
 {
 #ifdef NICENAMES
-"ldm @rd,rs,n",16,11,
-0x00,
+"ldm @rd,rs,n",16,11,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,216},
-
+       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,82},
 
 /* 0101 1100 ddN0 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst(rd),rs,n */
 {
 #ifdef NICENAMES
-"ldm address_dst(rd),rs,n",16,15,
-0x00,
+"ldm address_dst(rd),rs,n",16,15,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,217},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,82},
 
 /* 0101 1100 0000 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst,rs,n */
 {
 #ifdef NICENAMES
-"ldm address_dst,rs,n",16,14,
-0x00,
+"ldm address_dst,rs,n",16,14,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,218},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),},3,6,82},
 
 /* 0001 1100 ssN0 0001 0000 dddd 0000 imm4m1 *** ldm rd,@rs,n */
 {
 #ifdef NICENAMES
-"ldm rd,@rs,n",16,11,
-0x00,
+"ldm rd,@rs,n",16,11,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,219},
-
+       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),0,},3,4,82},
 
 /* 0101 1100 ssN0 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src(rs),n */
 {
 #ifdef NICENAMES
-"ldm rd,address_src(rs),n",16,15,
-0x00,
+"ldm rd,address_src(rs),n",16,15,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,220},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,82},
 
 /* 0101 1100 0000 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src,n */
 {
 #ifdef NICENAMES
-"ldm rd,address_src,n",16,14,
-0x00,
+"ldm rd,address_src,n",16,14,0x00,
 #endif
 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),CLASS_IMM + (ARG_IMM4M1),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,221},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_SRC),},3,6,82},
 
 /* 0011 1001 ssN0 0000 *** ldps @rs */
 {
 #ifdef NICENAMES
-"ldps @rs",16,12,
-0x3f,
+"ldps @rs",16,12,0x3f,
 #endif
 "ldps",OPC_ldps,0,{CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,0,0,0,0,},1,2,222},
-
+       {CLASS_BIT+3,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,0,0,0,0,},1,2,83},
 
 /* 0111 1001 0000 0000 address_src *** ldps address_src */
 {
 #ifdef NICENAMES
-"ldps address_src",16,16,
-0x3f,
+"ldps address_src",16,16,0x3f,
 #endif
 "ldps",OPC_ldps,0,{CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+7,CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,223},
-
+       {CLASS_BIT+7,CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,83},
 
 /* 0111 1001 ssN0 0000 address_src *** ldps address_src(rs) */
 {
 #ifdef NICENAMES
-"ldps address_src(rs)",16,17,
-0x3f,
+"ldps address_src(rs)",16,17,0x3f,
 #endif
 "ldps",OPC_ldps,0,{CLASS_X+(ARG_RS),},
-       {CLASS_BIT+7,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,224},
-
+       {CLASS_BIT+7,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,83},
 
 /* 0011 0011 0000 ssss disp16 *** ldr disp16,rs */
 {
 #ifdef NICENAMES
-"ldr disp16,rs",16,14,
-0x00,
+"ldr disp16,rs",16,14,0x00,
 #endif
 "ldr",OPC_ldr,0,{CLASS_DISP,CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,225},
-
+       {CLASS_BIT+3,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,84},
 
 /* 0011 0001 0000 dddd disp16 *** ldr rd,disp16 */
 {
 #ifdef NICENAMES
-"ldr rd,disp16",16,14,
-0x00,
+"ldr rd,disp16",16,14,0x00,
 #endif
 "ldr",OPC_ldr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+3,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,226},
-
+       {CLASS_BIT+3,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,84},
 
 /* 0011 0010 0000 ssss disp16 *** ldrb disp16,rbs */
 {
 #ifdef NICENAMES
-"ldrb disp16,rbs",8,14,
-0x00,
+"ldrb disp16,rbs",8,14,0x00,
 #endif
 "ldrb",OPC_ldrb,0,{CLASS_DISP,CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,227},
-
+       {CLASS_BIT+3,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,85},
 
 /* 0011 0000 0000 dddd disp16 *** ldrb rbd,disp16 */
 {
 #ifdef NICENAMES
-"ldrb rbd,disp16",8,14,
-0x00,
+"ldrb rbd,disp16",8,14,0x00,
 #endif
 "ldrb",OPC_ldrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+3,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,228},
-
+       {CLASS_BIT+3,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,85},
 
 /* 0011 0111 0000 ssss disp16 *** ldrl disp16,rrs */
 {
 #ifdef NICENAMES
-"ldrl disp16,rrs",32,17,
-0x00,
+"ldrl disp16,rrs",32,17,0x00,
 #endif
 "ldrl",OPC_ldrl,0,{CLASS_DISP,CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,229},
-
+       {CLASS_BIT+3,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,86},
 
 /* 0011 0101 0000 dddd disp16 *** ldrl rrd,disp16 */
 {
 #ifdef NICENAMES
-"ldrl rrd,disp16",32,17,
-0x00,
+"ldrl rrd,disp16",32,17,0x00,
 #endif
 "ldrl",OPC_ldrl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DISP,},
-       {CLASS_BIT+3,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,230},
-
+       {CLASS_BIT+3,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,86},
 
 /* 0111 1011 0000 1010 *** mbit */
 {
 #ifdef NICENAMES
-"mbit",16,7,
-0x38,
+"mbit",16,7,0x38,
 #endif
 "mbit",OPC_mbit,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0xa,0,0,0,0,0,},0,2,231},
-
+       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0xa,0,0,0,0,0,},0,2,87},
 
 /* 0111 1011 dddd 1101 *** mreq rd */
 {
 #ifdef NICENAMES
-"mreq rd",16,12,
-0x18,
+"mreq rd",16,12,0x18,
 #endif
 "mreq",OPC_mreq,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,0,0,0,0,0,},1,2,232},
-
+       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,0,0,0,0,0,},1,2,88},
 
 /* 0111 1011 0000 1001 *** mres */
 {
 #ifdef NICENAMES
-"mres",16,5,
-0x00,
+"mres",16,5,0x00,
 #endif
 "mres",OPC_mres,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+9,0,0,0,0,0,},0,2,233},
-
+       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+9,0,0,0,0,0,},0,2,89},
 
 /* 0111 1011 0000 1000 *** mset */
 {
 #ifdef NICENAMES
-"mset",16,5,
-0x00,
+"mset",16,5,0x00,
 #endif
 "mset",OPC_mset,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+8,0,0,0,0,0,},0,2,234},
-
+       {CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+8,0,0,0,0,0,},0,2,90},
 
 /* 0001 1001 ssN0 dddd *** mult rrd,@rs */
 {
 #ifdef NICENAMES
-"mult rrd,@rs",16,70,
-0x3c,
+"mult rrd,@rs",16,70,0x3c,
 #endif
 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,235},
-
+       {CLASS_BIT+1,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,91},
 
 /* 0101 1001 0000 dddd address_src *** mult rrd,address_src */
 {
 #ifdef NICENAMES
-"mult rrd,address_src",16,70,
-0x3c,
+"mult rrd,address_src",16,70,0x3c,
 #endif
 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,236},
-
+       {CLASS_BIT+5,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,91},
 
 /* 0101 1001 ssN0 dddd address_src *** mult rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"mult rrd,address_src(rs)",16,70,
-0x3c,
+"mult rrd,address_src(rs)",16,70,0x3c,
 #endif
 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,237},
-
+       {CLASS_BIT+5,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,91},
 
 /* 0001 1001 0000 dddd imm16 *** mult rrd,imm16 */
 {
 #ifdef NICENAMES
-"mult rrd,imm16",16,70,
-0x3c,
+"mult rrd,imm16",16,70,0x3c,
 #endif
 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+1,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,238},
-
+       {CLASS_BIT+1,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,91},
 
 /* 1001 1001 ssss dddd *** mult rrd,rs */
 {
 #ifdef NICENAMES
-"mult rrd,rs",16,70,
-0x3c,
+"mult rrd,rs",16,70,0x3c,
 #endif
 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,239},
-
+       {CLASS_BIT+9,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,91},
 
 /* 0001 1000 ssN0 dddd *** multl rqd,@rs */
 {
 #ifdef NICENAMES
-"multl rqd,@rs",32,282,
-0x3c,
+"multl rqd,@rs",32,282,0x3c,
 #endif
 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,240},
-
+       {CLASS_BIT+1,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,92},
 
 /* 0101 1000 0000 dddd address_src *** multl rqd,address_src */
 {
 #ifdef NICENAMES
-"multl rqd,address_src",32,282,
-0x3c,
+"multl rqd,address_src",32,282,0x3c,
 #endif
 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,241},
-
+       {CLASS_BIT+5,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,92},
 
 /* 0101 1000 ssN0 dddd address_src *** multl rqd,address_src(rs) */
 {
 #ifdef NICENAMES
-"multl rqd,address_src(rs)",32,282,
-0x3c,
+"multl rqd,address_src(rs)",32,282,0x3c,
 #endif
 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,242},
-
+       {CLASS_BIT+5,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,92},
 
 /* 0001 1000 0000 dddd imm32 *** multl rqd,imm32 */
 {
 #ifdef NICENAMES
-"multl rqd,imm32",32,282,
-0x3c,
+"multl rqd,imm32",32,282,0x3c,
 #endif
 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,243},
-
+       {CLASS_BIT+1,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,92},
 
 /* 1001 1000 ssss dddd *** multl rqd,rrs */
 {
 #ifdef NICENAMES
-"multl rqd,rrs",32,282,
-0x3c,
+"multl rqd,rrs",32,282,0x3c,
 #endif
 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,244},
-
+       {CLASS_BIT+9,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,92},
 
 /* 0000 1101 ddN0 0010 *** neg @rd */
 {
 #ifdef NICENAMES
-"neg @rd",16,12,
-0x3c,
+"neg @rd",16,12,0x3c,
 #endif
 "neg",OPC_neg,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,245},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,93},
 
 /* 0100 1101 0000 0010 address_dst *** neg address_dst */
 {
 #ifdef NICENAMES
-"neg address_dst",16,15,
-0x3c,
+"neg address_dst",16,15,0x3c,
 #endif
 "neg",OPC_neg,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,246},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,93},
 
 /* 0100 1101 ddN0 0010 address_dst *** neg address_dst(rd) */
 {
 #ifdef NICENAMES
-"neg address_dst(rd)",16,16,
-0x3c,
+"neg address_dst(rd)",16,16,0x3c,
 #endif
 "neg",OPC_neg,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,247},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,93},
 
 /* 1000 1101 dddd 0010 *** neg rd */
 {
 #ifdef NICENAMES
-"neg rd",16,7,
-0x3c,
+"neg rd",16,7,0x3c,
 #endif
 "neg",OPC_neg,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,248},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,93},
 
 /* 0000 1100 ddN0 0010 *** negb @rd */
 {
 #ifdef NICENAMES
-"negb @rd",8,12,
-0x3c,
+"negb @rd",8,12,0x3c,
 #endif
 "negb",OPC_negb,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,249},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,94},
 
 /* 0100 1100 0000 0010 address_dst *** negb address_dst */
 {
 #ifdef NICENAMES
-"negb address_dst",8,15,
-0x3c,
+"negb address_dst",8,15,0x3c,
 #endif
 "negb",OPC_negb,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,250},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,94},
 
 /* 0100 1100 ddN0 0010 address_dst *** negb address_dst(rd) */
 {
 #ifdef NICENAMES
-"negb address_dst(rd)",8,16,
-0x3c,
+"negb address_dst(rd)",8,16,0x3c,
 #endif
 "negb",OPC_negb,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,251},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,94},
 
 /* 1000 1100 dddd 0010 *** negb rbd */
 {
 #ifdef NICENAMES
-"negb rbd",8,7,
-0x3c,
+"negb rbd",8,7,0x3c,
 #endif
 "negb",OPC_negb,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,252},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,94},
 
 /* 1000 1101 0000 0111 *** nop */
 {
 #ifdef NICENAMES
-"nop",16,7,
-0x00,
+"nop",16,7,0x00,
 #endif
 "nop",OPC_nop,0,{0},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+7,0,0,0,0,0,},0,2,253},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+7,0,0,0,0,0,},0,2,95},
 
 /* 0000 0101 ssN0 dddd *** or rd,@rs */
 {
 #ifdef NICENAMES
-"or rd,@rs",16,7,
-0x38,
+"or rd,@rs",16,7,0x38,
 #endif
 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,254},
-
+       {CLASS_BIT+0,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
 
 /* 0100 0101 0000 dddd address_src *** or rd,address_src */
 {
 #ifdef NICENAMES
-"or rd,address_src",16,9,
-0x38,
+"or rd,address_src",16,9,0x38,
 #endif
 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,255},
-
+       {CLASS_BIT+4,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
 
 /* 0100 0101 ssN0 dddd address_src *** or rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"or rd,address_src(rs)",16,10,
-0x38,
+"or rd,address_src(rs)",16,10,0x38,
 #endif
 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,256},
-
+       {CLASS_BIT+4,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
 
 /* 0000 0101 0000 dddd imm16 *** or rd,imm16 */
 {
 #ifdef NICENAMES
-"or rd,imm16",16,7,
-0x38,
+"or rd,imm16",16,7,0x38,
 #endif
 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,257},
-
+       {CLASS_BIT+0,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,96},
 
 /* 1000 0101 ssss dddd *** or rd,rs */
 {
 #ifdef NICENAMES
-"or rd,rs",16,4,
-0x38,
+"or rd,rs",16,4,0x38,
 #endif
 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,258},
-
+       {CLASS_BIT+8,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
 
 /* 0000 0100 ssN0 dddd *** orb rbd,@rs */
 {
 #ifdef NICENAMES
-"orb rbd,@rs",8,7,
-0x3c,
+"orb rbd,@rs",8,7,0x3c,
 #endif
 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,259},
-
+       {CLASS_BIT+0,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
 
 /* 0100 0100 0000 dddd address_src *** orb rbd,address_src */
 {
 #ifdef NICENAMES
-"orb rbd,address_src",8,9,
-0x3c,
+"orb rbd,address_src",8,9,0x3c,
 #endif
 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,260},
-
+       {CLASS_BIT+4,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
 
 /* 0100 0100 ssN0 dddd address_src *** orb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"orb rbd,address_src(rs)",8,10,
-0x3c,
+"orb rbd,address_src(rs)",8,10,0x3c,
 #endif
 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,261},
-
+       {CLASS_BIT+4,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
 
 /* 0000 0100 0000 dddd imm8 imm8 *** orb rbd,imm8 */
 {
 #ifdef NICENAMES
-"orb rbd,imm8",8,7,
-0x3c,
+"orb rbd,imm8",8,7,0x3c,
 #endif
 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,262},
-
+       {CLASS_BIT+0,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,97},
 
 /* 1000 0100 ssss dddd *** orb rbd,rbs */
 {
 #ifdef NICENAMES
-"orb rbd,rbs",8,4,
-0x3c,
+"orb rbd,rbs",8,4,0x3c,
 #endif
 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,263},
-
+       {CLASS_BIT+8,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
 
 /* 0011 1111 ddN0 ssss *** out @rd,rs */
 {
 #ifdef NICENAMES
-"out @rd,rs",16,0,
-0x04,
+"out @rd,rs",16,0,0x04,
 #endif
 "out",OPC_out,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,264},
-
+       {CLASS_BIT+3,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,98},
 
 /* 0011 1011 ssss 0110 imm16 *** out imm16,rs */
 {
 #ifdef NICENAMES
-"out imm16,rs",16,0,
-0x04,
+"out imm16,rs",16,0,0x04,
 #endif
 "out",OPC_out,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,265},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,98},
 
 /* 0011 1110 ddN0 ssss *** outb @rd,rbs */
 {
 #ifdef NICENAMES
-"outb @rd,rbs",8,0,
-0x04,
+"outb @rd,rbs",8,0,0x04,
 #endif
 "outb",OPC_outb,0,{CLASS_IR+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,266},
-
+       {CLASS_BIT+3,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,99},
 
 /* 0011 1010 ssss 0110 imm16 *** outb imm16,rbs */
 {
 #ifdef NICENAMES
-"outb imm16,rbs",8,0,
-0x04,
+"outb imm16,rbs",8,0,0x04,
 #endif
 "outb",OPC_outb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,267},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,99},
 
 /* 0011 1011 ssN0 1010 0000 aaaa ddN0 1000 *** outd @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"outd @rd,@rs,ra",16,0,
-0x04,
+"outd @rd,@rs,ra",16,0,0x04,
 #endif
 "outd",OPC_outd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,268},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,100},
 
 /* 0011 1010 ssN0 1010 0000 aaaa ddN0 1000 *** outdb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"outdb @rd,@rs,rba",16,0,
-0x04,
+"outdb @rd,@rs,rba",16,0,0x04,
 #endif
 "outdb",OPC_outdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,269},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,101},
 
 /* 0011 1011 ssN0 0010 0000 aaaa ddN0 1000 *** outi @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"outi @rd,@rs,ra",16,0,
-0x04,
+"outi @rd,@rs,ra",16,0,0x04,
 #endif
 "outi",OPC_outi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,270},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,102},
 
 /* 0011 1010 ssN0 0010 0000 aaaa ddN0 1000 *** outib @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"outib @rd,@rs,ra",16,0,
-0x04,
+"outib @rd,@rs,ra",16,0,0x04,
 #endif
 "outib",OPC_outib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,271},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,103},
 
 /* 0011 1010 ssN0 0010 0000 aaaa ddN0 0000 *** outibr @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"outibr @rd,@rs,ra",16,0,
-0x04,
+"outibr @rd,@rs,ra",16,0,0x04,
 #endif
 "outibr",OPC_outibr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,272},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,104},
 
 /* 0001 0111 ssN0 ddN0 *** pop @rd,@rs */
 {
 #ifdef NICENAMES
-"pop @rd,@rs",16,12,
-0x00,
+"pop @rd,@rs",16,12,0x00,
 #endif
 "pop",OPC_pop,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,273},
-
+       {CLASS_BIT+1,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,105},
 
 /* 0101 0111 ssN0 ddN0 address_dst *** pop address_dst(rd),@rs */
 {
 #ifdef NICENAMES
-"pop address_dst(rd),@rs",16,16,
-0x00,
+"pop address_dst(rd),@rs",16,16,0x00,
 #endif
 "pop",OPC_pop,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,274},
-
+       {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,105},
 
 /* 0101 0111 ssN0 0000 address_dst *** pop address_dst,@rs */
 {
 #ifdef NICENAMES
-"pop address_dst,@rs",16,16,
-0x00,
+"pop address_dst,@rs",16,16,0x00,
 #endif
 "pop",OPC_pop,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,275},
-
+       {CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,105},
 
 /* 1001 0111 ssN0 dddd *** pop rd,@rs */
 {
 #ifdef NICENAMES
-"pop rd,@rs",16,8,
-0x00,
+"pop rd,@rs",16,8,0x00,
 #endif
 "pop",OPC_pop,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,276},
-
+       {CLASS_BIT+9,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,105},
 
 /* 0001 0101 ssN0 ddN0 *** popl @rd,@rs */
 {
 #ifdef NICENAMES
-"popl @rd,@rs",32,19,
-0x00,
+"popl @rd,@rs",32,19,0x00,
 #endif
 "popl",OPC_popl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,277},
-
+       {CLASS_BIT+1,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,106},
 
 /* 0101 0101 ssN0 ddN0 address_dst *** popl address_dst(rd),@rs */
 {
 #ifdef NICENAMES
-"popl address_dst(rd),@rs",32,23,
-0x00,
+"popl address_dst(rd),@rs",32,23,0x00,
 #endif
 "popl",OPC_popl,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,278},
-
+       {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,106},
 
 /* 0101 0101 ssN0 0000 address_dst *** popl address_dst,@rs */
 {
 #ifdef NICENAMES
-"popl address_dst,@rs",32,23,
-0x00,
+"popl address_dst,@rs",32,23,0x00,
 #endif
 "popl",OPC_popl,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,279},
-
+       {CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,106},
 
 /* 1001 0101 ssN0 dddd *** popl rrd,@rs */
 {
 #ifdef NICENAMES
-"popl rrd,@rs",32,12,
-0x00,
+"popl rrd,@rs",32,12,0x00,
 #endif
 "popl",OPC_popl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,280},
-
+       {CLASS_BIT+9,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,106},
 
 /* 0001 0011 ddN0 ssN0 *** push @rd,@rs */
 {
 #ifdef NICENAMES
-"push @rd,@rs",16,13,
-0x00,
+"push @rd,@rs",16,13,0x00,
 #endif
 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,281},
-
+       {CLASS_BIT+1,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,107},
 
 /* 0101 0011 ddN0 0000 address_src *** push @rd,address_src */
 {
 #ifdef NICENAMES
-"push @rd,address_src",16,14,
-0x00,
+"push @rd,address_src",16,14,0x00,
 #endif
 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,282},
-
+       {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,107},
 
 /* 0101 0011 ddN0 ssN0 address_src *** push @rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"push @rd,address_src(rs)",16,14,
-0x00,
+"push @rd,address_src(rs)",16,14,0x00,
 #endif
 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,283},
-
+       {CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,107},
 
 /* 0000 1101 ddN0 1001 imm16 *** push @rd,imm16 */
 {
 #ifdef NICENAMES
-"push @rd,imm16",16,12,
-0x00,
+"push @rd,imm16",16,12,0x00,
 #endif
 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,284},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,107},
 
 /* 1001 0011 ddN0 ssss *** push @rd,rs */
 {
 #ifdef NICENAMES
-"push @rd,rs",16,9,
-0x00,
+"push @rd,rs",16,9,0x00,
 #endif
 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,285},
-
+       {CLASS_BIT+9,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,107},
 
 /* 0001 0001 ddN0 ssN0 *** pushl @rd,@rs */
 {
 #ifdef NICENAMES
-"pushl @rd,@rs",32,20,
-0x00,
+"pushl @rd,@rs",32,20,0x00,
 #endif
 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,286},
-
+       {CLASS_BIT+1,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,108},
 
 /* 0101 0001 ddN0 0000 address_src *** pushl @rd,address_src */
 {
 #ifdef NICENAMES
-"pushl @rd,address_src",32,21,
-0x00,
+"pushl @rd,address_src",32,21,0x00,
 #endif
 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,287},
-
+       {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,108},
 
 /* 0101 0001 ddN0 ssN0 address_src *** pushl @rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"pushl @rd,address_src(rs)",32,21,
-0x00,
+"pushl @rd,address_src(rs)",32,21,0x00,
 #endif
 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,288},
-
+       {CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,108},
 
 /* 1001 0001 ddN0 ssss *** pushl @rd,rrs */
 {
 #ifdef NICENAMES
-"pushl @rd,rrs",32,12,
-0x00,
+"pushl @rd,rrs",32,12,0x00,
 #endif
 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,289},
-
+       {CLASS_BIT+9,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,108},
 
 /* 0010 0011 ddN0 imm4 *** res @rd,imm4 */
 {
 #ifdef NICENAMES
-"res @rd,imm4",16,11,
-0x00,
+"res @rd,imm4",16,11,0x00,
 #endif
 "res",OPC_res,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,290},
-
+       {CLASS_BIT+2,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,109},
 
 /* 0110 0011 ddN0 imm4 address_dst *** res address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"res address_dst(rd),imm4",16,14,
-0x00,
+"res address_dst(rd),imm4",16,14,0x00,
 #endif
 "res",OPC_res,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,291},
-
+       {CLASS_BIT+6,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,109},
 
 /* 0110 0011 0000 imm4 address_dst *** res address_dst,imm4 */
 {
 #ifdef NICENAMES
-"res address_dst,imm4",16,13,
-0x00,
+"res address_dst,imm4",16,13,0x00,
 #endif
 "res",OPC_res,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+3,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,292},
-
+       {CLASS_BIT+6,CLASS_BIT+3,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,109},
 
 /* 1010 0011 dddd imm4 *** res rd,imm4 */
 {
 #ifdef NICENAMES
-"res rd,imm4",16,4,
-0x00,
+"res rd,imm4",16,4,0x00,
 #endif
 "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,293},
-
+       {CLASS_BIT+0xa,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,109},
 
 /* 0010 0011 0000 ssss 0000 dddd 0000 0000 *** res rd,rs */
 {
 #ifdef NICENAMES
-"res rd,rs",16,10,
-0x00,
+"res rd,rs",16,10,0x00,
 #endif
 "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,294},
-
+       {CLASS_BIT+2,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,109},
 
 /* 0010 0010 ddN0 imm4 *** resb @rd,imm4 */
 {
 #ifdef NICENAMES
-"resb @rd,imm4",8,11,
-0x00,
+"resb @rd,imm4",8,11,0x00,
 #endif
 "resb",OPC_resb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,295},
-
+       {CLASS_BIT+2,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,110},
 
 /* 0110 0010 ddN0 imm4 address_dst *** resb address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"resb address_dst(rd),imm4",8,14,
-0x00,
+"resb address_dst(rd),imm4",8,14,0x00,
 #endif
 "resb",OPC_resb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,296},
-
+       {CLASS_BIT+6,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,110},
 
 /* 0110 0010 0000 imm4 address_dst *** resb address_dst,imm4 */
 {
 #ifdef NICENAMES
-"resb address_dst,imm4",8,13,
-0x00,
+"resb address_dst,imm4",8,13,0x00,
 #endif
 "resb",OPC_resb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+2,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,297},
-
+       {CLASS_BIT+6,CLASS_BIT+2,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,110},
 
 /* 1010 0010 dddd imm4 *** resb rbd,imm4 */
 {
 #ifdef NICENAMES
-"resb rbd,imm4",8,4,
-0x00,
+"resb rbd,imm4",8,4,0x00,
 #endif
 "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,298},
-
+       {CLASS_BIT+0xa,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,110},
 
 /* 0010 0010 0000 ssss 0000 dddd 0000 0000 *** resb rbd,rs */
 {
 #ifdef NICENAMES
-"resb rbd,rs",8,10,
-0x00,
+"resb rbd,rs",8,10,0x00,
 #endif
 "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,299},
-
+       {CLASS_BIT+2,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,110},
 
 /* 1000 1101 flags 0011 *** resflg flags */
 {
 #ifdef NICENAMES
-"resflg flags",16,7,
-0x3c,
+"resflg flags",16,7,0x3c,
 #endif
 "resflg",OPC_resflg,0,{CLASS_FLAGS,},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+3,0,0,0,0,0,},1,2,300},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+3,0,0,0,0,0,},1,2,111},
 
 /* 1001 1110 0000 cccc *** ret cc */
 {
 #ifdef NICENAMES
-"ret cc",16,10,
-0x00,
+"ret cc",16,10,0x00,
 #endif
 "ret",OPC_ret,0,{CLASS_CC,},
-       {CLASS_BIT+9,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,0,0,0,0,0,},1,2,301},
-
+       {CLASS_BIT+9,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,0,0,0,0,0,},1,2,112},
 
 /* 1011 0011 dddd 00I0 *** rl rd,imm1or2 */
 {
 #ifdef NICENAMES
-"rl rd,imm1or2",16,6,
-0x3c,
+"rl rd,imm1or2",16,6,0x3c,
 #endif
 "rl",OPC_rl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,302},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,113},
 
 /* 1011 0010 dddd 00I0 *** rlb rbd,imm1or2 */
 {
 #ifdef NICENAMES
-"rlb rbd,imm1or2",8,6,
-0x3c,
+"rlb rbd,imm1or2",8,6,0x3c,
 #endif
 "rlb",OPC_rlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,303},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,114},
 
 /* 1011 0011 dddd 10I0 *** rlc rd,imm1or2 */
 {
 #ifdef NICENAMES
-"rlc rd,imm1or2",16,6,
-0x3c,
+"rlc rd,imm1or2",16,6,0x3c,
 #endif
 "rlc",OPC_rlc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,304},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,115},
 
 /* 1011 0010 dddd 10I0 *** rlcb rbd,imm1or2 */
 {
 #ifdef NICENAMES
-"rlcb rbd,imm1or2",8,9,
-0x10,
+"rlcb rbd,imm1or2",8,9,0x10,
 #endif
 "rlcb",OPC_rlcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,305},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,116},
 
 /* 1011 1110 aaaa bbbb *** rldb rbb,rba */
 {
 #ifdef NICENAMES
-"rldb rbb,rba",8,9,
-0x10,
+"rldb rbb,rba",8,9,0x10,
 #endif
 "rldb",OPC_rldb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xe,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,306},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xe,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,117},
 
 /* 1011 0011 dddd 01I0 *** rr rd,imm1or2 */
 {
 #ifdef NICENAMES
-"rr rd,imm1or2",16,6,
-0x3c,
+"rr rd,imm1or2",16,6,0x3c,
 #endif
 "rr",OPC_rr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,307},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,118},
 
 /* 1011 0010 dddd 01I0 *** rrb rbd,imm1or2 */
 {
 #ifdef NICENAMES
-"rrb rbd,imm1or2",8,6,
-0x3c,
+"rrb rbd,imm1or2",8,6,0x3c,
 #endif
 "rrb",OPC_rrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,308},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,119},
 
 /* 1011 0011 dddd 11I0 *** rrc rd,imm1or2 */
 {
 #ifdef NICENAMES
-"rrc rd,imm1or2",16,6,
-0x3c,
+"rrc rd,imm1or2",16,6,0x3c,
 #endif
 "rrc",OPC_rrc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,309},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,120},
 
 /* 1011 0010 dddd 11I0 *** rrcb rbd,imm1or2 */
 {
 #ifdef NICENAMES
-"rrcb rbd,imm1or2",8,9,
-0x10,
+"rrcb rbd,imm1or2",8,9,0x10,
 #endif
 "rrcb",OPC_rrcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,310},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,121},
 
 /* 1011 1100 aaaa bbbb *** rrdb rbb,rba */
 {
 #ifdef NICENAMES
-"rrdb rbb,rba",8,9,
-0x10,
+"rrdb rbb,rba",8,9,0x10,
 #endif
 "rrdb",OPC_rrdb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+0xb,CLASS_BIT+0xc,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,311},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xc,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,122},
 
 /* 0011 0110 imm8 *** rsvd36 */
 {
 #ifdef NICENAMES
-"rsvd36",8,10,
-0x00,
+"rsvd36",8,10,0x00,
 #endif
 "rsvd36",OPC_rsvd36,0,{0},
-       {CLASS_BIT+3,CLASS_BIT+6,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,312},
-
+       {CLASS_BIT+3,CLASS_BIT+6,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,123},
 
 /* 0011 1000 imm8 *** rsvd38 */
 {
 #ifdef NICENAMES
-"rsvd38",8,10,
-0x00,
+"rsvd38",8,10,0x00,
 #endif
 "rsvd38",OPC_rsvd38,0,{0},
-       {CLASS_BIT+3,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,313},
-
+       {CLASS_BIT+3,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,124},
 
 /* 0111 1000 imm8 *** rsvd78 */
 {
 #ifdef NICENAMES
-"rsvd78",8,10,
-0x00,
+"rsvd78",8,10,0x00,
 #endif
 "rsvd78",OPC_rsvd78,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,314},
-
+       {CLASS_BIT+7,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,125},
 
 /* 0111 1110 imm8 *** rsvd7e */
 {
 #ifdef NICENAMES
-"rsvd7e",8,10,
-0x00,
+"rsvd7e",8,10,0x00,
 #endif
 "rsvd7e",OPC_rsvd7e,0,{0},
-       {CLASS_BIT+7,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,315},
-
+       {CLASS_BIT+7,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,126},
 
 /* 1001 1101 imm8 *** rsvd9d */
 {
 #ifdef NICENAMES
-"rsvd9d",8,10,
-0x00,
+"rsvd9d",8,10,0x00,
 #endif
 "rsvd9d",OPC_rsvd9d,0,{0},
-       {CLASS_BIT+9,CLASS_BIT+0xd,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,316},
-
+       {CLASS_BIT+9,CLASS_BIT+0xd,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,127},
 
 /* 1001 1111 imm8 *** rsvd9f */
 {
 #ifdef NICENAMES
-"rsvd9f",8,10,
-0x00,
+"rsvd9f",8,10,0x00,
 #endif
 "rsvd9f",OPC_rsvd9f,0,{0},
-       {CLASS_BIT+9,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,317},
-
+       {CLASS_BIT+9,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,128},
 
 /* 1011 1001 imm8 *** rsvdb9 */
 {
 #ifdef NICENAMES
-"rsvdb9",8,10,
-0x00,
+"rsvdb9",8,10,0x00,
 #endif
 "rsvdb9",OPC_rsvdb9,0,{0},
-       {CLASS_BIT+0xb,CLASS_BIT+9,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,318},
-
+       {CLASS_BIT+0xb,CLASS_BIT+9,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,129},
 
 /* 1011 1111 imm8 *** rsvdbf */
 {
 #ifdef NICENAMES
-"rsvdbf",8,10,
-0x00,
+"rsvdbf",8,10,0x00,
 #endif
 "rsvdbf",OPC_rsvdbf,0,{0},
-       {CLASS_BIT+0xb,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,319},
-
+       {CLASS_BIT+0xb,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,130},
 
 /* 1011 0111 ssss dddd *** sbc rd,rs */
 {
 #ifdef NICENAMES
-"sbc rd,rs",16,5,
-0x3c,
+"sbc rd,rs",16,5,0x3c,
 #endif
 "sbc",OPC_sbc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,320},
-
+       {CLASS_BIT+0xb,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,131},
 
 /* 1011 0110 ssss dddd *** sbcb rbd,rbs */
 {
 #ifdef NICENAMES
-"sbcb rbd,rbs",8,5,
-0x3f,
+"sbcb rbd,rbs",8,5,0x3f,
 #endif
 "sbcb",OPC_sbcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,321},
-
+       {CLASS_BIT+0xb,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,132},
 
 /* 0111 1111 imm8 *** sc imm8 */
 {
 #ifdef NICENAMES
-"sc imm8",8,33,
-0x3f,
+"sc imm8",8,33,0x3f,
 #endif
 "sc",OPC_sc,0,{CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+7,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,322},
-
+       {CLASS_BIT+7,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,133},
 
 /* 1011 0011 dddd 1011 0000 ssss 0000 0000 *** sda rd,rs */
 {
 #ifdef NICENAMES
-"sda rd,rs",16,15,
-0x3c,
+"sda rd,rs",16,15,0x3c,
 #endif
 "sda",OPC_sda,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,323},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,134},
 
 /* 1011 0010 dddd 1011 0000 ssss 0000 0000 *** sdab rbd,rs */
 {
 #ifdef NICENAMES
-"sdab rbd,rs",8,15,
-0x3c,
+"sdab rbd,rs",8,15,0x3c,
 #endif
 "sdab",OPC_sdab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,324},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,135},
 
 /* 1011 0011 dddd 1111 0000 ssss 0000 0000 *** sdal rrd,rs */
 {
 #ifdef NICENAMES
-"sdal rrd,rs",32,15,
-0x3c,
+"sdal rrd,rs",32,15,0x3c,
 #endif
 "sdal",OPC_sdal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,325},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,136},
 
 /* 1011 0011 dddd 0011 0000 ssss 0000 0000 *** sdl rd,rs */
 {
 #ifdef NICENAMES
-"sdl rd,rs",16,15,
-0x38,
+"sdl rd,rs",16,15,0x38,
 #endif
 "sdl",OPC_sdl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,326},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,137},
 
 /* 1011 0010 dddd 0011 0000 ssss 0000 0000 *** sdlb rbd,rs */
 {
 #ifdef NICENAMES
-"sdlb rbd,rs",8,15,
-0x38,
+"sdlb rbd,rs",8,15,0x38,
 #endif
 "sdlb",OPC_sdlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,327},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,138},
 
 /* 1011 0011 dddd 0111 0000 ssss 0000 0000 *** sdll rrd,rs */
 {
 #ifdef NICENAMES
-"sdll rrd,rs",32,15,
-0x38,
+"sdll rrd,rs",32,15,0x38,
 #endif
 "sdll",OPC_sdll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,328},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,139},
 
 /* 0010 0101 ddN0 imm4 *** set @rd,imm4 */
 {
 #ifdef NICENAMES
-"set @rd,imm4",16,11,
-0x00,
+"set @rd,imm4",16,11,0x00,
 #endif
 "set",OPC_set,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,329},
-
+       {CLASS_BIT+2,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,140},
 
 /* 0110 0101 ddN0 imm4 address_dst *** set address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"set address_dst(rd),imm4",16,14,
-0x00,
+"set address_dst(rd),imm4",16,14,0x00,
 #endif
 "set",OPC_set,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,330},
-
+       {CLASS_BIT+6,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,140},
 
 /* 0110 0101 0000 imm4 address_dst *** set address_dst,imm4 */
 {
 #ifdef NICENAMES
-"set address_dst,imm4",16,13,
-0x00,
+"set address_dst,imm4",16,13,0x00,
 #endif
 "set",OPC_set,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+5,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,331},
-
+       {CLASS_BIT+6,CLASS_BIT+5,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,140},
 
 /* 1010 0101 dddd imm4 *** set rd,imm4 */
 {
 #ifdef NICENAMES
-"set rd,imm4",16,4,
-0x00,
+"set rd,imm4",16,4,0x00,
 #endif
 "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+5,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,332},
-
+       {CLASS_BIT+0xa,CLASS_BIT+5,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,140},
 
 /* 0010 0101 0000 ssss 0000 dddd 0000 0000 *** set rd,rs */
 {
 #ifdef NICENAMES
-"set rd,rs",16,10,
-0x00,
+"set rd,rs",16,10,0x00,
 #endif
 "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,333},
-
+       {CLASS_BIT+2,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,140},
 
 /* 0010 0100 ddN0 imm4 *** setb @rd,imm4 */
 {
 #ifdef NICENAMES
-"setb @rd,imm4",8,11,
-0x00,
+"setb @rd,imm4",8,11,0x00,
 #endif
 "setb",OPC_setb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+2,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,334},
-
+       {CLASS_BIT+2,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,141},
 
 /* 0110 0100 ddN0 imm4 address_dst *** setb address_dst(rd),imm4 */
 {
 #ifdef NICENAMES
-"setb address_dst(rd),imm4",8,14,
-0x00,
+"setb address_dst(rd),imm4",8,14,0x00,
 #endif
 "setb",OPC_setb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,335},
-
+       {CLASS_BIT+6,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,141},
 
 /* 0110 0100 0000 imm4 address_dst *** setb address_dst,imm4 */
 {
 #ifdef NICENAMES
-"setb address_dst,imm4",8,13,
-0x00,
+"setb address_dst,imm4",8,13,0x00,
 #endif
 "setb",OPC_setb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+6,CLASS_BIT+4,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,336},
-
+       {CLASS_BIT+6,CLASS_BIT+4,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,141},
 
 /* 1010 0100 dddd imm4 *** setb rbd,imm4 */
 {
 #ifdef NICENAMES
-"setb rbd,imm4",8,4,
-0x00,
+"setb rbd,imm4",8,4,0x00,
 #endif
 "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xa,CLASS_BIT+4,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,337},
-
+       {CLASS_BIT+0xa,CLASS_BIT+4,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,141},
 
 /* 0010 0100 0000 ssss 0000 dddd 0000 0000 *** setb rbd,rs */
 {
 #ifdef NICENAMES
-"setb rbd,rs",8,10,
-0x00,
+"setb rbd,rs",8,10,0x00,
 #endif
 "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+2,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,338},
-
+       {CLASS_BIT+2,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,0,},2,4,141},
 
 /* 1000 1101 flags 0001 *** setflg flags */
 {
 #ifdef NICENAMES
-"setflg flags",16,7,
-0x3c,
+"setflg flags",16,7,0x3c,
 #endif
 "setflg",OPC_setflg,0,{CLASS_FLAGS,},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+1,0,0,0,0,0,},1,2,339},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+1,0,0,0,0,0,},1,2,142},
 
 /* 0011 1011 dddd 0101 imm16 *** sin rd,imm16 */
 {
 #ifdef NICENAMES
-"sin rd,imm16",8,0,
-0x00,
+"sin rd,imm16",8,0,0x00,
 #endif
 "sin",OPC_sin,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,340},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,143},
 
 /* 0011 1010 dddd 0101 imm16 *** sinb rbd,imm16 */
 {
 #ifdef NICENAMES
-"sinb rbd,imm16",8,0,
-0x00,
+"sinb rbd,imm16",8,0,0x00,
 #endif
 "sinb",OPC_sinb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,341},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,144},
 
 /* 0011 1011 ssN0 1000 0001 aaaa ddN0 1000 *** sind @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"sind @rd,@rs,ra",16,0,
-0x00,
+"sind @rd,@rs,ra",16,0,0x00,
 #endif
 "sind",OPC_sind,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,342},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,145},
 
 /* 0011 1010 ssN0 1000 0001 aaaa ddN0 1000 *** sindb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"sindb @rd,@rs,rba",8,0,
-0x00,
+"sindb @rd,@rs,rba",8,0,0x00,
 #endif
 "sindb",OPC_sindb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,343},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,146},
 
 /* 0011 1010 ssN0 0001 0000 aaaa ddN0 1000 *** sinib @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"sinib @rd,@rs,ra",8,0,
-0x00,
+"sinib @rd,@rs,ra",8,0,0x00,
 #endif
 "sinib",OPC_sinib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,344},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,147},
 
 /* 0011 1010 ssN0 0001 0000 aaaa ddN0 0000 *** sinibr @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"sinibr @rd,@rs,ra",16,0,
-0x00,
+"sinibr @rd,@rs,ra",16,0,0x00,
 #endif
 "sinibr",OPC_sinibr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,345},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,148},
 
 /* 1011 0011 dddd 1001 0000 0000 imm8 *** sla rd,imm8 */
 {
 #ifdef NICENAMES
-"sla rd,imm8",16,13,
-0x3c,
+"sla rd,imm8",16,13,0x3c,
 #endif
 "sla",OPC_sla,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,346},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,149},
 
 /* 1011 0010 dddd 1001 iiii iiii 0000 imm4 *** slab rbd,imm4 */
 {
 #ifdef NICENAMES
-"slab rbd,imm4",8,13,
-0x3c,
+"slab rbd,imm4",8,13,0x3c,
 #endif
 "slab",OPC_slab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,347},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,150},
 
 /* 1011 0011 dddd 1101 0000 0000 imm8 *** slal rrd,imm8 */
 {
 #ifdef NICENAMES
-"slal rrd,imm8",32,13,
-0x3c,
+"slal rrd,imm8",32,13,0x3c,
 #endif
 "slal",OPC_slal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,348},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,151},
 
 /* 1011 0011 dddd 0001 0000 0000 imm8 *** sll rd,imm8 */
 {
 #ifdef NICENAMES
-"sll rd,imm8",16,13,
-0x38,
+"sll rd,imm8",16,13,0x38,
 #endif
 "sll",OPC_sll,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,349},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,152},
 
 /* 1011 0010 dddd 0001 iiii iiii 0000 imm4 *** sllb rbd,imm4 */
 {
 #ifdef NICENAMES
-"sllb rbd,imm4",8,13,
-0x38,
+"sllb rbd,imm4",8,13,0x38,
 #endif
 "sllb",OPC_sllb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,350},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),0,},2,4,153},
 
 /* 1011 0011 dddd 0101 0000 0000 imm8 *** slll rrd,imm8 */
 {
 #ifdef NICENAMES
-"slll rrd,imm8",32,13,
-0x38,
+"slll rrd,imm8",32,13,0x38,
 #endif
 "slll",OPC_slll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,351},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_IMM+(ARG_IMM8),0,0,},2,4,154},
 
 /* 0011 1011 ssss 0111 imm16 *** sout imm16,rs */
 {
 #ifdef NICENAMES
-"sout imm16,rs",16,0,
-0x00,
+"sout imm16,rs",16,0,0x00,
 #endif
 "sout",OPC_sout,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,352},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,155},
 
 /* 0011 1010 ssss 0111 imm16 *** soutb imm16,rbs */
 {
 #ifdef NICENAMES
-"soutb imm16,rbs",8,0,
-0x00,
+"soutb imm16,rbs",8,0,0x00,
 #endif
 "soutb",OPC_soutb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,353},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+7,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,156},
 
 /* 0011 1011 ssN0 1011 0000 aaaa ddN0 1000 *** soutd @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"soutd @rd,@rs,ra",16,0,
-0x00,
+"soutd @rd,@rs,ra",16,0,0x00,
 #endif
 "soutd",OPC_soutd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,354},
-
+       {CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,157},
 
 /* 0011 1010 ssN0 1011 0000 aaaa ddN0 1000 *** soutdb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"soutdb @rd,@rs,rba",8,0,
-0x00,
+"soutdb @rd,@rs,rba",8,0,0x00,
 #endif
 "soutdb",OPC_soutdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,355},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,158},
 
 /* 0011 1010 ssN0 0011 0000 aaaa ddN0 1000 *** soutib @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"soutib @rd,@rs,ra",8,0,
-0x00,
+"soutib @rd,@rs,ra",8,0,0x00,
 #endif
 "soutib",OPC_soutib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,356},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,159},
 
 /* 0011 1010 ssN0 0011 0000 aaaa ddN0 0000 *** soutibr @rd,@rs,ra */
 {
 #ifdef NICENAMES
-"soutibr @rd,@rs,ra",16,0,
-0x00,
+"soutibr @rd,@rs,ra",16,0,0x00,
 #endif
 "soutibr",OPC_soutibr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
-       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,357},
-
+       {CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,160},
 
 /* 1011 0011 dddd 1001 1111 1111 nim8 *** sra rd,imm8 */
 {
 #ifdef NICENAMES
-"sra rd,imm8",16,13,
-0x3c,
+"sra rd,imm8",16,13,0x3c,
 #endif
 "sra",OPC_sra,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,358},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,161},
 
 /* 1011 0010 dddd 1001 iiii iiii 1111 nim4 *** srab rbd,imm4 */
 {
 #ifdef NICENAMES
-"srab rbd,imm4",8,13,
-0x3c,
+"srab rbd,imm4",8,13,0x3c,
 #endif
 "srab",OPC_srab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,359},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+9,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,162},
 
 /* 1011 0011 dddd 1101 1111 1111 nim8 *** sral rrd,imm8 */
 {
 #ifdef NICENAMES
-"sral rrd,imm8",32,13,
-0x3c,
+"sral rrd,imm8",32,13,0x3c,
 #endif
 "sral",OPC_sral,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,360},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,163},
 
 /* 1011 0011 dddd 0001 1111 1111 nim8 *** srl rd,imm8 */
 {
 #ifdef NICENAMES
-"srl rd,imm8",16,13,
-0x3c,
+"srl rd,imm8",16,13,0x3c,
 #endif
 "srl",OPC_srl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,361},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,164},
 
 /* 1011 0010 dddd 0001 iiii iiii 1111 nim4 *** srlb rbd,imm4 */
 {
 #ifdef NICENAMES
-"srlb rbd,imm4",8,13,
-0x3c,
+"srlb rbd,imm4",8,13,0x3c,
 #endif
 "srlb",OPC_srlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
-       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,362},
-
+       {CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT+1,CLASS_IGNORE,CLASS_IGNORE,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM4),0,},2,4,165},
 
 /* 1011 0011 dddd 0101 1111 1111 nim8 *** srll rrd,imm8 */
 {
 #ifdef NICENAMES
-"srll rrd,imm8",32,13,
-0x3c,
+"srll rrd,imm8",32,13,0x3c,
 #endif
 "srll",OPC_srll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,363},
-
+       {CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0xf,CLASS_IMM+(ARG_NIM8),0,0,},2,4,166},
 
 /* 0000 0011 ssN0 dddd *** sub rd,@rs */
 {
 #ifdef NICENAMES
-"sub rd,@rs",16,7,
-0x3c,
+"sub rd,@rs",16,7,0x3c,
 #endif
 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,364},
-
+       {CLASS_BIT+0,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,167},
 
 /* 0100 0011 0000 dddd address_src *** sub rd,address_src */
 {
 #ifdef NICENAMES
-"sub rd,address_src",16,9,
-0x3c,
+"sub rd,address_src",16,9,0x3c,
 #endif
 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,365},
-
+       {CLASS_BIT+4,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,167},
 
 /* 0100 0011 ssN0 dddd address_src *** sub rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"sub rd,address_src(rs)",16,10,
-0x3c,
+"sub rd,address_src(rs)",16,10,0x3c,
 #endif
 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,366},
-
+       {CLASS_BIT+4,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,167},
 
 /* 0000 0011 0000 dddd imm16 *** sub rd,imm16 */
 {
 #ifdef NICENAMES
-"sub rd,imm16",16,7,
-0x3c,
+"sub rd,imm16",16,7,0x3c,
 #endif
 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,367},
-
+       {CLASS_BIT+0,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,167},
 
 /* 1000 0011 ssss dddd *** sub rd,rs */
 {
 #ifdef NICENAMES
-"sub rd,rs",16,4,
-0x3c,
+"sub rd,rs",16,4,0x3c,
 #endif
 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+3,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,368},
-
+       {CLASS_BIT+8,CLASS_BIT+3,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,167},
 
 /* 0000 0010 ssN0 dddd *** subb rbd,@rs */
 {
 #ifdef NICENAMES
-"subb rbd,@rs",8,7,
-0x3f,
+"subb rbd,@rs",8,7,0x3f,
 #endif
 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,369},
-
+       {CLASS_BIT+0,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,168},
 
 /* 0100 0010 0000 dddd address_src *** subb rbd,address_src */
 {
 #ifdef NICENAMES
-"subb rbd,address_src",8,9,
-0x3f,
+"subb rbd,address_src",8,9,0x3f,
 #endif
 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,370},
-
+       {CLASS_BIT+4,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,168},
 
 /* 0100 0010 ssN0 dddd address_src *** subb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"subb rbd,address_src(rs)",8,10,
-0x3f,
+"subb rbd,address_src(rs)",8,10,0x3f,
 #endif
 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,371},
-
+       {CLASS_BIT+4,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,168},
 
 /* 0000 0010 0000 dddd imm8 imm8 *** subb rbd,imm8 */
 {
 #ifdef NICENAMES
-"subb rbd,imm8",8,7,
-0x3f,
+"subb rbd,imm8",8,7,0x3f,
 #endif
 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,372},
-
+       {CLASS_BIT+0,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,168},
 
 /* 1000 0010 ssss dddd *** subb rbd,rbs */
 {
 #ifdef NICENAMES
-"subb rbd,rbs",8,4,
-0x3f,
+"subb rbd,rbs",8,4,0x3f,
 #endif
 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,373},
-
+       {CLASS_BIT+8,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,168},
 
 /* 0001 0010 ssN0 dddd *** subl rrd,@rs */
 {
 #ifdef NICENAMES
-"subl rrd,@rs",32,14,
-0x3c,
+"subl rrd,@rs",32,14,0x3c,
 #endif
 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+1,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,374},
-
+       {CLASS_BIT+1,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,169},
 
 /* 0101 0010 0000 dddd address_src *** subl rrd,address_src */
 {
 #ifdef NICENAMES
-"subl rrd,address_src",32,15,
-0x3c,
+"subl rrd,address_src",32,15,0x3c,
 #endif
 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+5,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,375},
-
+       {CLASS_BIT+5,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,169},
 
 /* 0101 0010 ssN0 dddd address_src *** subl rrd,address_src(rs) */
 {
 #ifdef NICENAMES
-"subl rrd,address_src(rs)",32,16,
-0x3c,
+"subl rrd,address_src(rs)",32,16,0x3c,
 #endif
 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+5,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,376},
-
+       {CLASS_BIT+5,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,169},
 
 /* 0001 0010 0000 dddd imm32 *** subl rrd,imm32 */
 {
 #ifdef NICENAMES
-"subl rrd,imm32",32,14,
-0x3c,
+"subl rrd,imm32",32,14,0x3c,
 #endif
 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
-       {CLASS_BIT+1,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,377},
-
+       {CLASS_BIT+1,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,169},
 
 /* 1001 0010 ssss dddd *** subl rrd,rrs */
 {
 #ifdef NICENAMES
-"subl rrd,rrs",32,8,
-0x3c,
+"subl rrd,rrs",32,8,0x3c,
 #endif
 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
-       {CLASS_BIT+9,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,378},
-
+       {CLASS_BIT+9,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,169},
 
 /* 1010 1111 dddd cccc *** tcc cc,rd */
 {
 #ifdef NICENAMES
-"tcc cc,rd",16,5,
-0x00,
+"tcc cc,rd",16,5,0x00,
 #endif
 "tcc",OPC_tcc,0,{CLASS_CC,CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,379},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,170},
 
 /* 1010 1110 dddd cccc *** tccb cc,rbd */
 {
 #ifdef NICENAMES
-"tccb cc,rbd",8,5,
-0x00,
+"tccb cc,rbd",8,5,0x00,
 #endif
 "tccb",OPC_tccb,0,{CLASS_CC,CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+0xa,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,380},
-
+       {CLASS_BIT+0xa,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,171},
 
 /* 0000 1101 ddN0 0100 *** test @rd */
 {
 #ifdef NICENAMES
-"test @rd",16,8,
-0x18,
+"test @rd",16,8,0x18,
 #endif
 "test",OPC_test,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,381},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,172},
 
 /* 0100 1101 0000 0100 address_dst *** test address_dst */
 {
 #ifdef NICENAMES
-"test address_dst",16,11,
-0x00,
+"test address_dst",16,11,0x00,
 #endif
 "test",OPC_test,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,382},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,172},
 
 /* 0100 1101 ddN0 0100 address_dst *** test address_dst(rd) */
 {
 #ifdef NICENAMES
-"test address_dst(rd)",16,12,
-0x00,
+"test address_dst(rd)",16,12,0x00,
 #endif
 "test",OPC_test,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,383},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,172},
 
 /* 1000 1101 dddd 0100 *** test rd */
 {
 #ifdef NICENAMES
-"test rd",16,7,
-0x00,
+"test rd",16,7,0x00,
 #endif
 "test",OPC_test,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,384},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,172},
 
 /* 0000 1100 ddN0 0100 *** testb @rd */
 {
 #ifdef NICENAMES
-"testb @rd",8,8,
-0x1c,
+"testb @rd",8,8,0x1c,
 #endif
 "testb",OPC_testb,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,385},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,173},
 
 /* 0100 1100 0000 0100 address_dst *** testb address_dst */
 {
 #ifdef NICENAMES
-"testb address_dst",8,11,
-0x1c,
+"testb address_dst",8,11,0x1c,
 #endif
 "testb",OPC_testb,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,386},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,173},
 
 /* 0100 1100 ddN0 0100 address_dst *** testb address_dst(rd) */
 {
 #ifdef NICENAMES
-"testb address_dst(rd)",8,12,
-0x1c,
+"testb address_dst(rd)",8,12,0x1c,
 #endif
 "testb",OPC_testb,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,387},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,173},
 
 /* 1000 1100 dddd 0100 *** testb rbd */
 {
 #ifdef NICENAMES
-"testb rbd",8,7,
-0x1c,
+"testb rbd",8,7,0x1c,
 #endif
 "testb",OPC_testb,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,388},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,173},
 
 /* 0001 1100 ddN0 1000 *** testl @rd */
 {
 #ifdef NICENAMES
-"testl @rd",32,13,
-0x18,
+"testl @rd",32,13,0x18,
 #endif
 "testl",OPC_testl,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,389},
-
+       {CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,174},
 
 /* 0101 1100 0000 1000 address_dst *** testl address_dst */
 {
 #ifdef NICENAMES
-"testl address_dst",32,16,
-0x18,
+"testl address_dst",32,16,0x18,
 #endif
 "testl",OPC_testl,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,390},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,174},
 
 /* 0101 1100 ddN0 1000 address_dst *** testl address_dst(rd) */
 {
 #ifdef NICENAMES
-"testl address_dst(rd)",32,17,
-0x18,
+"testl address_dst(rd)",32,17,0x18,
 #endif
 "testl",OPC_testl,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,391},
-
+       {CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,174},
 
 /* 1001 1100 dddd 1000 *** testl rrd */
 {
 #ifdef NICENAMES
-"testl rrd",32,13,
-0x18,
+"testl rrd",32,13,0x18,
 #endif
 "testl",OPC_testl,0,{CLASS_REG_LONG+(ARG_RD),},
-       {CLASS_BIT+9,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,392},
-
+       {CLASS_BIT+9,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,174},
 
 /* 1011 1000 ddN0 1000 0000 aaaa ssN0 0000 *** trdb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"trdb @rd,@rs,rba",8,25,
-0x1c,
+"trdb @rd,@rs,rba",8,25,0x1c,
 #endif
 "trdb",OPC_trdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,393},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,175},
 
 /* 1011 1000 ddN0 1100 0000 aaaa ssN0 0000 *** trdrb @rd,@rs,rba */
 {
 #ifdef NICENAMES
-"trdrb @rd,@rs,rba",8,25,
-0x1c,
+"trdrb @rd,@rs,rba",8,25,0x1c,
 #endif
 "trdrb",OPC_trdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RA),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,394},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,176},
 
 /* 1011 1000 ddN0 0000 0000 rrrr ssN0 0000 *** trib @rd,@rs,rbr */
 {
 #ifdef NICENAMES
-"trib @rd,@rs,rbr",8,25,
-0x1c,
+"trib @rd,@rs,rbr",8,25,0x1c,
 #endif
 "trib",OPC_trib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,395},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,177},
 
 /* 1011 1000 ddN0 0100 0000 rrrr ssN0 0000 *** trirb @rd,@rs,rbr */
 {
 #ifdef NICENAMES
-"trirb @rd,@rs,rbr",8,25,
-0x1c,
+"trirb @rd,@rs,rbr",8,25,0x1c,
 #endif
 "trirb",OPC_trirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,396},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,178},
 
 /* 1011 1000 aaN0 1010 0000 rrrr bbN0 0000 *** trtdb @ra,@rb,rbr */
 {
 #ifdef NICENAMES
-"trtdb @ra,@rb,rbr",8,25,
-0x1c,
+"trtdb @ra,@rb,rbr",8,25,0x1c,
 #endif
 "trtdb",OPC_trtdb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,397},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,179},
 
 /* 1011 1000 aaN0 1110 0000 rrrr bbN0 1110 *** trtdrb @ra,@rb,rbr */
 {
 #ifdef NICENAMES
-"trtdrb @ra,@rb,rbr",8,25,
-0x1c,
+"trtdrb @ra,@rb,rbr",8,25,0x1c,
 #endif
 "trtdrb",OPC_trtdrb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,398},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,180},
 
 /* 1011 1000 aaN0 0010 0000 rrrr bbN0 0000 *** trtib @ra,@rb,rbr */
 {
 #ifdef NICENAMES
-"trtib @ra,@rb,rbr",8,25,
-0x1c,
+"trtib @ra,@rb,rbr",8,25,0x1c,
 #endif
 "trtib",OPC_trtib,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,399},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,181},
 
 /* 1011 1000 aaN0 0110 0000 rrrr bbN0 1110 *** trtirb @ra,@rb,rbr */
 {
 #ifdef NICENAMES
-"trtirb @ra,@rb,rbr",8,25,
-0x1c,
+"trtirb @ra,@rb,rbr",8,25,0x1c,
 #endif
 "trtirb",OPC_trtirb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,400},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0xe,0,},3,4,182},
 
 /* 1011 1000 aaN0 1010 0000 rrrr bbN0 0000 *** trtrb @ra,@rb,rbr */
 {
 #ifdef NICENAMES
-"trtrb @ra,@rb,rbr",8,25,
-0x1c,
+"trtrb @ra,@rb,rbr",8,25,0x1c,
 #endif
 "trtrb",OPC_trtrb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_BYTE+(ARG_RR),},
-       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,401},
-
+       {CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RA),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RB),CLASS_BIT+0,0,},3,4,183},
 
 /* 0000 1101 ddN0 0110 *** tset @rd */
 {
 #ifdef NICENAMES
-"tset @rd",16,11,
-0x08,
+"tset @rd",16,11,0x08,
 #endif
 "tset",OPC_tset,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,402},
-
+       {CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,184},
 
 /* 0100 1101 0000 0110 address_dst *** tset address_dst */
 {
 #ifdef NICENAMES
-"tset address_dst",16,14,
-0x08,
+"tset address_dst",16,14,0x08,
 #endif
 "tset",OPC_tset,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,403},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,184},
 
 /* 0100 1101 ddN0 0110 address_dst *** tset address_dst(rd) */
 {
 #ifdef NICENAMES
-"tset address_dst(rd)",16,15,
-0x08,
+"tset address_dst(rd)",16,15,0x08,
 #endif
 "tset",OPC_tset,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,404},
-
+       {CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,184},
 
 /* 1000 1101 dddd 0110 *** tset rd */
 {
 #ifdef NICENAMES
-"tset rd",16,7,
-0x08,
+"tset rd",16,7,0x08,
 #endif
 "tset",OPC_tset,0,{CLASS_REG_WORD+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,405},
-
+       {CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,184},
 
 /* 0000 1100 ddN0 0110 *** tsetb @rd */
 {
 #ifdef NICENAMES
-"tsetb @rd",8,11,
-0x08,
+"tsetb @rd",8,11,0x08,
 #endif
 "tsetb",OPC_tsetb,0,{CLASS_IR+(ARG_RD),},
-       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,406},
-
+       {CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,185},
 
 /* 0100 1100 0000 0110 address_dst *** tsetb address_dst */
 {
 #ifdef NICENAMES
-"tsetb address_dst",8,14,
-0x08,
+"tsetb address_dst",8,14,0x08,
 #endif
 "tsetb",OPC_tsetb,0,{CLASS_DA+(ARG_DST),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,407},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,185},
 
 /* 0100 1100 ddN0 0110 address_dst *** tsetb address_dst(rd) */
 {
 #ifdef NICENAMES
-"tsetb address_dst(rd)",8,15,
-0x08,
+"tsetb address_dst(rd)",8,15,0x08,
 #endif
 "tsetb",OPC_tsetb,0,{CLASS_X+(ARG_RD),},
-       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,408},
-
+       {CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,185},
 
 /* 1000 1100 dddd 0110 *** tsetb rbd */
 {
 #ifdef NICENAMES
-"tsetb rbd",8,7,
-0x08,
+"tsetb rbd",8,7,0x08,
 #endif
 "tsetb",OPC_tsetb,0,{CLASS_REG_BYTE+(ARG_RD),},
-       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,409},
-
+       {CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,185},
 
 /* 0000 1001 ssN0 dddd *** xor rd,@rs */
 {
 #ifdef NICENAMES
-"xor rd,@rs",16,7,
-0x18,
+"xor rd,@rs",16,7,0x18,
 #endif
 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,410},
-
+       {CLASS_BIT+0,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,186},
 
 /* 0100 1001 0000 dddd address_src *** xor rd,address_src */
 {
 #ifdef NICENAMES
-"xor rd,address_src",16,9,
-0x18,
+"xor rd,address_src",16,9,0x18,
 #endif
 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,411},
-
+       {CLASS_BIT+4,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,186},
 
 /* 0100 1001 ssN0 dddd address_src *** xor rd,address_src(rs) */
 {
 #ifdef NICENAMES
-"xor rd,address_src(rs)",16,10,
-0x18,
+"xor rd,address_src(rs)",16,10,0x18,
 #endif
 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,412},
-
+       {CLASS_BIT+4,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,186},
 
 /* 0000 1001 0000 dddd imm16 *** xor rd,imm16 */
 {
 #ifdef NICENAMES
-"xor rd,imm16",16,7,
-0x18,
+"xor rd,imm16",16,7,0x18,
 #endif
 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
-       {CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,413},
-
+       {CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,186},
 
 /* 1000 1001 ssss dddd *** xor rd,rs */
 {
 #ifdef NICENAMES
-"xor rd,rs",16,4,
-0x18,
+"xor rd,rs",16,4,0x18,
 #endif
 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,414},
-
+       {CLASS_BIT+8,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,186},
 
 /* 0000 1000 ssN0 dddd *** xorb rbd,@rs */
 {
 #ifdef NICENAMES
-"xorb rbd,@rs",8,7,
-0x1c,
+"xorb rbd,@rs",8,7,0x1c,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
-       {CLASS_BIT+0,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,415},
-
+       {CLASS_BIT+0,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,187},
 
 /* 0100 1000 0000 dddd address_src *** xorb rbd,address_src */
 {
 #ifdef NICENAMES
-"xorb rbd,address_src",8,9,
-0x1c,
+"xorb rbd,address_src",8,9,0x1c,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
-       {CLASS_BIT+4,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,416},
-
+       {CLASS_BIT+4,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,187},
 
 /* 0100 1000 ssN0 dddd address_src *** xorb rbd,address_src(rs) */
 {
 #ifdef NICENAMES
-"xorb rbd,address_src(rs)",8,10,
-0x1c,
+"xorb rbd,address_src(rs)",8,10,0x1c,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
-       {CLASS_BIT+4,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,417},
-
+       {CLASS_BIT+4,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,187},
 
 /* 0000 1000 0000 dddd imm8 imm8 *** xorb rbd,imm8 */
 {
 #ifdef NICENAMES
-"xorb rbd,imm8",8,7,
-0x1c,
+"xorb rbd,imm8",8,7,0x1c,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
-       {CLASS_BIT+0,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,418},
-
+       {CLASS_BIT+0,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,187},
 
 /* 1000 1000 ssss dddd *** xorb rbd,rbs */
 {
 #ifdef NICENAMES
-"xorb rbd,rbs",8,4,
-0x1c,
+"xorb rbd,rbs",8,4,0x1c,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,419},
-
+       {CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,187},
 
 /* 1000 1000 ssss dddd *** xorb rbd,rbs */
 {
 #ifdef NICENAMES
-"xorb rbd,rbs",8,4,
-0x01,
+"xorb rbd,rbs",8,4,0x01,
 #endif
 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
-       {CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,420},
+       {CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,187},
 
 /* end marker */
 {
index 5bd9240c0213455031cc01e4ac70d1e424cd81be..efce2cf5948524aa0371c043c932d6eb2a61ed8d 100644 (file)
@@ -21,6 +21,7 @@
 
 #include <stdio.h>
 #include "sysdep.h"
+#include "libiberty.h"
 
 #define BYTE_INFO_LEN 10
 
@@ -37,498 +38,498 @@ struct op
 #define iswhite(x) ((x) == ' ' || (x) == '\t')
 struct op opt[] =
 {
-  "------", 10, 8, "0000 1110 imm8", "ext0e imm8", 0,
-  "------", 10, 8, "0000 1111 imm8", "ext0f imm8", 0,
-  "------", 10, 8, "1000 1110 imm8", "ext8e imm8", 0,
-  "------", 10, 8, "1000 1111 imm8", "ext8f imm8", 0,
-
-  "------", 10, 8, "0011 0110 imm8", "rsvd36", 0,
-  "------", 10, 8, "0011 1000 imm8", "rsvd38", 0,
-  "------", 10, 8, "0111 1000 imm8", "rsvd78", 0,
-  "------", 10, 8, "0111 1110 imm8", "rsvd7e", 0,
-
-  "------", 10, 8, "1001 1101 imm8", "rsvd9d", 0,
-  "------", 10, 8, "1001 1111 imm8", "rsvd9f", 0,
-
-  "------", 10, 8, "1011 1001 imm8", "rsvdb9", 0,
-  "------", 10, 8, "1011 1111 imm8", "rsvdbf", 0,
-
-  "---V--", 11, 16, "1011 1011 ssN0 1001 0000 rrrr ddN0 1000", "ldd @rd,@rs,rr", 0,
-  "---V--", 11, 16, "1011 1011 ssN0 1001 0000 rrrr ddN0 0000", "lddr @rd,@rs,rr", 0,
-  "---V--", 11, 8, "1011 1010 ssN0 1001 0000 rrrr ddN0 0000", "lddrb @rd,@rs,rr", 0,
-  "---V--", 11, 16, "1011 1011 ssN0 0001 0000 rrrr ddN0 0000", "ldir @rd,@rs,rr", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 0000 0000 rrrr dddd cccc", "cpi rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 0100 0000 rrrr dddd cccc", "cpir rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 1100 0000 rrrr dddd cccc", "cpdr rd,@rs,rr,cc", 0,
-  "---V--", 11, 16, "1011 1011 ssN0 0001 0000 rrrr ddN0 1000", "ldi @rd,@rs,rr", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 1000 0000 rrrr dddd cccc", "cpd rd,@rs,rr,cc", 0,
-  "---V--", 11, 8, "1011 1010 ssN0 0001 0000 rrrr ddN0 0000", "ldirb @rd,@rs,rr", 0,
-  "---V--", 11, 8, "1011 1010 ssN0 1001 0000 rrrr ddN0 1000", "lddb @rd,@rs,rr", 0,
-  "---V--", 11, 8, "1011 1010 ssN0 0001 0000 rrrr ddN0 1000", "ldib @rd,@rs,rr", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 1000 0000 rrrr dddd cccc", "cpdb rbd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 1100 0000 rrrr dddd cccc", "cpdrb rbd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 0000 0000 rrrr dddd cccc", "cpib rbd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 0100 0000 rrrr dddd cccc", "cpirb rbd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 1010 0000 rrrr ddN0 cccc", "cpsd @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 1010 0000 rrrr ddN0 cccc", "cpsdb @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 1110 0000 rrrr ddN0 cccc", "cpsdr @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 1110 0000 rrrr ddN0 cccc", "cpsdrb @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 0010 0000 rrrr ddN0 cccc", "cpsi @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 0010 0000 rrrr ddN0 cccc", "cpsib @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 16, "1011 1011 ssN0 0110 0000 rrrr ddN0 cccc", "cpsir @rd,@rs,rr,cc", 0,
-  "CZSV--", 11, 8, "1011 1010 ssN0 0110 0000 rrrr ddN0 cccc", "cpsirb @rd,@rs,rr,cc", 0,
-
-  "------", 2, 8, "0011 0110 0000 0000", "bpt", 0,
-  "CZSV--", 5, 16, "1011 0101 ssss dddd", "adc rd,rs", 0,
-  "CZSVDH", 5, 8, "1011 0100 ssss dddd", "adcb rbd,rbs", 0,
-  "CZSV--", 7, 16, "0000 0001 ssN0 dddd", "add rd,@rs", 0,
-  "CZSV--", 9, 16, "0100 0001 0000 dddd address_src", "add rd,address_src", 0,
-  "CZSV--", 10, 16, "0100 0001 ssN0 dddd address_src", "add rd,address_src(rs)", 0,
-  "CZSV--", 7, 16, "0000 0001 0000 dddd imm16", "add rd,imm16", 0,
-  "CZSV--", 4, 16, "1000 0001 ssss dddd", "add rd,rs", 0,
-  "CZSVDH", 7, 8, "0000 0000 ssN0 dddd", "addb rbd,@rs", 0,
-  "CZSVDH", 9, 8, "0100 0000 0000 dddd address_src", "addb rbd,address_src", 0,
-  "CZSVDH", 10, 8, "0100 0000 ssN0 dddd address_src", "addb rbd,address_src(rs)", 0,
-  "CZSVDH", 7, 8, "0000 0000 0000 dddd imm8 imm8", "addb rbd,imm8", 0,
-  "CZSVDH", 4, 8, "1000 0000 ssss dddd", "addb rbd,rbs", 0,
-  "CZSV--", 14, 32, "0001 0110 ssN0 dddd", "addl rrd,@rs", 0,
-  "CZSV--", 15, 32, "0101 0110 0000 dddd address_src", "addl rrd,address_src", 0,
-  "CZSV--", 16, 32, "0101 0110 ssN0 dddd address_src", "addl rrd,address_src(rs)", 0,
-  "CZSV--", 14, 32, "0001 0110 0000 dddd imm32", "addl rrd,imm32", 0,
-  "CZSV--", 8, 32, "1001 0110 ssss dddd", "addl rrd,rrs", 0,
-
-  "-ZS---", 7, 16, "0000 0111 ssN0 dddd", "and rd,@rs", 0,
-  "-ZS---", 9, 16, "0100 0111 0000 dddd address_src", "and rd,address_src", 0,
-  "-ZS---", 10, 16, "0100 0111 ssN0 dddd address_src", "and rd,address_src(rs)", 0,
-  "-ZS---", 7, 16, "0000 0111 0000 dddd imm16", "and rd,imm16", 0,
-  "-ZS---", 4, 16, "1000 0111 ssss dddd", "and rd,rs", 0,
-  "-ZSP--", 7, 8, "0000 0110 ssN0 dddd", "andb rbd,@rs", 0,
-  "-ZSP--", 9, 8, "0100 0110 0000 dddd address_src", "andb rbd,address_src", 0,
-  "-ZSP--", 10, 8, "0100 0110 ssN0 dddd address_src", "andb rbd,address_src(rs)", 0,
-  "-ZSP--", 7, 8, "0000 0110 0000 dddd imm8 imm8", "andb rbd,imm8", 0,
-  "-ZSP--", 4, 8, "1000 0110 ssss dddd", "andb rbd,rbs", 0,
-
-  "-Z----", 8, 16, "0010 0111 ddN0 imm4", "bit @rd,imm4", 0,
-  "-Z----", 11, 16, "0110 0111 ddN0 imm4 address_dst", "bit address_dst(rd),imm4", 0,
-  "-Z----", 10, 16, "0110 0111 0000 imm4 address_dst", "bit address_dst,imm4", 0,
-  "-Z----", 4, 16, "1010 0111 dddd imm4", "bit rd,imm4", 0,
-  "-Z----", 10, 16, "0010 0111 0000 ssss 0000 dddd 0000 0000", "bit rd,rs", 0,
-
-  "-Z----", 8, 8, "0010 0110 ddN0 imm4", "bitb @rd,imm4", 0,
-  "-Z----", 11, 8, "0110 0110 ddN0 imm4 address_dst", "bitb address_dst(rd),imm4", 0,
-  "-Z----", 10, 8, "0110 0110 0000 imm4 address_dst", "bitb address_dst,imm4", 0,
-  "-Z----", 4, 8, "1010 0110 dddd imm4", "bitb rbd,imm4", 0,
-  "-Z----", 10, 8, "0010 0110 0000 ssss 0000 dddd 0000 0000", "bitb rbd,rs", 0,
-
-  "------", 10, 32, "0001 1111 ddN0 0000", "call @rd", 0,
-  "------", 12, 32, "0101 1111 0000 0000 address_dst", "call address_dst", 0,
-  "------", 13, 32, "0101 1111 ddN0 0000 address_dst", "call address_dst(rd)", 0,
-  "------", 10, 16, "1101 disp12", "calr disp12", 0,
-
-  "------", 8, 16, "0000 1101 ddN0 1000", "clr @rd", 0,
-  "------", 11, 16, "0100 1101 0000 1000 address_dst", "clr address_dst", 0,
-  "------", 12, 16, "0100 1101 ddN0 1000 address_dst", "clr address_dst(rd)", 0,
-  "------", 7, 16, "1000 1101 dddd 1000", "clr rd", 0,
-  "------", 8, 8, "0000 1100 ddN0 1000", "clrb @rd", 0,
-  "------", 11, 8, "0100 1100 0000 1000 address_dst", "clrb address_dst", 0,
-  "------", 12, 8, "0100 1100 ddN0 1000 address_dst", "clrb address_dst(rd)", 0,
-  "------", 7, 8, "1000 1100 dddd 1000", "clrb rbd", 0,
-  "-ZS---", 12, 16, "0000 1101 ddN0 0000", "com @rd", 0,
-  "-ZS---", 15, 16, "0100 1101 0000 0000 address_dst", "com address_dst", 0,
-  "-ZS---", 16, 16, "0100 1101 ddN0 0000 address_dst", "com address_dst(rd)", 0,
-  "-ZS---", 7, 16, "1000 1101 dddd 0000", "com rd", 0,
-  "-ZSP--", 12, 8, "0000 1100 ddN0 0000", "comb @rd", 0,
-  "-ZSP--", 15, 8, "0100 1100 0000 0000 address_dst", "comb address_dst", 0,
-  "-ZSP--", 16, 8, "0100 1100 ddN0 0000 address_dst", "comb address_dst(rd)", 0,
-  "-ZSP--", 7, 8, "1000 1100 dddd 0000", "comb rbd", 0,
-  "CZSP--", 7, 16, "1000 1101 flags 0101", "comflg flags", 0,
-
-  "CZSV--", 11, 16, "0000 1101 ddN0 0001 imm16", "cp @rd,imm16", 0,
-  "CZSV--", 15, 16, "0100 1101 ddN0 0001 address_dst imm16", "cp address_dst(rd),imm16", 0,
-  "CZSV--", 14, 16, "0100 1101 0000 0001 address_dst imm16", "cp address_dst,imm16", 0,
-
-  "CZSV--", 7, 16, "0000 1011 ssN0 dddd", "cp rd,@rs", 0,
-  "CZSV--", 9, 16, "0100 1011 0000 dddd address_src", "cp rd,address_src", 0,
-  "CZSV--", 10, 16, "0100 1011 ssN0 dddd address_src", "cp rd,address_src(rs)", 0,
-  "CZSV--", 7, 16, "0000 1011 0000 dddd imm16", "cp rd,imm16", 0,
-  "CZSV--", 4, 16, "1000 1011 ssss dddd", "cp rd,rs", 0,
-
-  "CZSV--", 11, 8, "0000 1100 ddN0 0001 imm8 imm8", "cpb @rd,imm8", 0,
-  "CZSV--", 15, 8, "0100 1100 ddN0 0001 address_dst imm8 imm8", "cpb address_dst(rd),imm8", 0,
-  "CZSV--", 14, 8, "0100 1100 0000 0001 address_dst imm8 imm8", "cpb address_dst,imm8", 0,
-  "CZSV--", 7, 8, "0000 1010 ssN0 dddd", "cpb rbd,@rs", 0,
-  "CZSV--", 9, 8, "0100 1010 0000 dddd address_src", "cpb rbd,address_src", 0,
-  "CZSV--", 10, 8, "0100 1010 ssN0 dddd address_src", "cpb rbd,address_src(rs)", 0,
-  "CZSV--", 7, 8, "0000 1010 0000 dddd imm8 imm8", "cpb rbd,imm8", 0,
-  "CZSV--", 4, 8, "1000 1010 ssss dddd", "cpb rbd,rbs", 0,
-
-  "CZSV--", 14, 32, "0001 0000 ssN0 dddd", "cpl rrd,@rs", 0,
-  "CZSV--", 15, 32, "0101 0000 0000 dddd address_src", "cpl rrd,address_src", 0,
-  "CZSV--", 16, 32, "0101 0000 ssN0 dddd address_src", "cpl rrd,address_src(rs)", 0,
-  "CZSV--", 14, 32, "0001 0000 0000 dddd imm32", "cpl rrd,imm32", 0,
-  "CZSV--", 8, 32, "1001 0000 ssss dddd", "cpl rrd,rrs", 0,
-
-  "CZS---", 5, 8, "1011 0000 dddd 0000", "dab rbd", 0,
-  "------", 11, 16, "1111 dddd 0disp7", "dbjnz rbd,disp7", 0,
-  "-ZSV--", 11, 16, "0010 1011 ddN0 imm4m1", "dec @rd,imm4m1", 0,
-  "-ZSV--", 14, 16, "0110 1011 ddN0 imm4m1 address_dst", "dec address_dst(rd),imm4m1", 0,
-  "-ZSV--", 13, 16, "0110 1011 0000 imm4m1 address_dst", "dec address_dst,imm4m1", 0,
-  "-ZSV--", 4, 16, "1010 1011 dddd imm4m1", "dec rd,imm4m1", 0,
-  "-ZSV--", 11, 8, "0010 1010 ddN0 imm4m1", "decb @rd,imm4m1", 0,
-  "-ZSV--", 14, 8, "0110 1010 ddN0 imm4m1 address_dst", "decb address_dst(rd),imm4m1", 0,
-  "-ZSV--", 13, 8, "0110 1010 0000 imm4m1 address_dst", "decb address_dst,imm4m1", 0,
-  "-ZSV--", 4, 8, "1010 1010 dddd imm4m1", "decb rbd,imm4m1", 0,
-
-  "------", 7, 16, "0111 1100 0000 00ii", "di i2", 0,
-  "CZSV--", 107, 16, "0001 1011 ssN0 dddd", "div rrd,@rs", 0,
-  "CZSV--", 107, 16, "0101 1011 0000 dddd address_src", "div rrd,address_src", 0,
-  "CZSV--", 107, 16, "0101 1011 ssN0 dddd address_src", "div rrd,address_src(rs)", 0,
-  "CZSV--", 107, 16, "0001 1011 0000 dddd imm16", "div rrd,imm16", 0,
-  "CZSV--", 107, 16, "1001 1011 ssss dddd", "div rrd,rs", 0,
-  "CZSV--", 744, 32, "0001 1010 ssN0 dddd", "divl rqd,@rs", 0,
-  "CZSV--", 745, 32, "0101 1010 0000 dddd address_src", "divl rqd,address_src", 0,
-  "CZSV--", 746, 32, "0101 1010 ssN0 dddd address_src", "divl rqd,address_src(rs)", 0,
-  "CZSV--", 744, 32, "0001 1010 0000 dddd imm32", "divl rqd,imm32", 0,
-  "CZSV--", 744, 32, "1001 1010 ssss dddd", "divl rqd,rrs", 0,
-
-  "------", 11, 16, "1111 dddd 1disp7", "djnz rd,disp7", 0,
-  "------", 7, 16, "0111 1100 0000 01ii", "ei i2", 0,
-  "------", 6, 16, "1010 1101 ssss dddd", "ex rd,rs", 0,
-  "------", 12, 16, "0010 1101 ssN0 dddd", "ex rd,@rs", 0,
-  "------", 15, 16, "0110 1101 0000 dddd address_src", "ex rd,address_src", 0,
-  "------", 16, 16, "0110 1101 ssN0 dddd address_src", "ex rd,address_src(rs)", 0,
-
-  "------", 12, 8, "0010 1100 ssN0 dddd", "exb rbd,@rs", 0,
-  "------", 15, 8, "0110 1100 0000 dddd address_src", "exb rbd,address_src", 0,
-  "------", 16, 8, "0110 1100 ssN0 dddd address_src", "exb rbd,address_src(rs)", 0,
-  "------", 6, 8, "1010 1100 ssss dddd", "exb rbd,rbs", 0,
-
-  "------", 11, 16, "1011 0001 dddd 1010", "exts rrd", 0,
-  "------", 11, 8, "1011 0001 dddd 0000", "extsb rd", 0,
-  "------", 11, 32, "1011 0001 dddd 0111", "extsl rqd", 0,
-
-  "------", 8, 16, "0111 1010 0000 0000", "halt", 0,
-  "------", 10, 16, "0011 1101 ssN0 dddd", "in rd,@rs", 0,
-  "------", 12, 8, "0011 1100 ssN0 dddd", "inb rbd,@rs", 0,
-  "------", 12, 16, "0011 1011 dddd 0100 imm16", "in rd,imm16", 0,
-  "------", 10, 8, "0011 1010 dddd 0100 imm16", "inb rbd,imm16", 0,
-  "-ZSV--", 11, 16, "0010 1001 ddN0 imm4m1", "inc @rd,imm4m1", 0,
-  "-ZSV--", 14, 16, "0110 1001 ddN0 imm4m1 address_dst", "inc address_dst(rd),imm4m1", 0,
-  "-ZSV--", 13, 16, "0110 1001 0000 imm4m1 address_dst", "inc address_dst,imm4m1", 0,
-  "-ZSV--", 4, 16, "1010 1001 dddd imm4m1", "inc rd,imm4m1", 0,
-  "-ZSV--", 11, 8, "0010 1000 ddN0 imm4m1", "incb @rd,imm4m1", 0,
-  "-ZSV--", 14, 8, "0110 1000 ddN0 imm4m1 address_dst", "incb address_dst(rd),imm4m1", 0,
-  "-ZSV--", 13, 8, "0110 1000 0000 imm4m1 address_dst", "incb address_dst,imm4m1", 0,
-  "-ZSV--", 4, 8, "1010 1000 dddd imm4m1", "incb rbd,imm4m1", 0,
-  "---V--", 21, 16, "0011 1011 ssN0 1000 0000 aaaa ddN0 1000", "ind @rd,@rs,ra", 0,
-  "---V--", 21, 8, "0011 1010 ssN0 1000 0000 aaaa ddN0 1000", "indb @rd,@rs,rba", 0,
-  "---V--", 21, 8, "0011 1010 ssN0 0000 0000 aaaa ddN0 1000", "inib @rd,@rs,ra", 0,
-  "---V--", 21, 16, "0011 1010 ssN0 0000 0000 aaaa ddN0 0000", "inibr @rd,@rs,ra", 0,
-  "CZSVDH", 13, 16, "0111 1011 0000 0000", "iret", 0,
-  "------", 10, 16, "0001 1110 ddN0 cccc", "jp cc,@rd", 0,
-  "------", 7, 16, "0101 1110 0000 cccc address_dst", "jp cc,address_dst", 0,
-  "------", 8, 16, "0101 1110 ddN0 cccc address_dst", "jp cc,address_dst(rd)", 0,
-  "------", 6, 16, "1110 cccc disp8", "jr cc,disp8", 0,
-
-  "------", 7, 16, "0000 1101 ddN0 0101 imm16", "ld @rd,imm16", 0,
-  "------", 8, 16, "0010 1111 ddN0 ssss", "ld @rd,rs", 0,
-  "------", 15, 16, "0100 1101 ddN0 0101 address_dst imm16", "ld address_dst(rd),imm16", 0,
-  "------", 12, 16, "0110 1111 ddN0 ssss address_dst", "ld address_dst(rd),rs", 0,
-  "------", 14, 16, "0100 1101 0000 0101 address_dst imm16", "ld address_dst,imm16", 0,
-  "------", 11, 16, "0110 1111 0000 ssss address_dst", "ld address_dst,rs", 0,
-  "------", 14, 16, "0011 0011 ddN0 ssss imm16", "ld rd(imm16),rs", 0,
-  "------", 14, 16, "0111 0011 ddN0 ssss 0000 xxxx 0000 0000", "ld rd(rx),rs", 0,
-  "------", 7, 16, "0010 0001 ssN0 dddd", "ld rd,@rs", 0,
-  "------", 9, 16, "0110 0001 0000 dddd address_src", "ld rd,address_src", 0,
-  "------", 10, 16, "0110 0001 ssN0 dddd address_src", "ld rd,address_src(rs)", 0,
-  "------", 7, 16, "0010 0001 0000 dddd imm16", "ld rd,imm16", 0,
-  "------", 3, 16, "1010 0001 ssss dddd", "ld rd,rs", 0,
-  "------", 14, 16, "0011 0001 ssN0 dddd imm16", "ld rd,rs(imm16)", 0,
-  "------", 14, 16, "0111 0001 ssN0 dddd 0000 xxxx 0000 0000", "ld rd,rs(rx)", 0,
-
-  "------", 7, 8, "0000 1100 ddN0 0101 imm8 imm8", "ldb @rd,imm8", 0,
-  "------", 8, 8, "0010 1110 ddN0 ssss", "ldb @rd,rbs", 0,
-  "------", 15, 8, "0100 1100 ddN0 0101 address_dst imm8 imm8", "ldb address_dst(rd),imm8", 0,
-  "------", 12, 8, "0110 1110 ddN0 ssss address_dst", "ldb address_dst(rd),rbs", 0,
-  "------", 14, 8, "0100 1100 0000 0101 address_dst imm8 imm8", "ldb address_dst,imm8", 0,
-  "------", 11, 8, "0110 1110 0000 ssss address_dst", "ldb address_dst,rbs", 0,
-  "------", 14, 8, "0011 0010 ddN0 ssss imm16", "ldb rd(imm16),rbs", 0,
-  "------", 14, 8, "0111 0010 ddN0 ssss 0000 xxxx 0000 0000", "ldb rd(rx),rbs", 0,
-  "------", 7, 8, "0010 0000 ssN0 dddd", "ldb rbd,@rs", 0,
-  "------", 9, 8, "0110 0000 0000 dddd address_src", "ldb rbd,address_src", 0,
-  "------", 10, 8, "0110 0000 ssN0 dddd address_src", "ldb rbd,address_src(rs)", 0,
-  "------", 5, 8, "1100 dddd imm8", "ldb rbd,imm8", 0,
-  "------", 3, 8, "1010 0000 ssss dddd", "ldb rbd,rbs", 0,
-  "------", 14, 8, "0011 0000 ssN0 dddd imm16", "ldb rbd,rs(imm16)", 0,
-  "------", 14, 8, "0111 0000 ssN0 dddd 0000 xxxx 0000 0000", "ldb rbd,rs(rx)", 0,
-
-  "------", 11, 32, "0001 1101 ddN0 ssss", "ldl @rd,rrs", 0,
-  "------", 14, 32, "0101 1101 ddN0 ssss address_dst", "ldl address_dst(rd),rrs", 0,
-  "------", 15, 32, "0101 1101 0000 ssss address_dst", "ldl address_dst,rrs", 0,
-  "------", 17, 32, "0011 0111 ddN0 ssss imm16", "ldl rd(imm16),rrs", 0,
-  "------", 17, 32, "0111 0111 ddN0 ssss 0000 xxxx 0000 0000", "ldl rd(rx),rrs", 0,
-  "------", 11, 32, "0001 0100 ssN0 dddd", "ldl rrd,@rs", 0,
-  "------", 12, 32, "0101 0100 0000 dddd address_src", "ldl rrd,address_src", 0,
-  "------", 13, 32, "0101 0100 ssN0 dddd address_src", "ldl rrd,address_src(rs)", 0,
-  "------", 11, 32, "0001 0100 0000 dddd imm32", "ldl rrd,imm32", 0,
-  "------", 5, 32, "1001 0100 ssss dddd", "ldl rrd,rrs", 0,
-  "------", 17, 32, "0011 0101 ssN0 dddd imm16", "ldl rrd,rs(imm16)", 0,
-  "------", 17, 32, "0111 0101 ssN0 dddd 0000 xxxx 0000 0000", "ldl rrd,rs(rx)", 0,
-
-  "------", 12, 16, "0111 0110 0000 dddd address_src", "lda prd,address_src", 0,
-  "------", 13, 16, "0111 0110 ssN0 dddd address_src", "lda prd,address_src(rs)", 0,
-  "------", 15, 16, "0011 0100 ssN0 dddd imm16", "lda prd,rs(imm16)", 0,
-  "------", 15, 16, "0111 0100 ssN0 dddd 0000 xxxx 0000 0000", "lda prd,rs(rx)", 0,
-  "------", 15, 16, "0011 0100 0000 dddd disp16", "ldar prd,disp16", 0,
-  "------", 7, 32, "0111 1101 ssss 1ccc", "ldctl ctrl,rs", 0,
-  "------", 7, 32, "0111 1101 dddd 0ccc", "ldctl rd,ctrl", 0,
-
-  "------", 5, 16, "1011 1101 dddd imm4", "ldk rd,imm4", 0,
-
-  "------", 11, 16, "0001 1100 ddN0 1001 0000 ssss 0000 imm4m1", "ldm @rd,rs,n", 0,
-  "------", 15, 16, "0101 1100 ddN0 1001 0000 ssss 0000 imm4m1 address_dst", "ldm address_dst(rd),rs,n", 0,
-  "------", 14, 16, "0101 1100 0000 1001 0000 ssss 0000 imm4m1 address_dst", "ldm address_dst,rs,n", 0,
-  "------", 11, 16, "0001 1100 ssN0 0001 0000 dddd 0000 imm4m1", "ldm rd,@rs,n", 0,
-  "------", 15, 16, "0101 1100 ssN0 0001 0000 dddd 0000 imm4m1 address_src", "ldm rd,address_src(rs),n", 0,
-  "------", 14, 16, "0101 1100 0000 0001 0000 dddd 0000 imm4m1 address_src", "ldm rd,address_src,n", 0,
-
-  "CZSVDH", 12, 16, "0011 1001 ssN0 0000", "ldps @rs", 0,
-  "CZSVDH", 16, 16, "0111 1001 0000 0000 address_src", "ldps address_src", 0,
-  "CZSVDH", 17, 16, "0111 1001 ssN0 0000 address_src", "ldps address_src(rs)", 0,
-
-  "------", 14, 16, "0011 0011 0000 ssss disp16", "ldr disp16,rs", 0,
-  "------", 14, 16, "0011 0001 0000 dddd disp16", "ldr rd,disp16", 0,
-  "------", 14, 8, "0011 0010 0000 ssss disp16", "ldrb disp16,rbs", 0,
-  "------", 14, 8, "0011 0000 0000 dddd disp16", "ldrb rbd,disp16", 0,
-  "------", 17, 32, "0011 0111 0000 ssss disp16", "ldrl disp16,rrs", 0,
-  "------", 17, 32, "0011 0101 0000 dddd disp16", "ldrl rrd,disp16", 0,
-
-  "CZS---", 7, 16, "0111 1011 0000 1010", "mbit", 0,
-  "-ZS---", 12, 16, "0111 1011 dddd 1101", "mreq rd", 0,
-  "------", 5, 16, "0111 1011 0000 1001", "mres", 0,
-  "------", 5, 16, "0111 1011 0000 1000", "mset", 0,
-
-  "CZSV--", 70, 16, "0001 1001 ssN0 dddd", "mult rrd,@rs", 0,
-  "CZSV--", 70, 16, "0101 1001 0000 dddd address_src", "mult rrd,address_src", 0,
-  "CZSV--", 70, 16, "0101 1001 ssN0 dddd address_src", "mult rrd,address_src(rs)", 0,
-  "CZSV--", 70, 16, "0001 1001 0000 dddd imm16", "mult rrd,imm16", 0,
-  "CZSV--", 70, 16, "1001 1001 ssss dddd", "mult rrd,rs", 0,
-  "CZSV--", 282, 32, "0001 1000 ssN0 dddd", "multl rqd,@rs", 0,
-  "CZSV--", 282, 32, "0101 1000 0000 dddd address_src", "multl rqd,address_src", 0,
-  "CZSV--", 282, 32, "0101 1000 ssN0 dddd address_src", "multl rqd,address_src(rs)", 0,
-  "CZSV--", 282, 32, "0001 1000 0000 dddd imm32", "multl rqd,imm32", 0,
-  "CZSV--", 282, 32, "1001 1000 ssss dddd", "multl rqd,rrs", 0,
-  "CZSV--", 12, 16, "0000 1101 ddN0 0010", "neg @rd", 0,
-  "CZSV--", 15, 16, "0100 1101 0000 0010 address_dst", "neg address_dst", 0,
-  "CZSV--", 16, 16, "0100 1101 ddN0 0010 address_dst", "neg address_dst(rd)", 0,
-  "CZSV--", 7, 16, "1000 1101 dddd 0010", "neg rd", 0,
-  "CZSV--", 12, 8, "0000 1100 ddN0 0010", "negb @rd", 0,
-  "CZSV--", 15, 8, "0100 1100 0000 0010 address_dst", "negb address_dst", 0,
-  "CZSV--", 16, 8, "0100 1100 ddN0 0010 address_dst", "negb address_dst(rd)", 0,
-  "CZSV--", 7, 8, "1000 1100 dddd 0010", "negb rbd", 0,
-
-  "------", 7, 16, "1000 1101 0000 0111", "nop", 0,
-
-  "CZS---", 7, 16, "0000 0101 ssN0 dddd", "or rd,@rs", 0,
-  "CZS---", 9, 16, "0100 0101 0000 dddd address_src", "or rd,address_src", 0,
-  "CZS---", 10, 16, "0100 0101 ssN0 dddd address_src", "or rd,address_src(rs)", 0,
-  "CZS---", 7, 16, "0000 0101 0000 dddd imm16", "or rd,imm16", 0,
-  "CZS---", 4, 16, "1000 0101 ssss dddd", "or rd,rs", 0,
-
-  "CZSP--", 7, 8, "0000 0100 ssN0 dddd", "orb rbd,@rs", 0,
-  "CZSP--", 9, 8, "0100 0100 0000 dddd address_src", "orb rbd,address_src", 0,
-  "CZSP--", 10, 8, "0100 0100 ssN0 dddd address_src", "orb rbd,address_src(rs)", 0,
-  "CZSP--", 7, 8, "0000 0100 0000 dddd imm8 imm8", "orb rbd,imm8", 0,
-  "CZSP--", 4, 8, "1000 0100 ssss dddd", "orb rbd,rbs", 0,
-
-  "---V--", 0, 16, "0011 1111 ddN0 ssss", "out @rd,rs", 0,
-  "---V--", 0, 16, "0011 1011 ssss 0110 imm16", "out imm16,rs", 0,
-  "---V--", 0, 8, "0011 1110 ddN0 ssss", "outb @rd,rbs", 0,
-  "---V--", 0, 8, "0011 1010 ssss 0110 imm16", "outb imm16,rbs", 0,
-  "---V--", 0, 16, "0011 1011 ssN0 1010 0000 aaaa ddN0 1000", "outd @rd,@rs,ra", 0,
-  "---V--", 0, 16, "0011 1010 ssN0 1010 0000 aaaa ddN0 1000", "outdb @rd,@rs,rba", 0,
-  "---V--", 0, 16, "0011 1011 ssN0 0010 0000 aaaa ddN0 1000", "outi @rd,@rs,ra", 0,
-  "---V--", 0, 16, "0011 1010 ssN0 0010 0000 aaaa ddN0 1000", "outib @rd,@rs,ra", 0,
-  "---V--", 0, 16, "0011 1010 ssN0 0010 0000 aaaa ddN0 0000", "outibr @rd,@rs,ra", 0,
-
-  "------", 12, 16, "0001 0111 ssN0 ddN0", "pop @rd,@rs", 0,
-  "------", 16, 16, "0101 0111 ssN0 ddN0 address_dst", "pop address_dst(rd),@rs", 0,
-  "------", 16, 16, "0101 0111 ssN0 0000 address_dst", "pop address_dst,@rs", 0,
-  "------", 8, 16, "1001 0111 ssN0 dddd", "pop rd,@rs", 0,
-
-  "------", 19, 32, "0001 0101 ssN0 ddN0", "popl @rd,@rs", 0,
-  "------", 23, 32, "0101 0101 ssN0 ddN0 address_dst", "popl address_dst(rd),@rs", 0,
-  "------", 23, 32, "0101 0101 ssN0 0000 address_dst", "popl address_dst,@rs", 0,
-  "------", 12, 32, "1001 0101 ssN0 dddd", "popl rrd,@rs", 0,
-
-  "------", 13, 16, "0001 0011 ddN0 ssN0", "push @rd,@rs", 0,
-  "------", 14, 16, "0101 0011 ddN0 0000 address_src", "push @rd,address_src", 0,
-  "------", 14, 16, "0101 0011 ddN0 ssN0 address_src", "push @rd,address_src(rs)", 0,
-  "------", 12, 16, "0000 1101 ddN0 1001 imm16", "push @rd,imm16", 0,
-  "------", 9, 16, "1001 0011 ddN0 ssss", "push @rd,rs", 0,
-
-  "------", 20, 32, "0001 0001 ddN0 ssN0", "pushl @rd,@rs", 0,
-  "------", 21, 32, "0101 0001 ddN0 ssN0 address_src", "pushl @rd,address_src(rs)", 0,
-  "------", 21, 32, "0101 0001 ddN0 0000 address_src", "pushl @rd,address_src", 0,
-  "------", 12, 32, "1001 0001 ddN0 ssss", "pushl @rd,rrs", 0,
-
-  "------", 11, 16, "0010 0011 ddN0 imm4", "res @rd,imm4", 0,
-  "------", 14, 16, "0110 0011 ddN0 imm4 address_dst", "res address_dst(rd),imm4", 0,
-  "------", 13, 16, "0110 0011 0000 imm4 address_dst", "res address_dst,imm4", 0,
-  "------", 4, 16, "1010 0011 dddd imm4", "res rd,imm4", 0,
-  "------", 10, 16, "0010 0011 0000 ssss 0000 dddd 0000 0000", "res rd,rs", 0,
-
-  "------", 11, 8, "0010 0010 ddN0 imm4", "resb @rd,imm4", 0,
-  "------", 14, 8, "0110 0010 ddN0 imm4 address_dst", "resb address_dst(rd),imm4", 0,
-  "------", 13, 8, "0110 0010 0000 imm4 address_dst", "resb address_dst,imm4", 0,
-  "------", 4, 8, "1010 0010 dddd imm4", "resb rbd,imm4", 0,
-  "------", 10, 8, "0010 0010 0000 ssss 0000 dddd 0000 0000", "resb rbd,rs", 0,
-
-  "CZSV--", 7, 16, "1000 1101 flags 0011", "resflg flags", 0,
-  "------", 10, 16, "1001 1110 0000 cccc", "ret cc", 0,
-
-  "CZSV--", 6, 16, "1011 0011 dddd 00I0", "rl rd,imm1or2", 0,
-  "CZSV--", 6, 8, "1011 0010 dddd 00I0", "rlb rbd,imm1or2", 0,
-  "CZSV--", 6, 16, "1011 0011 dddd 10I0", "rlc rd,imm1or2", 0,
-
-  "-Z----", 9, 8, "1011 0010 dddd 10I0", "rlcb rbd,imm1or2", 0,
-  "-Z----", 9, 8, "1011 1110 aaaa bbbb", "rldb rbb,rba", 0,
-
-  "CZSV--", 6, 16, "1011 0011 dddd 01I0", "rr rd,imm1or2", 0,
-  "CZSV--", 6, 8, "1011 0010 dddd 01I0", "rrb rbd,imm1or2", 0,
-  "CZSV--", 6, 16, "1011 0011 dddd 11I0", "rrc rd,imm1or2", 0,
-
-  "-Z----", 9, 8, "1011 0010 dddd 11I0", "rrcb rbd,imm1or2", 0,
-  "-Z----", 9, 8, "1011 1100 aaaa bbbb", "rrdb rbb,rba", 0,
-  "CZSV--", 5, 16, "1011 0111 ssss dddd", "sbc rd,rs", 0,
-  "CZSVDH", 5, 8, "1011 0110 ssss dddd", "sbcb rbd,rbs", 0,
-
-  "CZSVDH", 33, 8, "0111 1111 imm8", "sc imm8", 0,
-
-  "CZSV--", 15, 16, "1011 0011 dddd 1011 0000 ssss 0000 0000", "sda rd,rs", 0,
-  "CZSV--", 15, 8, "1011 0010 dddd 1011 0000 ssss 0000 0000", "sdab rbd,rs", 0,
-  "CZSV--", 15, 32, "1011 0011 dddd 1111 0000 ssss 0000 0000", "sdal rrd,rs", 0,
-
-  "CZS---", 15, 16, "1011 0011 dddd 0011 0000 ssss 0000 0000", "sdl rd,rs", 0,
-  "CZS---", 15, 8, "1011 0010 dddd 0011 0000 ssss 0000 0000", "sdlb rbd,rs", 0,
-  "CZS---", 15, 32, "1011 0011 dddd 0111 0000 ssss 0000 0000", "sdll rrd,rs", 0,
-
-  "------", 11, 16, "0010 0101 ddN0 imm4", "set @rd,imm4", 0,
-  "------", 14, 16, "0110 0101 ddN0 imm4 address_dst", "set address_dst(rd),imm4", 0,
-  "------", 13, 16, "0110 0101 0000 imm4 address_dst", "set address_dst,imm4", 0,
-  "------", 4, 16, "1010 0101 dddd imm4", "set rd,imm4", 0,
-  "------", 10, 16, "0010 0101 0000 ssss 0000 dddd 0000 0000", "set rd,rs", 0,
-  "------", 11, 8, "0010 0100 ddN0 imm4", "setb @rd,imm4", 0,
-  "------", 14, 8, "0110 0100 ddN0 imm4 address_dst", "setb address_dst(rd),imm4", 0,
-  "------", 13, 8, "0110 0100 0000 imm4 address_dst", "setb address_dst,imm4", 0,
-  "------", 4, 8, "1010 0100 dddd imm4", "setb rbd,imm4", 0,
-  "------", 10, 8, "0010 0100 0000 ssss 0000 dddd 0000 0000", "setb rbd,rs", 0,
-
-  "CZSV--", 7, 16, "1000 1101 flags 0001", "setflg flags", 0,
-
-  "------", 0, 8, "0011 1010 dddd 0101 imm16", "sinb rbd,imm16", 0,
-  "------", 0, 8, "0011 1011 dddd 0101 imm16", "sin rd,imm16", 0,
-  "------", 0, 16, "0011 1011 ssN0 1000 0001 aaaa ddN0 1000", "sind @rd,@rs,ra", 0,
-  "------", 0, 8, "0011 1010 ssN0 1000 0001 aaaa ddN0 1000", "sindb @rd,@rs,rba", 0,
-  "------", 0, 8, "0011 1010 ssN0 0001 0000 aaaa ddN0 1000", "sinib @rd,@rs,ra", 0,
-  "------", 0, 16, "0011 1010 ssN0 0001 0000 aaaa ddN0 0000", "sinibr @rd,@rs,ra", 0,
-
-  "CZSV--", 13, 16, "1011 0011 dddd 1001 0000 0000 imm8", "sla rd,imm8", 0,
-  "CZSV--", 13, 8, "1011 0010 dddd 1001 iiii iiii 0000 imm4", "slab rbd,imm4", 0,
-  "CZSV--", 13, 32, "1011 0011 dddd 1101 0000 0000 imm8", "slal rrd,imm8", 0,
-
-  "CZS---", 13, 16, "1011 0011 dddd 0001 0000 0000 imm8", "sll rd,imm8", 0,
-  "CZS---", 13, 8, "1011 0010 dddd 0001 iiii iiii 0000 imm4", "sllb rbd,imm4", 0,
-  "CZS---", 13, 32, "1011 0011 dddd 0101 0000 0000 imm8", "slll rrd,imm8", 0,
-
-  "------", 0, 16, "0011 1011 ssss 0111 imm16", "sout imm16,rs", 0,
-  "------", 0, 8, "0011 1010 ssss 0111 imm16", "soutb imm16,rbs", 0,
-  "------", 0, 16, "0011 1011 ssN0 1011 0000 aaaa ddN0 1000", "soutd @rd,@rs,ra", 0,
-  "------", 0, 8, "0011 1010 ssN0 1011 0000 aaaa ddN0 1000", "soutdb @rd,@rs,rba", 0,
-  "------", 0, 8, "0011 1010 ssN0 0011 0000 aaaa ddN0 1000", "soutib @rd,@rs,ra", 0,
-  "------", 0, 16, "0011 1010 ssN0 0011 0000 aaaa ddN0 0000", "soutibr @rd,@rs,ra", 0,
-
-  "CZSV--", 13, 16, "1011 0011 dddd 1001 1111 1111 nim8", "sra rd,imm8", 0,
-  "CZSV--", 13, 8, "1011 0010 dddd 1001 iiii iiii 1111 nim4", "srab rbd,imm4", 0,
-  "CZSV--", 13, 32, "1011 0011 dddd 1101 1111 1111 nim8", "sral rrd,imm8", 0,
-
-  "CZSV--", 13, 16, "1011 0011 dddd 0001 1111 1111 nim8", "srl rd,imm8", 0,
-  "CZSV--", 13, 8, "1011 0010 dddd 0001 iiii iiii 1111 nim4", "srlb rbd,imm4", 0,
-  "CZSV--", 13, 32, "1011 0011 dddd 0101 1111 1111 nim8", "srll rrd,imm8", 0,
-
-  "CZSV--", 7, 16, "0000 0011 ssN0 dddd", "sub rd,@rs", 0,
-  "CZSV--", 9, 16, "0100 0011 0000 dddd address_src", "sub rd,address_src", 0,
-  "CZSV--", 10, 16, "0100 0011 ssN0 dddd address_src", "sub rd,address_src(rs)", 0,
-  "CZSV--", 7, 16, "0000 0011 0000 dddd imm16", "sub rd,imm16", 0,
-  "CZSV--", 4, 16, "1000 0011 ssss dddd", "sub rd,rs", 0,
-
-  "CZSVDH", 7, 8, "0000 0010 ssN0 dddd", "subb rbd,@rs", 0,
-  "CZSVDH", 9, 8, "0100 0010 0000 dddd address_src", "subb rbd,address_src", 0,
-  "CZSVDH", 10, 8, "0100 0010 ssN0 dddd address_src", "subb rbd,address_src(rs)", 0,
-  "CZSVDH", 7, 8, "0000 0010 0000 dddd imm8 imm8", "subb rbd,imm8", 0,
-  "CZSVDH", 4, 8, "1000 0010 ssss dddd", "subb rbd,rbs", 0,
-
-  "CZSV--", 14, 32, "0001 0010 ssN0 dddd", "subl rrd,@rs", 0,
-  "CZSV--", 15, 32, "0101 0010 0000 dddd address_src", "subl rrd,address_src", 0,
-  "CZSV--", 16, 32, "0101 0010 ssN0 dddd address_src", "subl rrd,address_src(rs)", 0,
-  "CZSV--", 14, 32, "0001 0010 0000 dddd imm32", "subl rrd,imm32", 0,
-  "CZSV--", 8, 32, "1001 0010 ssss dddd", "subl rrd,rrs", 0,
-
-  "------", 5, 16, "1010 1111 dddd cccc", "tcc cc,rd", 0,
-  "------", 5, 8, "1010 1110 dddd cccc", "tccb cc,rbd", 0,
-
-  "-ZS---", 8, 16, "0000 1101 ddN0 0100", "test @rd", 0,
-  "------", 11, 16, "0100 1101 0000 0100 address_dst", "test address_dst", 0,
-  "------", 12, 16, "0100 1101 ddN0 0100 address_dst", "test address_dst(rd)", 0,
-  "------", 7, 16, "1000 1101 dddd 0100", "test rd", 0,
-
-  "-ZSP--", 8, 8, "0000 1100 ddN0 0100", "testb @rd", 0,
-  "-ZSP--", 11, 8, "0100 1100 0000 0100 address_dst", "testb address_dst", 0,
-  "-ZSP--", 12, 8, "0100 1100 ddN0 0100 address_dst", "testb address_dst(rd)", 0,
-  "-ZSP--", 7, 8, "1000 1100 dddd 0100", "testb rbd", 0,
-
-  "-ZS---", 13, 32, "0001 1100 ddN0 1000", "testl @rd", 0,
-  "-ZS---", 16, 32, "0101 1100 0000 1000 address_dst", "testl address_dst", 0,
-  "-ZS---", 17, 32, "0101 1100 ddN0 1000 address_dst", "testl address_dst(rd)", 0,
-  "-ZS---", 13, 32, "1001 1100 dddd 1000", "testl rrd", 0,
-
-  "-ZSV--", 25, 8, "1011 1000 ddN0 1000 0000 aaaa ssN0 0000", "trdb @rd,@rs,rba", 0,
-  "-ZSV--", 25, 8, "1011 1000 ddN0 1100 0000 aaaa ssN0 0000", "trdrb @rd,@rs,rba", 0,
-  "-ZSV--", 25, 8, "1011 1000 ddN0 0000 0000 rrrr ssN0 0000", "trib @rd,@rs,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 ddN0 0100 0000 rrrr ssN0 0000", "trirb @rd,@rs,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 aaN0 1010 0000 rrrr bbN0 0000", "trtdb @ra,@rb,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 aaN0 1110 0000 rrrr bbN0 1110", "trtdrb @ra,@rb,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 aaN0 0010 0000 rrrr bbN0 0000", "trtib @ra,@rb,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 aaN0 0110 0000 rrrr bbN0 1110", "trtirb @ra,@rb,rbr", 0,
-  "-ZSV--", 25, 8, "1011 1000 aaN0 1010 0000 rrrr bbN0 0000", "trtrb @ra,@rb,rbr", 0,
-
-  "--S---", 11, 16, "0000 1101 ddN0 0110", "tset @rd", 0,
-  "--S---", 14, 16, "0100 1101 0000 0110 address_dst", "tset address_dst", 0,
-  "--S---", 15, 16, "0100 1101 ddN0 0110 address_dst", "tset address_dst(rd)", 0,
-  "--S---", 7, 16, "1000 1101 dddd 0110", "tset rd", 0,
-
-  "--S---", 11, 8, "0000 1100 ddN0 0110", "tsetb @rd", 0,
-  "--S---", 14, 8, "0100 1100 0000 0110 address_dst", "tsetb address_dst", 0,
-  "--S---", 15, 8, "0100 1100 ddN0 0110 address_dst", "tsetb address_dst(rd)", 0,
-  "--S---", 7, 8, "1000 1100 dddd 0110", "tsetb rbd", 0,
-
-  "-ZS---", 7, 16, "0000 1001 ssN0 dddd", "xor rd,@rs", 0,
-  "-ZS---", 9, 16, "0100 1001 0000 dddd address_src", "xor rd,address_src", 0,
-  "-ZS---", 10, 16, "0100 1001 ssN0 dddd address_src", "xor rd,address_src(rs)", 0,
-  "-ZS---", 7, 16, "0000 1001 0000 dddd imm16", "xor rd,imm16", 0,
-  "-ZS---", 4, 16, "1000 1001 ssss dddd", "xor rd,rs", 0,
-
-  "-ZSP--", 7, 8, "0000 1000 ssN0 dddd", "xorb rbd,@rs", 0,
-  "-ZSP--", 9, 8, "0100 1000 0000 dddd address_src", "xorb rbd,address_src", 0,
-  "-ZSP--", 10, 8, "0100 1000 ssN0 dddd address_src", "xorb rbd,address_src(rs)", 0,
-  "-ZSP--", 7, 8, "0000 1000 0000 dddd imm8 imm8", "xorb rbd,imm8", 0,
-  "-ZSP--", 4, 8, "1000 1000 ssss dddd", "xorb rbd,rbs", 0,
-
-  "------", 7, 32, "1000 1100 dddd 0001", "ldctlb rbd,ctrl", 0,
-  "CZSVDH", 7, 32, "1000 1100 ssss 1001", "ldctlb ctrl,rbs", 0,
-
-  "*", 4, 8, "1000 1000 ssss dddd", "xorb rbd,rbs", 0,
-  "*", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+  {"------", 10, 8, "0000 1110 imm8", "ext0e imm8", 0},
+  {"------", 10, 8, "0000 1111 imm8", "ext0f imm8", 0},
+  {"------", 10, 8, "1000 1110 imm8", "ext8e imm8", 0},
+  {"------", 10, 8, "1000 1111 imm8", "ext8f imm8", 0},
+
+  {"------", 10, 8, "0011 0110 imm8", "rsvd36", 0},
+  {"------", 10, 8, "0011 1000 imm8", "rsvd38", 0},
+  {"------", 10, 8, "0111 1000 imm8", "rsvd78", 0},
+  {"------", 10, 8, "0111 1110 imm8", "rsvd7e", 0},
+
+  {"------", 10, 8, "1001 1101 imm8", "rsvd9d", 0},
+  {"------", 10, 8, "1001 1111 imm8", "rsvd9f", 0},
+
+  {"------", 10, 8, "1011 1001 imm8", "rsvdb9", 0},
+  {"------", 10, 8, "1011 1111 imm8", "rsvdbf", 0},
+
+  {"---V--", 11, 16, "1011 1011 ssN0 1001 0000 rrrr ddN0 1000", "ldd @rd,@rs,rr", 0},
+  {"---V--", 11, 16, "1011 1011 ssN0 1001 0000 rrrr ddN0 0000", "lddr @rd,@rs,rr", 0},
+  {"---V--", 11, 8, "1011 1010 ssN0 1001 0000 rrrr ddN0 0000", "lddrb @rd,@rs,rr", 0},
+  {"---V--", 11, 16, "1011 1011 ssN0 0001 0000 rrrr ddN0 0000", "ldir @rd,@rs,rr", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 0000 0000 rrrr dddd cccc", "cpi rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 0100 0000 rrrr dddd cccc", "cpir rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 1100 0000 rrrr dddd cccc", "cpdr rd,@rs,rr,cc", 0},
+  {"---V--", 11, 16, "1011 1011 ssN0 0001 0000 rrrr ddN0 1000", "ldi @rd,@rs,rr", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 1000 0000 rrrr dddd cccc", "cpd rd,@rs,rr,cc", 0},
+  {"---V--", 11, 8, "1011 1010 ssN0 0001 0000 rrrr ddN0 0000", "ldirb @rd,@rs,rr", 0},
+  {"---V--", 11, 8, "1011 1010 ssN0 1001 0000 rrrr ddN0 1000", "lddb @rd,@rs,rr", 0},
+  {"---V--", 11, 8, "1011 1010 ssN0 0001 0000 rrrr ddN0 1000", "ldib @rd,@rs,rr", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 1000 0000 rrrr dddd cccc", "cpdb rbd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 1100 0000 rrrr dddd cccc", "cpdrb rbd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 0000 0000 rrrr dddd cccc", "cpib rbd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 0100 0000 rrrr dddd cccc", "cpirb rbd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 1010 0000 rrrr ddN0 cccc", "cpsd @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 1010 0000 rrrr ddN0 cccc", "cpsdb @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 1110 0000 rrrr ddN0 cccc", "cpsdr @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 1110 0000 rrrr ddN0 cccc", "cpsdrb @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 0010 0000 rrrr ddN0 cccc", "cpsi @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 0010 0000 rrrr ddN0 cccc", "cpsib @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 16, "1011 1011 ssN0 0110 0000 rrrr ddN0 cccc", "cpsir @rd,@rs,rr,cc", 0},
+  {"CZSV--", 11, 8, "1011 1010 ssN0 0110 0000 rrrr ddN0 cccc", "cpsirb @rd,@rs,rr,cc", 0},
+
+  {"------", 2, 8, "0011 0110 0000 0000", "bpt", 0},
+  {"CZSV--", 5, 16, "1011 0101 ssss dddd", "adc rd,rs", 0},
+  {"CZSVDH", 5, 8, "1011 0100 ssss dddd", "adcb rbd,rbs", 0},
+  {"CZSV--", 7, 16, "0000 0001 ssN0 dddd", "add rd,@rs", 0},
+  {"CZSV--", 9, 16, "0100 0001 0000 dddd address_src", "add rd,address_src", 0},
+  {"CZSV--", 10, 16, "0100 0001 ssN0 dddd address_src", "add rd,address_src(rs)", 0},
+  {"CZSV--", 7, 16, "0000 0001 0000 dddd imm16", "add rd,imm16", 0},
+  {"CZSV--", 4, 16, "1000 0001 ssss dddd", "add rd,rs", 0},
+  {"CZSVDH", 7, 8, "0000 0000 ssN0 dddd", "addb rbd,@rs", 0},
+  {"CZSVDH", 9, 8, "0100 0000 0000 dddd address_src", "addb rbd,address_src", 0},
+  {"CZSVDH", 10, 8, "0100 0000 ssN0 dddd address_src", "addb rbd,address_src(rs)", 0},
+  {"CZSVDH", 7, 8, "0000 0000 0000 dddd imm8 imm8", "addb rbd,imm8", 0},
+  {"CZSVDH", 4, 8, "1000 0000 ssss dddd", "addb rbd,rbs", 0},
+  {"CZSV--", 14, 32, "0001 0110 ssN0 dddd", "addl rrd,@rs", 0},
+  {"CZSV--", 15, 32, "0101 0110 0000 dddd address_src", "addl rrd,address_src", 0},
+  {"CZSV--", 16, 32, "0101 0110 ssN0 dddd address_src", "addl rrd,address_src(rs)", 0},
+  {"CZSV--", 14, 32, "0001 0110 0000 dddd imm32", "addl rrd,imm32", 0},
+  {"CZSV--", 8, 32, "1001 0110 ssss dddd", "addl rrd,rrs", 0},
+
+  {"-ZS---", 7, 16, "0000 0111 ssN0 dddd", "and rd,@rs", 0},
+  {"-ZS---", 9, 16, "0100 0111 0000 dddd address_src", "and rd,address_src", 0},
+  {"-ZS---", 10, 16, "0100 0111 ssN0 dddd address_src", "and rd,address_src(rs)", 0},
+  {"-ZS---", 7, 16, "0000 0111 0000 dddd imm16", "and rd,imm16", 0},
+  {"-ZS---", 4, 16, "1000 0111 ssss dddd", "and rd,rs", 0},
+  {"-ZSP--", 7, 8, "0000 0110 ssN0 dddd", "andb rbd,@rs", 0},
+  {"-ZSP--", 9, 8, "0100 0110 0000 dddd address_src", "andb rbd,address_src", 0},
+  {"-ZSP--", 10, 8, "0100 0110 ssN0 dddd address_src", "andb rbd,address_src(rs)", 0},
+  {"-ZSP--", 7, 8, "0000 0110 0000 dddd imm8 imm8", "andb rbd,imm8", 0},
+  {"-ZSP--", 4, 8, "1000 0110 ssss dddd", "andb rbd,rbs", 0},
+
+  {"-Z----", 8, 16, "0010 0111 ddN0 imm4", "bit @rd,imm4", 0},
+  {"-Z----", 11, 16, "0110 0111 ddN0 imm4 address_dst", "bit address_dst(rd),imm4", 0},
+  {"-Z----", 10, 16, "0110 0111 0000 imm4 address_dst", "bit address_dst,imm4", 0},
+  {"-Z----", 4, 16, "1010 0111 dddd imm4", "bit rd,imm4", 0},
+  {"-Z----", 10, 16, "0010 0111 0000 ssss 0000 dddd 0000 0000", "bit rd,rs", 0},
+
+  {"-Z----", 8, 8, "0010 0110 ddN0 imm4", "bitb @rd,imm4", 0},
+  {"-Z----", 11, 8, "0110 0110 ddN0 imm4 address_dst", "bitb address_dst(rd),imm4", 0},
+  {"-Z----", 10, 8, "0110 0110 0000 imm4 address_dst", "bitb address_dst,imm4", 0},
+  {"-Z----", 4, 8, "1010 0110 dddd imm4", "bitb rbd,imm4", 0},
+  {"-Z----", 10, 8, "0010 0110 0000 ssss 0000 dddd 0000 0000", "bitb rbd,rs", 0},
+
+  {"------", 10, 32, "0001 1111 ddN0 0000", "call @rd", 0},
+  {"------", 12, 32, "0101 1111 0000 0000 address_dst", "call address_dst", 0},
+  {"------", 13, 32, "0101 1111 ddN0 0000 address_dst", "call address_dst(rd)", 0},
+  {"------", 10, 16, "1101 disp12", "calr disp12", 0},
+
+  {"------", 8, 16, "0000 1101 ddN0 1000", "clr @rd", 0},
+  {"------", 11, 16, "0100 1101 0000 1000 address_dst", "clr address_dst", 0},
+  {"------", 12, 16, "0100 1101 ddN0 1000 address_dst", "clr address_dst(rd)", 0},
+  {"------", 7, 16, "1000 1101 dddd 1000", "clr rd", 0},
+  {"------", 8, 8, "0000 1100 ddN0 1000", "clrb @rd", 0},
+  {"------", 11, 8, "0100 1100 0000 1000 address_dst", "clrb address_dst", 0},
+  {"------", 12, 8, "0100 1100 ddN0 1000 address_dst", "clrb address_dst(rd)", 0},
+  {"------", 7, 8, "1000 1100 dddd 1000", "clrb rbd", 0},
+  {"-ZS---", 12, 16, "0000 1101 ddN0 0000", "com @rd", 0},
+  {"-ZS---", 15, 16, "0100 1101 0000 0000 address_dst", "com address_dst", 0},
+  {"-ZS---", 16, 16, "0100 1101 ddN0 0000 address_dst", "com address_dst(rd)", 0},
+  {"-ZS---", 7, 16, "1000 1101 dddd 0000", "com rd", 0},
+  {"-ZSP--", 12, 8, "0000 1100 ddN0 0000", "comb @rd", 0},
+  {"-ZSP--", 15, 8, "0100 1100 0000 0000 address_dst", "comb address_dst", 0},
+  {"-ZSP--", 16, 8, "0100 1100 ddN0 0000 address_dst", "comb address_dst(rd)", 0},
+  {"-ZSP--", 7, 8, "1000 1100 dddd 0000", "comb rbd", 0},
+  {"CZSP--", 7, 16, "1000 1101 flags 0101", "comflg flags", 0},
+
+  {"CZSV--", 11, 16, "0000 1101 ddN0 0001 imm16", "cp @rd,imm16", 0},
+  {"CZSV--", 15, 16, "0100 1101 ddN0 0001 address_dst imm16", "cp address_dst(rd),imm16", 0},
+  {"CZSV--", 14, 16, "0100 1101 0000 0001 address_dst imm16", "cp address_dst,imm16", 0},
+
+  {"CZSV--", 7, 16, "0000 1011 ssN0 dddd", "cp rd,@rs", 0},
+  {"CZSV--", 9, 16, "0100 1011 0000 dddd address_src", "cp rd,address_src", 0},
+  {"CZSV--", 10, 16, "0100 1011 ssN0 dddd address_src", "cp rd,address_src(rs)", 0},
+  {"CZSV--", 7, 16, "0000 1011 0000 dddd imm16", "cp rd,imm16", 0},
+  {"CZSV--", 4, 16, "1000 1011 ssss dddd", "cp rd,rs", 0},
+
+  {"CZSV--", 11, 8, "0000 1100 ddN0 0001 imm8 imm8", "cpb @rd,imm8", 0},
+  {"CZSV--", 15, 8, "0100 1100 ddN0 0001 address_dst imm8 imm8", "cpb address_dst(rd),imm8", 0},
+  {"CZSV--", 14, 8, "0100 1100 0000 0001 address_dst imm8 imm8", "cpb address_dst,imm8", 0},
+  {"CZSV--", 7, 8, "0000 1010 ssN0 dddd", "cpb rbd,@rs", 0},
+  {"CZSV--", 9, 8, "0100 1010 0000 dddd address_src", "cpb rbd,address_src", 0},
+  {"CZSV--", 10, 8, "0100 1010 ssN0 dddd address_src", "cpb rbd,address_src(rs)", 0},
+  {"CZSV--", 7, 8, "0000 1010 0000 dddd imm8 imm8", "cpb rbd,imm8", 0},
+  {"CZSV--", 4, 8, "1000 1010 ssss dddd", "cpb rbd,rbs", 0},
+
+  {"CZSV--", 14, 32, "0001 0000 ssN0 dddd", "cpl rrd,@rs", 0},
+  {"CZSV--", 15, 32, "0101 0000 0000 dddd address_src", "cpl rrd,address_src", 0},
+  {"CZSV--", 16, 32, "0101 0000 ssN0 dddd address_src", "cpl rrd,address_src(rs)", 0},
+  {"CZSV--", 14, 32, "0001 0000 0000 dddd imm32", "cpl rrd,imm32", 0},
+  {"CZSV--", 8, 32, "1001 0000 ssss dddd", "cpl rrd,rrs", 0},
+
+  {"CZS---", 5, 8, "1011 0000 dddd 0000", "dab rbd", 0},
+  {"------", 11, 16, "1111 dddd 0disp7", "dbjnz rbd,disp7", 0},
+  {"-ZSV--", 11, 16, "0010 1011 ddN0 imm4m1", "dec @rd,imm4m1", 0},
+  {"-ZSV--", 14, 16, "0110 1011 ddN0 imm4m1 address_dst", "dec address_dst(rd),imm4m1", 0},
+  {"-ZSV--", 13, 16, "0110 1011 0000 imm4m1 address_dst", "dec address_dst,imm4m1", 0},
+  {"-ZSV--", 4, 16, "1010 1011 dddd imm4m1", "dec rd,imm4m1", 0},
+  {"-ZSV--", 11, 8, "0010 1010 ddN0 imm4m1", "decb @rd,imm4m1", 0},
+  {"-ZSV--", 14, 8, "0110 1010 ddN0 imm4m1 address_dst", "decb address_dst(rd),imm4m1", 0},
+  {"-ZSV--", 13, 8, "0110 1010 0000 imm4m1 address_dst", "decb address_dst,imm4m1", 0},
+  {"-ZSV--", 4, 8, "1010 1010 dddd imm4m1", "decb rbd,imm4m1", 0},
+
+  {"------", 7, 16, "0111 1100 0000 00ii", "di i2", 0},
+  {"CZSV--", 107, 16, "0001 1011 ssN0 dddd", "div rrd,@rs", 0},
+  {"CZSV--", 107, 16, "0101 1011 0000 dddd address_src", "div rrd,address_src", 0},
+  {"CZSV--", 107, 16, "0101 1011 ssN0 dddd address_src", "div rrd,address_src(rs)", 0},
+  {"CZSV--", 107, 16, "0001 1011 0000 dddd imm16", "div rrd,imm16", 0},
+  {"CZSV--", 107, 16, "1001 1011 ssss dddd", "div rrd,rs", 0},
+  {"CZSV--", 744, 32, "0001 1010 ssN0 dddd", "divl rqd,@rs", 0},
+  {"CZSV--", 745, 32, "0101 1010 0000 dddd address_src", "divl rqd,address_src", 0},
+  {"CZSV--", 746, 32, "0101 1010 ssN0 dddd address_src", "divl rqd,address_src(rs)", 0},
+  {"CZSV--", 744, 32, "0001 1010 0000 dddd imm32", "divl rqd,imm32", 0},
+  {"CZSV--", 744, 32, "1001 1010 ssss dddd", "divl rqd,rrs", 0},
+
+  {"------", 11, 16, "1111 dddd 1disp7", "djnz rd,disp7", 0},
+  {"------", 7, 16, "0111 1100 0000 01ii", "ei i2", 0},
+  {"------", 6, 16, "1010 1101 ssss dddd", "ex rd,rs", 0},
+  {"------", 12, 16, "0010 1101 ssN0 dddd", "ex rd,@rs", 0},
+  {"------", 15, 16, "0110 1101 0000 dddd address_src", "ex rd,address_src", 0},
+  {"------", 16, 16, "0110 1101 ssN0 dddd address_src", "ex rd,address_src(rs)", 0},
+
+  {"------", 12, 8, "0010 1100 ssN0 dddd", "exb rbd,@rs", 0},
+  {"------", 15, 8, "0110 1100 0000 dddd address_src", "exb rbd,address_src", 0},
+  {"------", 16, 8, "0110 1100 ssN0 dddd address_src", "exb rbd,address_src(rs)", 0},
+  {"------", 6, 8, "1010 1100 ssss dddd", "exb rbd,rbs", 0},
+
+  {"------", 11, 16, "1011 0001 dddd 1010", "exts rrd", 0},
+  {"------", 11, 8, "1011 0001 dddd 0000", "extsb rd", 0},
+  {"------", 11, 32, "1011 0001 dddd 0111", "extsl rqd", 0},
+
+  {"------", 8, 16, "0111 1010 0000 0000", "halt", 0},
+  {"------", 10, 16, "0011 1101 ssN0 dddd", "in rd,@rs", 0},
+  {"------", 12, 8, "0011 1100 ssN0 dddd", "inb rbd,@rs", 0},
+  {"------", 12, 16, "0011 1011 dddd 0100 imm16", "in rd,imm16", 0},
+  {"------", 10, 8, "0011 1010 dddd 0100 imm16", "inb rbd,imm16", 0},
+  {"-ZSV--", 11, 16, "0010 1001 ddN0 imm4m1", "inc @rd,imm4m1", 0},
+  {"-ZSV--", 14, 16, "0110 1001 ddN0 imm4m1 address_dst", "inc address_dst(rd),imm4m1", 0},
+  {"-ZSV--", 13, 16, "0110 1001 0000 imm4m1 address_dst", "inc address_dst,imm4m1", 0},
+  {"-ZSV--", 4, 16, "1010 1001 dddd imm4m1", "inc rd,imm4m1", 0},
+  {"-ZSV--", 11, 8, "0010 1000 ddN0 imm4m1", "incb @rd,imm4m1", 0},
+  {"-ZSV--", 14, 8, "0110 1000 ddN0 imm4m1 address_dst", "incb address_dst(rd),imm4m1", 0},
+  {"-ZSV--", 13, 8, "0110 1000 0000 imm4m1 address_dst", "incb address_dst,imm4m1", 0},
+  {"-ZSV--", 4, 8, "1010 1000 dddd imm4m1", "incb rbd,imm4m1", 0},
+  {"---V--", 21, 16, "0011 1011 ssN0 1000 0000 aaaa ddN0 1000", "ind @rd,@rs,ra", 0},
+  {"---V--", 21, 8, "0011 1010 ssN0 1000 0000 aaaa ddN0 1000", "indb @rd,@rs,rba", 0},
+  {"---V--", 21, 8, "0011 1010 ssN0 0000 0000 aaaa ddN0 1000", "inib @rd,@rs,ra", 0},
+  {"---V--", 21, 16, "0011 1010 ssN0 0000 0000 aaaa ddN0 0000", "inibr @rd,@rs,ra", 0},
+  {"CZSVDH", 13, 16, "0111 1011 0000 0000", "iret", 0},
+  {"------", 10, 16, "0001 1110 ddN0 cccc", "jp cc,@rd", 0},
+  {"------", 7, 16, "0101 1110 0000 cccc address_dst", "jp cc,address_dst", 0},
+  {"------", 8, 16, "0101 1110 ddN0 cccc address_dst", "jp cc,address_dst(rd)", 0},
+  {"------", 6, 16, "1110 cccc disp8", "jr cc,disp8", 0},
+
+  {"------", 7, 16, "0000 1101 ddN0 0101 imm16", "ld @rd,imm16", 0},
+  {"------", 8, 16, "0010 1111 ddN0 ssss", "ld @rd,rs", 0},
+  {"------", 15, 16, "0100 1101 ddN0 0101 address_dst imm16", "ld address_dst(rd),imm16", 0},
+  {"------", 12, 16, "0110 1111 ddN0 ssss address_dst", "ld address_dst(rd),rs", 0},
+  {"------", 14, 16, "0100 1101 0000 0101 address_dst imm16", "ld address_dst,imm16", 0},
+  {"------", 11, 16, "0110 1111 0000 ssss address_dst", "ld address_dst,rs", 0},
+  {"------", 14, 16, "0011 0011 ddN0 ssss imm16", "ld rd(imm16),rs", 0},
+  {"------", 14, 16, "0111 0011 ddN0 ssss 0000 xxxx 0000 0000", "ld rd(rx),rs", 0},
+  {"------", 7, 16, "0010 0001 ssN0 dddd", "ld rd,@rs", 0},
+  {"------", 9, 16, "0110 0001 0000 dddd address_src", "ld rd,address_src", 0},
+  {"------", 10, 16, "0110 0001 ssN0 dddd address_src", "ld rd,address_src(rs)", 0},
+  {"------", 7, 16, "0010 0001 0000 dddd imm16", "ld rd,imm16", 0},
+  {"------", 3, 16, "1010 0001 ssss dddd", "ld rd,rs", 0},
+  {"------", 14, 16, "0011 0001 ssN0 dddd imm16", "ld rd,rs(imm16)", 0},
+  {"------", 14, 16, "0111 0001 ssN0 dddd 0000 xxxx 0000 0000", "ld rd,rs(rx)", 0},
+
+  {"------", 7, 8, "0000 1100 ddN0 0101 imm8 imm8", "ldb @rd,imm8", 0},
+  {"------", 8, 8, "0010 1110 ddN0 ssss", "ldb @rd,rbs", 0},
+  {"------", 15, 8, "0100 1100 ddN0 0101 address_dst imm8 imm8", "ldb address_dst(rd),imm8", 0},
+  {"------", 12, 8, "0110 1110 ddN0 ssss address_dst", "ldb address_dst(rd),rbs", 0},
+  {"------", 14, 8, "0100 1100 0000 0101 address_dst imm8 imm8", "ldb address_dst,imm8", 0},
+  {"------", 11, 8, "0110 1110 0000 ssss address_dst", "ldb address_dst,rbs", 0},
+  {"------", 14, 8, "0011 0010 ddN0 ssss imm16", "ldb rd(imm16),rbs", 0},
+  {"------", 14, 8, "0111 0010 ddN0 ssss 0000 xxxx 0000 0000", "ldb rd(rx),rbs", 0},
+  {"------", 7, 8, "0010 0000 ssN0 dddd", "ldb rbd,@rs", 0},
+  {"------", 9, 8, "0110 0000 0000 dddd address_src", "ldb rbd,address_src", 0},
+  {"------", 10, 8, "0110 0000 ssN0 dddd address_src", "ldb rbd,address_src(rs)", 0},
+  {"------", 5, 8, "1100 dddd imm8", "ldb rbd,imm8", 0},
+  {"------", 3, 8, "1010 0000 ssss dddd", "ldb rbd,rbs", 0},
+  {"------", 14, 8, "0011 0000 ssN0 dddd imm16", "ldb rbd,rs(imm16)", 0},
+  {"------", 14, 8, "0111 0000 ssN0 dddd 0000 xxxx 0000 0000", "ldb rbd,rs(rx)", 0},
+
+  {"------", 11, 32, "0001 1101 ddN0 ssss", "ldl @rd,rrs", 0},
+  {"------", 14, 32, "0101 1101 ddN0 ssss address_dst", "ldl address_dst(rd),rrs", 0},
+  {"------", 15, 32, "0101 1101 0000 ssss address_dst", "ldl address_dst,rrs", 0},
+  {"------", 17, 32, "0011 0111 ddN0 ssss imm16", "ldl rd(imm16),rrs", 0},
+  {"------", 17, 32, "0111 0111 ddN0 ssss 0000 xxxx 0000 0000", "ldl rd(rx),rrs", 0},
+  {"------", 11, 32, "0001 0100 ssN0 dddd", "ldl rrd,@rs", 0},
+  {"------", 12, 32, "0101 0100 0000 dddd address_src", "ldl rrd,address_src", 0},
+  {"------", 13, 32, "0101 0100 ssN0 dddd address_src", "ldl rrd,address_src(rs)", 0},
+  {"------", 11, 32, "0001 0100 0000 dddd imm32", "ldl rrd,imm32", 0},
+  {"------", 5, 32, "1001 0100 ssss dddd", "ldl rrd,rrs", 0},
+  {"------", 17, 32, "0011 0101 ssN0 dddd imm16", "ldl rrd,rs(imm16)", 0},
+  {"------", 17, 32, "0111 0101 ssN0 dddd 0000 xxxx 0000 0000", "ldl rrd,rs(rx)", 0},
+
+  {"------", 12, 16, "0111 0110 0000 dddd address_src", "lda prd,address_src", 0},
+  {"------", 13, 16, "0111 0110 ssN0 dddd address_src", "lda prd,address_src(rs)", 0},
+  {"------", 15, 16, "0011 0100 ssN0 dddd imm16", "lda prd,rs(imm16)", 0},
+  {"------", 15, 16, "0111 0100 ssN0 dddd 0000 xxxx 0000 0000", "lda prd,rs(rx)", 0},
+  {"------", 15, 16, "0011 0100 0000 dddd disp16", "ldar prd,disp16", 0},
+  {"------", 7, 32, "0111 1101 ssss 1ccc", "ldctl ctrl,rs", 0},
+  {"------", 7, 32, "0111 1101 dddd 0ccc", "ldctl rd,ctrl", 0},
+
+  {"------", 5, 16, "1011 1101 dddd imm4", "ldk rd,imm4", 0},
+
+  {"------", 11, 16, "0001 1100 ddN0 1001 0000 ssss 0000 imm4m1", "ldm @rd,rs,n", 0},
+  {"------", 15, 16, "0101 1100 ddN0 1001 0000 ssss 0000 imm4m1 address_dst", "ldm address_dst(rd),rs,n", 0},
+  {"------", 14, 16, "0101 1100 0000 1001 0000 ssss 0000 imm4m1 address_dst", "ldm address_dst,rs,n", 0},
+  {"------", 11, 16, "0001 1100 ssN0 0001 0000 dddd 0000 imm4m1", "ldm rd,@rs,n", 0},
+  {"------", 15, 16, "0101 1100 ssN0 0001 0000 dddd 0000 imm4m1 address_src", "ldm rd,address_src(rs),n", 0},
+  {"------", 14, 16, "0101 1100 0000 0001 0000 dddd 0000 imm4m1 address_src", "ldm rd,address_src,n", 0},
+
+  {"CZSVDH", 12, 16, "0011 1001 ssN0 0000", "ldps @rs", 0},
+  {"CZSVDH", 16, 16, "0111 1001 0000 0000 address_src", "ldps address_src", 0},
+  {"CZSVDH", 17, 16, "0111 1001 ssN0 0000 address_src", "ldps address_src(rs)", 0},
+
+  {"------", 14, 16, "0011 0011 0000 ssss disp16", "ldr disp16,rs", 0},
+  {"------", 14, 16, "0011 0001 0000 dddd disp16", "ldr rd,disp16", 0},
+  {"------", 14, 8, "0011 0010 0000 ssss disp16", "ldrb disp16,rbs", 0},
+  {"------", 14, 8, "0011 0000 0000 dddd disp16", "ldrb rbd,disp16", 0},
+  {"------", 17, 32, "0011 0111 0000 ssss disp16", "ldrl disp16,rrs", 0},
+  {"------", 17, 32, "0011 0101 0000 dddd disp16", "ldrl rrd,disp16", 0},
+
+  {"CZS---", 7, 16, "0111 1011 0000 1010", "mbit", 0},
+  {"-ZS---", 12, 16, "0111 1011 dddd 1101", "mreq rd", 0},
+  {"------", 5, 16, "0111 1011 0000 1001", "mres", 0},
+  {"------", 5, 16, "0111 1011 0000 1000", "mset", 0},
+
+  {"CZSV--", 70, 16, "0001 1001 ssN0 dddd", "mult rrd,@rs", 0},
+  {"CZSV--", 70, 16, "0101 1001 0000 dddd address_src", "mult rrd,address_src", 0},
+  {"CZSV--", 70, 16, "0101 1001 ssN0 dddd address_src", "mult rrd,address_src(rs)", 0},
+  {"CZSV--", 70, 16, "0001 1001 0000 dddd imm16", "mult rrd,imm16", 0},
+  {"CZSV--", 70, 16, "1001 1001 ssss dddd", "mult rrd,rs", 0},
+  {"CZSV--", 282, 32, "0001 1000 ssN0 dddd", "multl rqd,@rs", 0},
+  {"CZSV--", 282, 32, "0101 1000 0000 dddd address_src", "multl rqd,address_src", 0},
+  {"CZSV--", 282, 32, "0101 1000 ssN0 dddd address_src", "multl rqd,address_src(rs)", 0},
+  {"CZSV--", 282, 32, "0001 1000 0000 dddd imm32", "multl rqd,imm32", 0},
+  {"CZSV--", 282, 32, "1001 1000 ssss dddd", "multl rqd,rrs", 0},
+  {"CZSV--", 12, 16, "0000 1101 ddN0 0010", "neg @rd", 0},
+  {"CZSV--", 15, 16, "0100 1101 0000 0010 address_dst", "neg address_dst", 0},
+  {"CZSV--", 16, 16, "0100 1101 ddN0 0010 address_dst", "neg address_dst(rd)", 0},
+  {"CZSV--", 7, 16, "1000 1101 dddd 0010", "neg rd", 0},
+  {"CZSV--", 12, 8, "0000 1100 ddN0 0010", "negb @rd", 0},
+  {"CZSV--", 15, 8, "0100 1100 0000 0010 address_dst", "negb address_dst", 0},
+  {"CZSV--", 16, 8, "0100 1100 ddN0 0010 address_dst", "negb address_dst(rd)", 0},
+  {"CZSV--", 7, 8, "1000 1100 dddd 0010", "negb rbd", 0},
+
+  {"------", 7, 16, "1000 1101 0000 0111", "nop", 0},
+
+  {"CZS---", 7, 16, "0000 0101 ssN0 dddd", "or rd,@rs", 0},
+  {"CZS---", 9, 16, "0100 0101 0000 dddd address_src", "or rd,address_src", 0},
+  {"CZS---", 10, 16, "0100 0101 ssN0 dddd address_src", "or rd,address_src(rs)", 0},
+  {"CZS---", 7, 16, "0000 0101 0000 dddd imm16", "or rd,imm16", 0},
+  {"CZS---", 4, 16, "1000 0101 ssss dddd", "or rd,rs", 0},
+
+  {"CZSP--", 7, 8, "0000 0100 ssN0 dddd", "orb rbd,@rs", 0},
+  {"CZSP--", 9, 8, "0100 0100 0000 dddd address_src", "orb rbd,address_src", 0},
+  {"CZSP--", 10, 8, "0100 0100 ssN0 dddd address_src", "orb rbd,address_src(rs)", 0},
+  {"CZSP--", 7, 8, "0000 0100 0000 dddd imm8 imm8", "orb rbd,imm8", 0},
+  {"CZSP--", 4, 8, "1000 0100 ssss dddd", "orb rbd,rbs", 0},
+
+  {"---V--", 0, 16, "0011 1111 ddN0 ssss", "out @rd,rs", 0},
+  {"---V--", 0, 16, "0011 1011 ssss 0110 imm16", "out imm16,rs", 0},
+  {"---V--", 0, 8, "0011 1110 ddN0 ssss", "outb @rd,rbs", 0},
+  {"---V--", 0, 8, "0011 1010 ssss 0110 imm16", "outb imm16,rbs", 0},
+  {"---V--", 0, 16, "0011 1011 ssN0 1010 0000 aaaa ddN0 1000", "outd @rd,@rs,ra", 0},
+  {"---V--", 0, 16, "0011 1010 ssN0 1010 0000 aaaa ddN0 1000", "outdb @rd,@rs,rba", 0},
+  {"---V--", 0, 16, "0011 1011 ssN0 0010 0000 aaaa ddN0 1000", "outi @rd,@rs,ra", 0},
+  {"---V--", 0, 16, "0011 1010 ssN0 0010 0000 aaaa ddN0 1000", "outib @rd,@rs,ra", 0},
+  {"---V--", 0, 16, "0011 1010 ssN0 0010 0000 aaaa ddN0 0000", "outibr @rd,@rs,ra", 0},
+
+  {"------", 12, 16, "0001 0111 ssN0 ddN0", "pop @rd,@rs", 0},
+  {"------", 16, 16, "0101 0111 ssN0 ddN0 address_dst", "pop address_dst(rd),@rs", 0},
+  {"------", 16, 16, "0101 0111 ssN0 0000 address_dst", "pop address_dst,@rs", 0},
+  {"------", 8, 16, "1001 0111 ssN0 dddd", "pop rd,@rs", 0},
+
+  {"------", 19, 32, "0001 0101 ssN0 ddN0", "popl @rd,@rs", 0},
+  {"------", 23, 32, "0101 0101 ssN0 ddN0 address_dst", "popl address_dst(rd),@rs", 0},
+  {"------", 23, 32, "0101 0101 ssN0 0000 address_dst", "popl address_dst,@rs", 0},
+  {"------", 12, 32, "1001 0101 ssN0 dddd", "popl rrd,@rs", 0},
+
+  {"------", 13, 16, "0001 0011 ddN0 ssN0", "push @rd,@rs", 0},
+  {"------", 14, 16, "0101 0011 ddN0 0000 address_src", "push @rd,address_src", 0},
+  {"------", 14, 16, "0101 0011 ddN0 ssN0 address_src", "push @rd,address_src(rs)", 0},
+  {"------", 12, 16, "0000 1101 ddN0 1001 imm16", "push @rd,imm16", 0},
+  {"------", 9, 16, "1001 0011 ddN0 ssss", "push @rd,rs", 0},
+
+  {"------", 20, 32, "0001 0001 ddN0 ssN0", "pushl @rd,@rs", 0},
+  {"------", 21, 32, "0101 0001 ddN0 ssN0 address_src", "pushl @rd,address_src(rs)", 0},
+  {"------", 21, 32, "0101 0001 ddN0 0000 address_src", "pushl @rd,address_src", 0},
+  {"------", 12, 32, "1001 0001 ddN0 ssss", "pushl @rd,rrs", 0},
+
+  {"------", 11, 16, "0010 0011 ddN0 imm4", "res @rd,imm4", 0},
+  {"------", 14, 16, "0110 0011 ddN0 imm4 address_dst", "res address_dst(rd),imm4", 0},
+  {"------", 13, 16, "0110 0011 0000 imm4 address_dst", "res address_dst,imm4", 0},
+  {"------", 4, 16, "1010 0011 dddd imm4", "res rd,imm4", 0},
+  {"------", 10, 16, "0010 0011 0000 ssss 0000 dddd 0000 0000", "res rd,rs", 0},
+
+  {"------", 11, 8, "0010 0010 ddN0 imm4", "resb @rd,imm4", 0},
+  {"------", 14, 8, "0110 0010 ddN0 imm4 address_dst", "resb address_dst(rd),imm4", 0},
+  {"------", 13, 8, "0110 0010 0000 imm4 address_dst", "resb address_dst,imm4", 0},
+  {"------", 4, 8, "1010 0010 dddd imm4", "resb rbd,imm4", 0},
+  {"------", 10, 8, "0010 0010 0000 ssss 0000 dddd 0000 0000", "resb rbd,rs", 0},
+
+  {"CZSV--", 7, 16, "1000 1101 flags 0011", "resflg flags", 0},
+  {"------", 10, 16, "1001 1110 0000 cccc", "ret cc", 0},
+
+  {"CZSV--", 6, 16, "1011 0011 dddd 00I0", "rl rd,imm1or2", 0},
+  {"CZSV--", 6, 8, "1011 0010 dddd 00I0", "rlb rbd,imm1or2", 0},
+  {"CZSV--", 6, 16, "1011 0011 dddd 10I0", "rlc rd,imm1or2", 0},
+
+  {"-Z----", 9, 8, "1011 0010 dddd 10I0", "rlcb rbd,imm1or2", 0},
+  {"-Z----", 9, 8, "1011 1110 aaaa bbbb", "rldb rbb,rba", 0},
+
+  {"CZSV--", 6, 16, "1011 0011 dddd 01I0", "rr rd,imm1or2", 0},
+  {"CZSV--", 6, 8, "1011 0010 dddd 01I0", "rrb rbd,imm1or2", 0},
+  {"CZSV--", 6, 16, "1011 0011 dddd 11I0", "rrc rd,imm1or2", 0},
+
+  {"-Z----", 9, 8, "1011 0010 dddd 11I0", "rrcb rbd,imm1or2", 0},
+  {"-Z----", 9, 8, "1011 1100 aaaa bbbb", "rrdb rbb,rba", 0},
+  {"CZSV--", 5, 16, "1011 0111 ssss dddd", "sbc rd,rs", 0},
+  {"CZSVDH", 5, 8, "1011 0110 ssss dddd", "sbcb rbd,rbs", 0},
+
+  {"CZSVDH", 33, 8, "0111 1111 imm8", "sc imm8", 0},
+
+  {"CZSV--", 15, 16, "1011 0011 dddd 1011 0000 ssss 0000 0000", "sda rd,rs", 0},
+  {"CZSV--", 15, 8, "1011 0010 dddd 1011 0000 ssss 0000 0000", "sdab rbd,rs", 0},
+  {"CZSV--", 15, 32, "1011 0011 dddd 1111 0000 ssss 0000 0000", "sdal rrd,rs", 0},
+
+  {"CZS---", 15, 16, "1011 0011 dddd 0011 0000 ssss 0000 0000", "sdl rd,rs", 0},
+  {"CZS---", 15, 8, "1011 0010 dddd 0011 0000 ssss 0000 0000", "sdlb rbd,rs", 0},
+  {"CZS---", 15, 32, "1011 0011 dddd 0111 0000 ssss 0000 0000", "sdll rrd,rs", 0},
+
+  {"------", 11, 16, "0010 0101 ddN0 imm4", "set @rd,imm4", 0},
+  {"------", 14, 16, "0110 0101 ddN0 imm4 address_dst", "set address_dst(rd),imm4", 0},
+  {"------", 13, 16, "0110 0101 0000 imm4 address_dst", "set address_dst,imm4", 0},
+  {"------", 4, 16, "1010 0101 dddd imm4", "set rd,imm4", 0},
+  {"------", 10, 16, "0010 0101 0000 ssss 0000 dddd 0000 0000", "set rd,rs", 0},
+  {"------", 11, 8, "0010 0100 ddN0 imm4", "setb @rd,imm4", 0},
+  {"------", 14, 8, "0110 0100 ddN0 imm4 address_dst", "setb address_dst(rd),imm4", 0},
+  {"------", 13, 8, "0110 0100 0000 imm4 address_dst", "setb address_dst,imm4", 0},
+  {"------", 4, 8, "1010 0100 dddd imm4", "setb rbd,imm4", 0},
+  {"------", 10, 8, "0010 0100 0000 ssss 0000 dddd 0000 0000", "setb rbd,rs", 0},
+
+  {"CZSV--", 7, 16, "1000 1101 flags 0001", "setflg flags", 0},
+
+  {"------", 0, 8, "0011 1010 dddd 0101 imm16", "sinb rbd,imm16", 0},
+  {"------", 0, 8, "0011 1011 dddd 0101 imm16", "sin rd,imm16", 0},
+  {"------", 0, 16, "0011 1011 ssN0 1000 0001 aaaa ddN0 1000", "sind @rd,@rs,ra", 0},
+  {"------", 0, 8, "0011 1010 ssN0 1000 0001 aaaa ddN0 1000", "sindb @rd,@rs,rba", 0},
+  {"------", 0, 8, "0011 1010 ssN0 0001 0000 aaaa ddN0 1000", "sinib @rd,@rs,ra", 0},
+  {"------", 0, 16, "0011 1010 ssN0 0001 0000 aaaa ddN0 0000", "sinibr @rd,@rs,ra", 0},
+
+  {"CZSV--", 13, 16, "1011 0011 dddd 1001 0000 0000 imm8", "sla rd,imm8", 0},
+  {"CZSV--", 13, 8, "1011 0010 dddd 1001 iiii iiii 0000 imm4", "slab rbd,imm4", 0},
+  {"CZSV--", 13, 32, "1011 0011 dddd 1101 0000 0000 imm8", "slal rrd,imm8", 0},
+
+  {"CZS---", 13, 16, "1011 0011 dddd 0001 0000 0000 imm8", "sll rd,imm8", 0},
+  {"CZS---", 13, 8, "1011 0010 dddd 0001 iiii iiii 0000 imm4", "sllb rbd,imm4", 0},
+  {"CZS---", 13, 32, "1011 0011 dddd 0101 0000 0000 imm8", "slll rrd,imm8", 0},
+
+  {"------", 0, 16, "0011 1011 ssss 0111 imm16", "sout imm16,rs", 0},
+  {"------", 0, 8, "0011 1010 ssss 0111 imm16", "soutb imm16,rbs", 0},
+  {"------", 0, 16, "0011 1011 ssN0 1011 0000 aaaa ddN0 1000", "soutd @rd,@rs,ra", 0},
+  {"------", 0, 8, "0011 1010 ssN0 1011 0000 aaaa ddN0 1000", "soutdb @rd,@rs,rba", 0},
+  {"------", 0, 8, "0011 1010 ssN0 0011 0000 aaaa ddN0 1000", "soutib @rd,@rs,ra", 0},
+  {"------", 0, 16, "0011 1010 ssN0 0011 0000 aaaa ddN0 0000", "soutibr @rd,@rs,ra", 0},
+
+  {"CZSV--", 13, 16, "1011 0011 dddd 1001 1111 1111 nim8", "sra rd,imm8", 0},
+  {"CZSV--", 13, 8, "1011 0010 dddd 1001 iiii iiii 1111 nim4", "srab rbd,imm4", 0},
+  {"CZSV--", 13, 32, "1011 0011 dddd 1101 1111 1111 nim8", "sral rrd,imm8", 0},
+
+  {"CZSV--", 13, 16, "1011 0011 dddd 0001 1111 1111 nim8", "srl rd,imm8", 0},
+  {"CZSV--", 13, 8, "1011 0010 dddd 0001 iiii iiii 1111 nim4", "srlb rbd,imm4", 0},
+  {"CZSV--", 13, 32, "1011 0011 dddd 0101 1111 1111 nim8", "srll rrd,imm8", 0},
+
+  {"CZSV--", 7, 16, "0000 0011 ssN0 dddd", "sub rd,@rs", 0},
+  {"CZSV--", 9, 16, "0100 0011 0000 dddd address_src", "sub rd,address_src", 0},
+  {"CZSV--", 10, 16, "0100 0011 ssN0 dddd address_src", "sub rd,address_src(rs)", 0},
+  {"CZSV--", 7, 16, "0000 0011 0000 dddd imm16", "sub rd,imm16", 0},
+  {"CZSV--", 4, 16, "1000 0011 ssss dddd", "sub rd,rs", 0},
+
+  {"CZSVDH", 7, 8, "0000 0010 ssN0 dddd", "subb rbd,@rs", 0},
+  {"CZSVDH", 9, 8, "0100 0010 0000 dddd address_src", "subb rbd,address_src", 0},
+  {"CZSVDH", 10, 8, "0100 0010 ssN0 dddd address_src", "subb rbd,address_src(rs)", 0},
+  {"CZSVDH", 7, 8, "0000 0010 0000 dddd imm8 imm8", "subb rbd,imm8", 0},
+  {"CZSVDH", 4, 8, "1000 0010 ssss dddd", "subb rbd,rbs", 0},
+
+  {"CZSV--", 14, 32, "0001 0010 ssN0 dddd", "subl rrd,@rs", 0},
+  {"CZSV--", 15, 32, "0101 0010 0000 dddd address_src", "subl rrd,address_src", 0},
+  {"CZSV--", 16, 32, "0101 0010 ssN0 dddd address_src", "subl rrd,address_src(rs)", 0},
+  {"CZSV--", 14, 32, "0001 0010 0000 dddd imm32", "subl rrd,imm32", 0},
+  {"CZSV--", 8, 32, "1001 0010 ssss dddd", "subl rrd,rrs", 0},
+
+  {"------", 5, 16, "1010 1111 dddd cccc", "tcc cc,rd", 0},
+  {"------", 5, 8, "1010 1110 dddd cccc", "tccb cc,rbd", 0},
+
+  {"-ZS---", 8, 16, "0000 1101 ddN0 0100", "test @rd", 0},
+  {"------", 11, 16, "0100 1101 0000 0100 address_dst", "test address_dst", 0},
+  {"------", 12, 16, "0100 1101 ddN0 0100 address_dst", "test address_dst(rd)", 0},
+  {"------", 7, 16, "1000 1101 dddd 0100", "test rd", 0},
+
+  {"-ZSP--", 8, 8, "0000 1100 ddN0 0100", "testb @rd", 0},
+  {"-ZSP--", 11, 8, "0100 1100 0000 0100 address_dst", "testb address_dst", 0},
+  {"-ZSP--", 12, 8, "0100 1100 ddN0 0100 address_dst", "testb address_dst(rd)", 0},
+  {"-ZSP--", 7, 8, "1000 1100 dddd 0100", "testb rbd", 0},
+
+  {"-ZS---", 13, 32, "0001 1100 ddN0 1000", "testl @rd", 0},
+  {"-ZS---", 16, 32, "0101 1100 0000 1000 address_dst", "testl address_dst", 0},
+  {"-ZS---", 17, 32, "0101 1100 ddN0 1000 address_dst", "testl address_dst(rd)", 0},
+  {"-ZS---", 13, 32, "1001 1100 dddd 1000", "testl rrd", 0},
+
+  {"-ZSV--", 25, 8, "1011 1000 ddN0 1000 0000 aaaa ssN0 0000", "trdb @rd,@rs,rba", 0},
+  {"-ZSV--", 25, 8, "1011 1000 ddN0 1100 0000 aaaa ssN0 0000", "trdrb @rd,@rs,rba", 0},
+  {"-ZSV--", 25, 8, "1011 1000 ddN0 0000 0000 rrrr ssN0 0000", "trib @rd,@rs,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 ddN0 0100 0000 rrrr ssN0 0000", "trirb @rd,@rs,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 aaN0 1010 0000 rrrr bbN0 0000", "trtdb @ra,@rb,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 aaN0 1110 0000 rrrr bbN0 1110", "trtdrb @ra,@rb,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 aaN0 0010 0000 rrrr bbN0 0000", "trtib @ra,@rb,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 aaN0 0110 0000 rrrr bbN0 1110", "trtirb @ra,@rb,rbr", 0},
+  {"-ZSV--", 25, 8, "1011 1000 aaN0 1010 0000 rrrr bbN0 0000", "trtrb @ra,@rb,rbr", 0},
+
+  {"--S---", 11, 16, "0000 1101 ddN0 0110", "tset @rd", 0},
+  {"--S---", 14, 16, "0100 1101 0000 0110 address_dst", "tset address_dst", 0},
+  {"--S---", 15, 16, "0100 1101 ddN0 0110 address_dst", "tset address_dst(rd)", 0},
+  {"--S---", 7, 16, "1000 1101 dddd 0110", "tset rd", 0},
+
+  {"--S---", 11, 8, "0000 1100 ddN0 0110", "tsetb @rd", 0},
+  {"--S---", 14, 8, "0100 1100 0000 0110 address_dst", "tsetb address_dst", 0},
+  {"--S---", 15, 8, "0100 1100 ddN0 0110 address_dst", "tsetb address_dst(rd)", 0},
+  {"--S---", 7, 8, "1000 1100 dddd 0110", "tsetb rbd", 0},
+
+  {"-ZS---", 7, 16, "0000 1001 ssN0 dddd", "xor rd,@rs", 0},
+  {"-ZS---", 9, 16, "0100 1001 0000 dddd address_src", "xor rd,address_src", 0},
+  {"-ZS---", 10, 16, "0100 1001 ssN0 dddd address_src", "xor rd,address_src(rs)", 0},
+  {"-ZS---", 7, 16, "0000 1001 0000 dddd imm16", "xor rd,imm16", 0},
+  {"-ZS---", 4, 16, "1000 1001 ssss dddd", "xor rd,rs", 0},
+
+  {"-ZSP--", 7, 8, "0000 1000 ssN0 dddd", "xorb rbd,@rs", 0},
+  {"-ZSP--", 9, 8, "0100 1000 0000 dddd address_src", "xorb rbd,address_src", 0},
+  {"-ZSP--", 10, 8, "0100 1000 ssN0 dddd address_src", "xorb rbd,address_src(rs)", 0},
+  {"-ZSP--", 7, 8, "0000 1000 0000 dddd imm8 imm8", "xorb rbd,imm8", 0},
+  {"-ZSP--", 4, 8, "1000 1000 ssss dddd", "xorb rbd,rbs", 0},
+
+  {"------", 7, 32, "1000 1100 dddd 0001", "ldctlb rbd,ctrl", 0},
+  {"CZSVDH", 7, 32, "1000 1100 ssss 1001", "ldctlb ctrl,rbs", 0},
+
+  {"*", 4, 8, "1000 1000 ssss dddd", "xorb rbd,rbs", 0},
+  {"*", 0, 0, 0, 0, 0}
 };
 
 int
@@ -627,86 +628,86 @@ struct tok_struct args[] =
   {"1", "CLASS_IMM+(ARG_IMM_1)",},
   {"2", "CLASS_IMM+(ARG_IMM_2)",},
 
-  0, 0
+  {0, 0}
 };
 
 struct tok_struct toks[] =
 {
-  "0000", "CLASS_BIT+0", 1,
-  "0001", "CLASS_BIT+1", 1,
-  "0010", "CLASS_BIT+2", 1,
-  "0011", "CLASS_BIT+3", 1,
-  "0100", "CLASS_BIT+4", 1,
-  "0101", "CLASS_BIT+5", 1,
-  "0110", "CLASS_BIT+6", 1,
-  "0111", "CLASS_BIT+7", 1,
-  "1000", "CLASS_BIT+8", 1,
-  "1001", "CLASS_BIT+9", 1,
-  "1010", "CLASS_BIT+0xa", 1,
-  "1011", "CLASS_BIT+0xb", 1,
-  "1100", "CLASS_BIT+0xc", 1,
-  "1101", "CLASS_BIT+0xd", 1,
-  "1110", "CLASS_BIT+0xe", 1,
-  "1111", "CLASS_BIT+0xf", 1,
-
-  "00I0", "CLASS_BIT_1OR2+0", 1,
-  "00I0", "CLASS_BIT_1OR2+1", 1,
-  "00I0", "CLASS_BIT_1OR2+2", 1,
-  "00I0", "CLASS_BIT_1OR2+3", 1,
-  "01I0", "CLASS_BIT_1OR2+4", 1,
-  "01I0", "CLASS_BIT_1OR2+5", 1,
-  "01I0", "CLASS_BIT_1OR2+6", 1,
-  "01I0", "CLASS_BIT_1OR2+7", 1,
-  "10I0", "CLASS_BIT_1OR2+8", 1,
-  "10I0", "CLASS_BIT_1OR2+9", 1,
-  "10I0", "CLASS_BIT_1OR2+0xa", 1,
-  "10I0", "CLASS_BIT_1OR2+0xb", 1,
-  "11I0", "CLASS_BIT_1OR2+0xc", 1,
-  "11I0", "CLASS_BIT_1OR2+0xd", 1,
-  "11I0", "CLASS_BIT_1OR2+0xe", 1,
-  "11I0", "CLASS_BIT_1OR2+0xf", 1,
-
-  "ssss", "CLASS_REG+(ARG_RS)", 1,
-  "dddd", "CLASS_REG+(ARG_RD)", 1,
-  "aaaa", "CLASS_REG+(ARG_RA)", 1,
-  "bbbb", "CLASS_REG+(ARG_RB)", 1,
-  "rrrr", "CLASS_REG+(ARG_RR)", 1,
-
-  "ssN0", "CLASS_REGN0+(ARG_RS)", 1,
-  "ddN0", "CLASS_REGN0+(ARG_RD)", 1,
-  "aaN0", "CLASS_REGN0+(ARG_RA)", 1,
-  "bbN0", "CLASS_REGN0+(ARG_RB)", 1,
-  "rrN0", "CLASS_REGN0+(ARG_RR)", 1,
-
-  "cccc", "CLASS_CC", 1,
-  "nnnn", "CLASS_IMM+(ARG_IMMN)", 1,
-  "xxxx", "CLASS_REG+(ARG_RX)", 1,
-  "xxN0", "CLASS_REGN0+(ARG_RX)", 1,
-  "nminus1", "CLASS_IMM+(ARG_IMMNMINUS1)", 1,
-
-  "disp16", "CLASS_DISP+(ARG_DISP16)", 4,
-  "disp12", "CLASS_DISP+(ARG_DISP12)", 3,
-  "flags", "CLASS_FLAGS", 1,
-  "address_dst", "CLASS_ADDRESS+(ARG_DST)", 4,
-  "address_src", "CLASS_ADDRESS+(ARG_SRC)", 4,
-  "imm4m1", "CLASS_IMM+(ARG_IMM4M1)", 1,
-  "imm4", "CLASS_IMM+(ARG_IMM4)", 1,
-
-  "imm8", "CLASS_IMM+(ARG_IMM8)", 2,
-  "imm16", "CLASS_IMM+(ARG_IMM16)", 4,
-  "imm32", "CLASS_IMM+(ARG_IMM32)", 8,
-  "nim4", "CLASS_IMM+(ARG_NIM4)", 2,
-  "nim8", "CLASS_IMM+(ARG_NIM8)", 2,
-  "0ccc", "CLASS_0CCC", 1,
-  "1ccc", "CLASS_1CCC", 1,
-  "disp8", "CLASS_DISP8", 2,
-  "0disp7", "CLASS_0DISP7", 2,
-  "1disp7", "CLASS_1DISP7", 2,
-  "01ii", "CLASS_01II", 1,
-  "00ii", "CLASS_00II", 1,
-
-  "iiii", "CLASS_IGNORE", 1,
-  0, 0
+  {"0000", "CLASS_BIT+0", 1},
+  {"0001", "CLASS_BIT+1", 1},
+  {"0010", "CLASS_BIT+2", 1},
+  {"0011", "CLASS_BIT+3", 1},
+  {"0100", "CLASS_BIT+4", 1},
+  {"0101", "CLASS_BIT+5", 1},
+  {"0110", "CLASS_BIT+6", 1},
+  {"0111", "CLASS_BIT+7", 1},
+  {"1000", "CLASS_BIT+8", 1},
+  {"1001", "CLASS_BIT+9", 1},
+  {"1010", "CLASS_BIT+0xa", 1},
+  {"1011", "CLASS_BIT+0xb", 1},
+  {"1100", "CLASS_BIT+0xc", 1},
+  {"1101", "CLASS_BIT+0xd", 1},
+  {"1110", "CLASS_BIT+0xe", 1},
+  {"1111", "CLASS_BIT+0xf", 1},
+
+  {"00I0", "CLASS_BIT_1OR2+0", 1},
+  {"00I0", "CLASS_BIT_1OR2+1", 1},
+  {"00I0", "CLASS_BIT_1OR2+2", 1},
+  {"00I0", "CLASS_BIT_1OR2+3", 1},
+  {"01I0", "CLASS_BIT_1OR2+4", 1},
+  {"01I0", "CLASS_BIT_1OR2+5", 1},
+  {"01I0", "CLASS_BIT_1OR2+6", 1},
+  {"01I0", "CLASS_BIT_1OR2+7", 1},
+  {"10I0", "CLASS_BIT_1OR2+8", 1},
+  {"10I0", "CLASS_BIT_1OR2+9", 1},
+  {"10I0", "CLASS_BIT_1OR2+0xa", 1},
+  {"10I0", "CLASS_BIT_1OR2+0xb", 1},
+  {"11I0", "CLASS_BIT_1OR2+0xc", 1},
+  {"11I0", "CLASS_BIT_1OR2+0xd", 1},
+  {"11I0", "CLASS_BIT_1OR2+0xe", 1},
+  {"11I0", "CLASS_BIT_1OR2+0xf", 1},
+
+  {"ssss", "CLASS_REG+(ARG_RS)", 1},
+  {"dddd", "CLASS_REG+(ARG_RD)", 1},
+  {"aaaa", "CLASS_REG+(ARG_RA)", 1},
+  {"bbbb", "CLASS_REG+(ARG_RB)", 1},
+  {"rrrr", "CLASS_REG+(ARG_RR)", 1},
+
+  {"ssN0", "CLASS_REGN0+(ARG_RS)", 1},
+  {"ddN0", "CLASS_REGN0+(ARG_RD)", 1},
+  {"aaN0", "CLASS_REGN0+(ARG_RA)", 1},
+  {"bbN0", "CLASS_REGN0+(ARG_RB)", 1},
+  {"rrN0", "CLASS_REGN0+(ARG_RR)", 1},
+
+  {"cccc", "CLASS_CC", 1},
+  {"nnnn", "CLASS_IMM+(ARG_IMMN)", 1},
+  {"xxxx", "CLASS_REG+(ARG_RX)", 1},
+  {"xxN0", "CLASS_REGN0+(ARG_RX)", 1},
+  {"nminus1", "CLASS_IMM+(ARG_IMMNMINUS1)", 1},
+
+  {"disp16", "CLASS_DISP+(ARG_DISP16)", 4},
+  {"disp12", "CLASS_DISP+(ARG_DISP12)", 3},
+  {"flags", "CLASS_FLAGS", 1},
+  {"address_dst", "CLASS_ADDRESS+(ARG_DST)", 4},
+  {"address_src", "CLASS_ADDRESS+(ARG_SRC)", 4},
+  {"imm4m1", "CLASS_IMM+(ARG_IMM4M1)", 1},
+  {"imm4", "CLASS_IMM+(ARG_IMM4)", 1},
+
+  {"imm8", "CLASS_IMM+(ARG_IMM8)", 2},
+  {"imm16", "CLASS_IMM+(ARG_IMM16)", 4},
+  {"imm32", "CLASS_IMM+(ARG_IMM32)", 8},
+  {"nim4", "CLASS_IMM+(ARG_NIM4)", 2},
+  {"nim8", "CLASS_IMM+(ARG_NIM8)", 2},
+  {"0ccc", "CLASS_0CCC", 1},
+  {"1ccc", "CLASS_1CCC", 1},
+  {"disp8", "CLASS_DISP8", 2},
+  {"0disp7", "CLASS_0DISP7", 2},
+  {"1disp7", "CLASS_1DISP7", 2},
+  {"01ii", "CLASS_01II", 1},
+  {"00ii", "CLASS_00II", 1},
+
+  {"iiii", "CLASS_IGNORE", 1},
+  {0, 0}
 };
 
 char *
@@ -772,30 +773,28 @@ chewbits (bits, length)
 static
 int
 chewname (name)
-     char *name;
+     char **name;
 {
   char *n;
   int nargs = 0;
 
-  n = name;
-  printf ("\"");
+  n = *name;
   while (*n && !iswhite (*n))
-    {
-      printf ("%c", *n);
-      n++;
-    }
-  printf ("\",");              /* Scan the operands and make entires for
-                                  them -remember indirect things */
+    n++;
 
-  n = name;
-  printf ("OPC_");
-  while (*n && !iswhite (*n))
+  if (*n)
     {
-      printf ("%c", *n);
-      n++;
+      size_t len = n - *name;
+      char *newname = xmalloc (len + 1);
+      memcpy (newname, *name, len);
+      newname[len] = 0;
+      *name = newname;
     }
-  printf (",0,{");
 
+  printf ("\"%s\",OPC_%s,0,{", *name, *name);
+
+  /* Scan the operands and make entries for them.
+     Remember indirect things.  */
   while (*n)
     {
       int d;
@@ -814,7 +813,7 @@ chewname (name)
   return nargs;
 }
 
-static 
+static
 void
 sub (x, c)
      char *x;
@@ -953,13 +952,13 @@ internal ()
   }
 }
 
-static 
+static
 void
 gas ()
 {
   int c = count ();
   struct op *p = opt;
-  int idx = 0;
+  int idx = -1;
   char *oldname = "";
   struct op *new = (struct op *) xmalloc (sizeof (struct op) * c);
 
@@ -968,7 +967,8 @@ gas ()
   /* sort all names in table alphabetically */
   qsort (new, c, sizeof (struct op), func);
 
-  printf ("                    /* THIS FILE IS AUTOMAGICALLY GENERATED, DON'T EDIT IT */\n");
+  printf ("/* DO NOT EDIT!  -*- buffer-read-only: t -*-\n");
+  printf ("   This file is automatically generated by z8kgen.  */\n\n");
 
   printf ("#define ARG_MASK 0x0f\n");
 
@@ -1222,36 +1222,36 @@ gas ()
   for (i = 0; toks[i].token; i++)
     printf ("#define %s\t0x%x\n", toks[i].token, i * 16);
 #endif
-  printf ("typedef struct {\n");
+  printf ("\ntypedef struct {\n");
 
   printf ("#ifdef NICENAMES\n");
-  printf ("char *nicename;\n");
-  printf ("int type;\n");
-  printf ("int cycles;\n");
-  printf ("int flags;\n");
+  printf ("  const char *nicename;\n");
+  printf ("  int type;\n");
+  printf ("  int cycles;\n");
+  printf ("  int flags;\n");
   printf ("#endif\n");
-  printf ("char *name;\n");
-  printf ("unsigned char opcode;\n");
-  printf ("void (*func) PARAMS ((void));\n");
-  printf ("unsigned int arg_info[4];\n");
-  printf ("unsigned int byte_info[%d];\n", BYTE_INFO_LEN);
-  printf ("int noperands;\n");
-  printf ("int length;\n");
-  printf ("int idx;\n");
-  printf ("} opcode_entry_type;\n");
+  printf ("  const char *name;\n");
+  printf ("  unsigned char opcode;\n");
+  printf ("  void (*func) PARAMS ((void));\n");
+  printf ("  unsigned int arg_info[4];\n");
+  printf ("  unsigned int byte_info[%d];\n", BYTE_INFO_LEN);
+  printf ("  int noperands;\n");
+  printf ("  int length;\n");
+  printf ("  int idx;\n");
+  printf ("} opcode_entry_type;\n\n");
   printf ("#ifdef DEFINE_TABLE\n");
-  printf ("opcode_entry_type z8k_table[] = {\n");
+  printf ("const opcode_entry_type z8k_table[] = {\n");
 
   while (new->flags && new->flags[0])
     {
       int nargs;
       int length;
 
-      printf ("\n\n/* %s *** %s */\n", new->bits, new->name);
+      printf ("\n/* %s *** %s */\n", new->bits, new->name);
       printf ("{\n");
 
       printf ("#ifdef NICENAMES\n");
-      printf ("\"%s\",%d,%d,\n", new->name, new->type, new->cycles);
+      printf ("\"%s\",%d,%d,", new->name, new->type, new->cycles);
       {
        int answer = 0;
        char *p = new->flags;
@@ -1269,7 +1269,7 @@ gas ()
 
       printf ("#endif\n");
 
-      nargs = chewname (new->name);
+      nargs = chewname (&new->name);
 
       printf ("\n\t");
       chewbits (new->bits, &length);
@@ -1277,8 +1277,9 @@ gas ()
       if (length & 1)
        abort();
 
+      if (strcmp (oldname, new->name) != 0)
+       idx++;
       printf (",%d,%d,%d", nargs, length, idx);
-      idx++;
       oldname = new->name;
       printf ("},\n");
       new++;