Home | History | Annotate | Download | only in opcodes
      1 /* DO NOT EDIT!  -*- buffer-read-only: t -*-
      2    This file is automatically generated by z8kgen.  */
      3 
      4 /* Copyright (C) 2007-2014 Free Software Foundation, Inc.
      5 
      6    This file is part of the GNU opcodes library.
      7 
      8    This library is free software; you can redistribute it and/or modify
      9    it under the terms of the GNU General Public License as published by
     10    the Free Software Foundation; either version 3, or (at your option)
     11    any later version.
     12 
     13    It is distributed in the hope that it will be useful, but WITHOUT
     14    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
     15    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
     16    License for more details.
     17 
     18    You should have received a copy of the GNU General Public License
     19    along with this file; see the file COPYING.  If not, write to the
     20    Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston,
     21    MA 02110-1301, USA.  */
     22 
     23 #define ARG_MASK         0x0f
     24 #define ARG_SRC          0x01
     25 #define ARG_DST          0x02
     26 #define ARG_RS           0x01
     27 #define ARG_RD           0x02
     28 #define ARG_RA           0x03
     29 #define ARG_RB           0x04
     30 #define ARG_RR           0x05
     31 #define ARG_RX           0x06
     32 #define ARG_IMM4         0x01
     33 #define ARG_IMM8         0x02
     34 #define ARG_IMM16        0x03
     35 #define ARG_IMM32        0x04
     36 #define ARG_IMMN         0x05
     37 #define ARG_IMMNMINUS1   0x05
     38 #define ARG_IMM_1        0x06
     39 #define ARG_IMM_2        0x07
     40 #define ARG_DISP16       0x08
     41 #define ARG_NIM8         0x09
     42 #define ARG_IMM2         0x0a
     43 #define ARG_IMM1OR2      0x0b
     44 #define ARG_DISP12       0x0b
     45 #define ARG_NIM4         0x0c
     46 #define ARG_DISP8        0x0c
     47 #define ARG_IMM4M1       0x0d
     48 #define CLASS_X          0x10
     49 #define CLASS_BA         0x20
     50 #define CLASS_DA         0x30
     51 #define CLASS_BX         0x40
     52 #define CLASS_DISP       0x50
     53 #define CLASS_IMM        0x60
     54 #define CLASS_CC         0x70
     55 #define CLASS_CTRL       0x80
     56 #define CLASS_IGNORE     0x90
     57 #define CLASS_ADDRESS    0xd0
     58 #define CLASS_0CCC       0xe0
     59 #define CLASS_1CCC       0xf0
     60 #define CLASS_0DISP7    0x100
     61 #define CLASS_1DISP7    0x200
     62 #define CLASS_01II      0x300
     63 #define CLASS_00II      0x400
     64 #define CLASS_BIT       0x500
     65 #define CLASS_FLAGS     0x600
     66 #define CLASS_IR        0x700
     67 #define CLASS_IRO       0x800
     68 #define CLASS_DISP8     0x900
     69 #define CLASS_BIT_1OR2  0xa00
     70 #define CLASS_REG       0x7000
     71 #define CLASS_REG_BYTE  0x2000
     72 #define CLASS_REG_WORD  0x3000
     73 #define CLASS_REG_QUAD  0x4000
     74 #define CLASS_REG_LONG  0x5000
     75 #define CLASS_REGN0     0x8000
     76 #define CLASS_PR       0x10000
     77 #define CLASS_MASK     0x1fff0
     78 #define OPC_adc      0
     79 #define OPC_adcb     1
     80 #define OPC_add      2
     81 #define OPC_addb     3
     82 #define OPC_addl     4
     83 #define OPC_and      5
     84 #define OPC_andb     6
     85 #define OPC_bit      7
     86 #define OPC_bitb     8
     87 #define OPC_call     9
     88 #define OPC_calr    10
     89 #define OPC_clr     11
     90 #define OPC_clrb    12
     91 #define OPC_com     13
     92 #define OPC_comb    14
     93 #define OPC_comflg  15
     94 #define OPC_cp      16
     95 #define OPC_cpb     17
     96 #define OPC_cpd     18
     97 #define OPC_cpdb    19
     98 #define OPC_cpdr    20
     99 #define OPC_cpdrb   21
    100 #define OPC_cpi     22
    101 #define OPC_cpib    23
    102 #define OPC_cpir    24
    103 #define OPC_cpirb   25
    104 #define OPC_cpl     26
    105 #define OPC_cpsd    27
    106 #define OPC_cpsdb   28
    107 #define OPC_cpsdr   29
    108 #define OPC_cpsdrb  30
    109 #define OPC_cpsi    31
    110 #define OPC_cpsib   32
    111 #define OPC_cpsir   33
    112 #define OPC_cpsirb  34
    113 #define OPC_dab     35
    114 #define OPC_dbjnz   36
    115 #define OPC_dec     37
    116 #define OPC_decb    38
    117 #define OPC_di      39
    118 #define OPC_div     40
    119 #define OPC_divl    41
    120 #define OPC_djnz    42
    121 #define OPC_ei      43
    122 #define OPC_ex      44
    123 #define OPC_exb     45
    124 #define OPC_exts    46
    125 #define OPC_extsb   47
    126 #define OPC_extsl   48
    127 #define OPC_halt    49
    128 #define OPC_in      50
    129 #define OPC_inb     51
    130 #define OPC_inc     52
    131 #define OPC_incb    53
    132 #define OPC_ind     54
    133 #define OPC_indb    55
    134 #define OPC_indr    56
    135 #define OPC_indrb   57
    136 #define OPC_ini     58
    137 #define OPC_inib    59
    138 #define OPC_inir    60
    139 #define OPC_inirb   61
    140 #define OPC_iret    62
    141 #define OPC_jp      63
    142 #define OPC_jr      64
    143 #define OPC_ld      65
    144 #define OPC_lda     66
    145 #define OPC_ldar    67
    146 #define OPC_ldb     68
    147 #define OPC_ldctl   69
    148 #define OPC_ldir    70
    149 #define OPC_ldirb   71
    150 #define OPC_ldk     72
    151 #define OPC_ldl     73
    152 #define OPC_ldm     74
    153 #define OPC_ldps    75
    154 #define OPC_ldr     76
    155 #define OPC_ldrb    77
    156 #define OPC_ldrl    78
    157 #define OPC_mbit    79
    158 #define OPC_mreq    80
    159 #define OPC_mres    81
    160 #define OPC_mset    82
    161 #define OPC_mult    83
    162 #define OPC_multl   84
    163 #define OPC_neg     85
    164 #define OPC_negb    86
    165 #define OPC_nop     87
    166 #define OPC_or      88
    167 #define OPC_orb     89
    168 #define OPC_otdr    90
    169 #define OPC_otdrb   91
    170 #define OPC_otir    92
    171 #define OPC_otirb   93
    172 #define OPC_out     94
    173 #define OPC_outb    95
    174 #define OPC_outd    96
    175 #define OPC_outdb   97
    176 #define OPC_outi    98
    177 #define OPC_outib   99
    178 #define OPC_pop    100
    179 #define OPC_popl   101
    180 #define OPC_push   102
    181 #define OPC_pushl  103
    182 #define OPC_res    104
    183 #define OPC_resb   105
    184 #define OPC_resflg 106
    185 #define OPC_ret    107
    186 #define OPC_rl     108
    187 #define OPC_rlb    109
    188 #define OPC_rlc    110
    189 #define OPC_rlcb   111
    190 #define OPC_rldb   112
    191 #define OPC_rr     113
    192 #define OPC_rrb    114
    193 #define OPC_rrc    115
    194 #define OPC_rrcb   116
    195 #define OPC_rrdb   117
    196 #define OPC_sbc    118
    197 #define OPC_sbcb   119
    198 #define OPC_sda    120
    199 #define OPC_sdab   121
    200 #define OPC_sdal   122
    201 #define OPC_sdl    123
    202 #define OPC_sdlb   124
    203 #define OPC_sdll   125
    204 #define OPC_set    126
    205 #define OPC_setb   127
    206 #define OPC_setflg 128
    207 #define OPC_sin    129
    208 #define OPC_sinb   130
    209 #define OPC_sind   131
    210 #define OPC_sindb  132
    211 #define OPC_sindr  133
    212 #define OPC_sindrb 134
    213 #define OPC_sini   135
    214 #define OPC_sinib  136
    215 #define OPC_sinir  137
    216 #define OPC_sinirb 138
    217 #define OPC_sla    139
    218 #define OPC_slab   140
    219 #define OPC_slal   141
    220 #define OPC_sll    142
    221 #define OPC_sllb   143
    222 #define OPC_slll   144
    223 #define OPC_sotdr  145
    224 #define OPC_sotdrb 146
    225 #define OPC_sotir  147
    226 #define OPC_sotirb 148
    227 #define OPC_sout   149
    228 #define OPC_soutb  150
    229 #define OPC_soutd  151
    230 #define OPC_soutdb 152
    231 #define OPC_souti  153
    232 #define OPC_soutib 154
    233 #define OPC_sra    155
    234 #define OPC_srab   156
    235 #define OPC_sral   157
    236 #define OPC_srl    158
    237 #define OPC_srlb   159
    238 #define OPC_srll   160
    239 #define OPC_sub    161
    240 #define OPC_subb   162
    241 #define OPC_subl   163
    242 #define OPC_tcc    164
    243 #define OPC_tccb   165
    244 #define OPC_test   166
    245 #define OPC_testb  167
    246 #define OPC_testl  168
    247 #define OPC_trdb   169
    248 #define OPC_trdrb  170
    249 #define OPC_trib   171
    250 #define OPC_trirb  172
    251 #define OPC_trtdrb 173
    252 #define OPC_trtib  174
    253 #define OPC_trtirb 175
    254 #define OPC_trtrb  176
    255 #define OPC_tset   177
    256 #define OPC_tsetb  178
    257 #define OPC_xor    179
    258 #define OPC_xorb   180
    259 #define OPC_ldd    181
    260 #define OPC_lddb   182
    261 #define OPC_lddr   183
    262 #define OPC_lddrb  184
    263 #define OPC_ldi    185
    264 #define OPC_ldib   186
    265 #define OPC_sc     187
    266 #define OPC_bpt    188
    267 #define OPC_ext0e  188
    268 #define OPC_ext0f  188
    269 #define OPC_ext8e  188
    270 #define OPC_ext8f  188
    271 #define OPC_rsvd36 188
    272 #define OPC_rsvd38 188
    273 #define OPC_rsvd78 188
    274 #define OPC_rsvd7e 188
    275 #define OPC_rsvd9d 188
    276 #define OPC_rsvd9f 188
    277 #define OPC_rsvdb9 188
    278 #define OPC_rsvdbf 188
    279 #define OPC_ldctlb 189
    280 #define OPC_trtdb  190
    281 #define OPC_brk    191
    282 
    283 typedef struct {
    284 #ifdef NICENAMES
    285   const char *nicename;
    286   int type;
    287   int cycles;
    288   int flags;
    289 #endif
    290   const char *name;
    291   unsigned char opcode;
    292   void (*func) (void);
    293   unsigned int arg_info[4];
    294   unsigned int byte_info[10];
    295   int noperands;
    296   int length;
    297   int idx;
    298 } opcode_entry_type;
    299 
    300 #ifdef DEFINE_TABLE
    301 const opcode_entry_type z8k_table[] = {
    302 
    303 /* 1011 0101 ssss dddd *** adc rd,rs */
    304 {
    305 #ifdef NICENAMES
    306 "adc rd,rs",16,5,0x3c,
    307 #endif
    308 "adc",OPC_adc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    309 	{CLASS_BIT+0xb,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,0},
    310 
    311 /* 1011 0100 ssss dddd *** adcb rbd,rbs */
    312 {
    313 #ifdef NICENAMES
    314 "adcb rbd,rbs",8,5,0x3f,
    315 #endif
    316 "adcb",OPC_adcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
    317 	{CLASS_BIT+0xb,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,1},
    318 
    319 /* 0000 0001 ssN0 dddd *** add rd,@rs */
    320 {
    321 #ifdef NICENAMES
    322 "add rd,@rs",16,7,0x3c,
    323 #endif
    324 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
    325 	{CLASS_BIT+0,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
    326 
    327 /* 0100 0001 0000 dddd address_src *** add rd,address_src */
    328 {
    329 #ifdef NICENAMES
    330 "add rd,address_src",16,9,0x3c,
    331 #endif
    332 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
    333 	{CLASS_BIT+4,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,2},
    334 
    335 /* 0100 0001 ssN0 dddd address_src *** add rd,address_src(rs) */
    336 {
    337 #ifdef NICENAMES
    338 "add rd,address_src(rs)",16,10,0x3c,
    339 #endif
    340 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
    341 	{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},
    342 
    343 /* 0000 0001 0000 dddd imm16 *** add rd,imm16 */
    344 {
    345 #ifdef NICENAMES
    346 "add rd,imm16",16,7,0x3c,
    347 #endif
    348 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
    349 	{CLASS_BIT+0,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,2},
    350 
    351 /* 1000 0001 ssss dddd *** add rd,rs */
    352 {
    353 #ifdef NICENAMES
    354 "add rd,rs",16,4,0x3c,
    355 #endif
    356 "add",OPC_add,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    357 	{CLASS_BIT+8,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,2},
    358 
    359 /* 0000 0000 ssN0 dddd *** addb rbd,@rs */
    360 {
    361 #ifdef NICENAMES
    362 "addb rbd,@rs",8,7,0x3f,
    363 #endif
    364 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
    365 	{CLASS_BIT+0,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
    366 
    367 /* 0100 0000 0000 dddd address_src *** addb rbd,address_src */
    368 {
    369 #ifdef NICENAMES
    370 "addb rbd,address_src",8,9,0x3f,
    371 #endif
    372 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
    373 	{CLASS_BIT+4,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,3},
    374 
    375 /* 0100 0000 ssN0 dddd address_src *** addb rbd,address_src(rs) */
    376 {
    377 #ifdef NICENAMES
    378 "addb rbd,address_src(rs)",8,10,0x3f,
    379 #endif
    380 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
    381 	{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},
    382 
    383 /* 0000 0000 0000 dddd imm8 imm8 *** addb rbd,imm8 */
    384 {
    385 #ifdef NICENAMES
    386 "addb rbd,imm8",8,7,0x3f,
    387 #endif
    388 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
    389 	{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},
    390 
    391 /* 1000 0000 ssss dddd *** addb rbd,rbs */
    392 {
    393 #ifdef NICENAMES
    394 "addb rbd,rbs",8,4,0x3f,
    395 #endif
    396 "addb",OPC_addb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
    397 	{CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,3},
    398 
    399 /* 0001 0110 ssN0 dddd *** addl rrd,@rs */
    400 {
    401 #ifdef NICENAMES
    402 "addl rrd,@rs",32,14,0x3c,
    403 #endif
    404 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
    405 	{CLASS_BIT+1,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
    406 
    407 /* 0101 0110 0000 dddd address_src *** addl rrd,address_src */
    408 {
    409 #ifdef NICENAMES
    410 "addl rrd,address_src",32,15,0x3c,
    411 #endif
    412 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
    413 	{CLASS_BIT+5,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,4},
    414 
    415 /* 0101 0110 ssN0 dddd address_src *** addl rrd,address_src(rs) */
    416 {
    417 #ifdef NICENAMES
    418 "addl rrd,address_src(rs)",32,16,0x3c,
    419 #endif
    420 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
    421 	{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},
    422 
    423 /* 0001 0110 0000 dddd imm32 *** addl rrd,imm32 */
    424 {
    425 #ifdef NICENAMES
    426 "addl rrd,imm32",32,14,0x3c,
    427 #endif
    428 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
    429 	{CLASS_BIT+1,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,4},
    430 
    431 /* 1001 0110 ssss dddd *** addl rrd,rrs */
    432 {
    433 #ifdef NICENAMES
    434 "addl rrd,rrs",32,8,0x3c,
    435 #endif
    436 "addl",OPC_addl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
    437 	{CLASS_BIT+9,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,4},
    438 
    439 /* 0000 0111 ssN0 dddd *** and rd,@rs */
    440 {
    441 #ifdef NICENAMES
    442 "and rd,@rs",16,7,0x18,
    443 #endif
    444 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
    445 	{CLASS_BIT+0,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
    446 
    447 /* 0100 0111 0000 dddd address_src *** and rd,address_src */
    448 {
    449 #ifdef NICENAMES
    450 "and rd,address_src",16,9,0x18,
    451 #endif
    452 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
    453 	{CLASS_BIT+4,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,5},
    454 
    455 /* 0100 0111 ssN0 dddd address_src *** and rd,address_src(rs) */
    456 {
    457 #ifdef NICENAMES
    458 "and rd,address_src(rs)",16,10,0x18,
    459 #endif
    460 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
    461 	{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},
    462 
    463 /* 0000 0111 0000 dddd imm16 *** and rd,imm16 */
    464 {
    465 #ifdef NICENAMES
    466 "and rd,imm16",16,7,0x18,
    467 #endif
    468 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
    469 	{CLASS_BIT+0,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,5},
    470 
    471 /* 1000 0111 ssss dddd *** and rd,rs */
    472 {
    473 #ifdef NICENAMES
    474 "and rd,rs",16,4,0x18,
    475 #endif
    476 "and",OPC_and,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    477 	{CLASS_BIT+8,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,5},
    478 
    479 /* 0000 0110 ssN0 dddd *** andb rbd,@rs */
    480 {
    481 #ifdef NICENAMES
    482 "andb rbd,@rs",8,7,0x1c,
    483 #endif
    484 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
    485 	{CLASS_BIT+0,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
    486 
    487 /* 0100 0110 0000 dddd address_src *** andb rbd,address_src */
    488 {
    489 #ifdef NICENAMES
    490 "andb rbd,address_src",8,9,0x1c,
    491 #endif
    492 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
    493 	{CLASS_BIT+4,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,6},
    494 
    495 /* 0100 0110 ssN0 dddd address_src *** andb rbd,address_src(rs) */
    496 {
    497 #ifdef NICENAMES
    498 "andb rbd,address_src(rs)",8,10,0x1c,
    499 #endif
    500 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
    501 	{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},
    502 
    503 /* 0000 0110 0000 dddd imm8 imm8 *** andb rbd,imm8 */
    504 {
    505 #ifdef NICENAMES
    506 "andb rbd,imm8",8,7,0x1c,
    507 #endif
    508 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
    509 	{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},
    510 
    511 /* 1000 0110 ssss dddd *** andb rbd,rbs */
    512 {
    513 #ifdef NICENAMES
    514 "andb rbd,rbs",8,4,0x1c,
    515 #endif
    516 "andb",OPC_andb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
    517 	{CLASS_BIT+8,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,6},
    518 
    519 /* 0010 0111 ddN0 imm4 *** bit @rd,imm4 */
    520 {
    521 #ifdef NICENAMES
    522 "bit @rd,imm4",16,8,0x10,
    523 #endif
    524 "bit",OPC_bit,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    525 	{CLASS_BIT+2,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
    526 
    527 /* 0110 0111 ddN0 imm4 address_dst *** bit address_dst(rd),imm4 */
    528 {
    529 #ifdef NICENAMES
    530 "bit address_dst(rd),imm4",16,11,0x10,
    531 #endif
    532 "bit",OPC_bit,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    533 	{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},
    534 
    535 /* 0110 0111 0000 imm4 address_dst *** bit address_dst,imm4 */
    536 {
    537 #ifdef NICENAMES
    538 "bit address_dst,imm4",16,10,0x10,
    539 #endif
    540 "bit",OPC_bit,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
    541 	{CLASS_BIT+6,CLASS_BIT+7,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,7},
    542 
    543 /* 1010 0111 dddd imm4 *** bit rd,imm4 */
    544 {
    545 #ifdef NICENAMES
    546 "bit rd,imm4",16,4,0x10,
    547 #endif
    548 "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    549 	{CLASS_BIT+0xa,CLASS_BIT+7,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,7},
    550 
    551 /* 0010 0111 0000 ssss 0000 dddd 0000 0000 *** bit rd,rs */
    552 {
    553 #ifdef NICENAMES
    554 "bit rd,rs",16,10,0x10,
    555 #endif
    556 "bit",OPC_bit,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    557 	{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},
    558 
    559 /* 0010 0110 ddN0 imm4 *** bitb @rd,imm4 */
    560 {
    561 #ifdef NICENAMES
    562 "bitb @rd,imm4",8,8,0x10,
    563 #endif
    564 "bitb",OPC_bitb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    565 	{CLASS_BIT+2,CLASS_BIT+6,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
    566 
    567 /* 0110 0110 ddN0 imm4 address_dst *** bitb address_dst(rd),imm4 */
    568 {
    569 #ifdef NICENAMES
    570 "bitb address_dst(rd),imm4",8,11,0x10,
    571 #endif
    572 "bitb",OPC_bitb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    573 	{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},
    574 
    575 /* 0110 0110 0000 imm4 address_dst *** bitb address_dst,imm4 */
    576 {
    577 #ifdef NICENAMES
    578 "bitb address_dst,imm4",8,10,0x10,
    579 #endif
    580 "bitb",OPC_bitb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
    581 	{CLASS_BIT+6,CLASS_BIT+6,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,8},
    582 
    583 /* 1010 0110 dddd imm4 *** bitb rbd,imm4 */
    584 {
    585 #ifdef NICENAMES
    586 "bitb rbd,imm4",8,4,0x10,
    587 #endif
    588 "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
    589 	{CLASS_BIT+0xa,CLASS_BIT+6,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,8},
    590 
    591 /* 0010 0110 0000 ssss 0000 dddd 0000 0000 *** bitb rbd,rs */
    592 {
    593 #ifdef NICENAMES
    594 "bitb rbd,rs",8,10,0x10,
    595 #endif
    596 "bitb",OPC_bitb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    597 	{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},
    598 
    599 /* 0011 0110 0000 0000 *** bpt */
    600 {
    601 #ifdef NICENAMES
    602 "bpt",8,2,0x00,
    603 #endif
    604 "bpt",OPC_bpt,0,{0},
    605 	{CLASS_BIT+3,CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,9},
    606 
    607 /* 0000 1111 0000 1100 *** brk */
    608 {
    609 #ifdef NICENAMES
    610 "brk",8,10,0x00,
    611 #endif
    612 "brk",OPC_brk,0,{0},
    613 	{CLASS_BIT+0,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0xc,0,0,0,0,0,},0,2,10},
    614 
    615 /* 0001 1111 ddN0 0000 *** call @rd */
    616 {
    617 #ifdef NICENAMES
    618 "call @rd",32,10,0x00,
    619 #endif
    620 "call",OPC_call,0,{CLASS_IR+(ARG_RD),},
    621 	{CLASS_BIT+1,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,11},
    622 
    623 /* 0101 1111 0000 0000 address_dst *** call address_dst */
    624 {
    625 #ifdef NICENAMES
    626 "call address_dst",32,12,0x00,
    627 #endif
    628 "call",OPC_call,0,{CLASS_DA+(ARG_DST),},
    629 	{CLASS_BIT+5,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,11},
    630 
    631 /* 0101 1111 ddN0 0000 address_dst *** call address_dst(rd) */
    632 {
    633 #ifdef NICENAMES
    634 "call address_dst(rd)",32,13,0x00,
    635 #endif
    636 "call",OPC_call,0,{CLASS_X+(ARG_RD),},
    637 	{CLASS_BIT+5,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,11},
    638 
    639 /* 1101 disp12 *** calr disp12 */
    640 {
    641 #ifdef NICENAMES
    642 "calr disp12",16,10,0x00,
    643 #endif
    644 "calr",OPC_calr,0,{CLASS_DISP,},
    645 	{CLASS_BIT+0xd,CLASS_DISP+(ARG_DISP12),0,0,0,0,0,0,0,},1,2,12},
    646 
    647 /* 0000 1101 ddN0 1000 *** clr @rd */
    648 {
    649 #ifdef NICENAMES
    650 "clr @rd",16,8,0x00,
    651 #endif
    652 "clr",OPC_clr,0,{CLASS_IR+(ARG_RD),},
    653 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
    654 
    655 /* 0100 1101 0000 1000 address_dst *** clr address_dst */
    656 {
    657 #ifdef NICENAMES
    658 "clr address_dst",16,11,0x00,
    659 #endif
    660 "clr",OPC_clr,0,{CLASS_DA+(ARG_DST),},
    661 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
    662 
    663 /* 0100 1101 ddN0 1000 address_dst *** clr address_dst(rd) */
    664 {
    665 #ifdef NICENAMES
    666 "clr address_dst(rd)",16,12,0x00,
    667 #endif
    668 "clr",OPC_clr,0,{CLASS_X+(ARG_RD),},
    669 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,13},
    670 
    671 /* 1000 1101 dddd 1000 *** clr rd */
    672 {
    673 #ifdef NICENAMES
    674 "clr rd",16,7,0x00,
    675 #endif
    676 "clr",OPC_clr,0,{CLASS_REG_WORD+(ARG_RD),},
    677 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,13},
    678 
    679 /* 0000 1100 ddN0 1000 *** clrb @rd */
    680 {
    681 #ifdef NICENAMES
    682 "clrb @rd",8,8,0x00,
    683 #endif
    684 "clrb",OPC_clrb,0,{CLASS_IR+(ARG_RD),},
    685 	{CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,14},
    686 
    687 /* 0100 1100 0000 1000 address_dst *** clrb address_dst */
    688 {
    689 #ifdef NICENAMES
    690 "clrb address_dst",8,11,0x00,
    691 #endif
    692 "clrb",OPC_clrb,0,{CLASS_DA+(ARG_DST),},
    693 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
    694 
    695 /* 0100 1100 ddN0 1000 address_dst *** clrb address_dst(rd) */
    696 {
    697 #ifdef NICENAMES
    698 "clrb address_dst(rd)",8,12,0x00,
    699 #endif
    700 "clrb",OPC_clrb,0,{CLASS_X+(ARG_RD),},
    701 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,14},
    702 
    703 /* 1000 1100 dddd 1000 *** clrb rbd */
    704 {
    705 #ifdef NICENAMES
    706 "clrb rbd",8,7,0x00,
    707 #endif
    708 "clrb",OPC_clrb,0,{CLASS_REG_BYTE+(ARG_RD),},
    709 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,14},
    710 
    711 /* 0000 1101 ddN0 0000 *** com @rd */
    712 {
    713 #ifdef NICENAMES
    714 "com @rd",16,12,0x18,
    715 #endif
    716 "com",OPC_com,0,{CLASS_IR+(ARG_RD),},
    717 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
    718 
    719 /* 0100 1101 0000 0000 address_dst *** com address_dst */
    720 {
    721 #ifdef NICENAMES
    722 "com address_dst",16,15,0x18,
    723 #endif
    724 "com",OPC_com,0,{CLASS_DA+(ARG_DST),},
    725 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
    726 
    727 /* 0100 1101 ddN0 0000 address_dst *** com address_dst(rd) */
    728 {
    729 #ifdef NICENAMES
    730 "com address_dst(rd)",16,16,0x18,
    731 #endif
    732 "com",OPC_com,0,{CLASS_X+(ARG_RD),},
    733 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,15},
    734 
    735 /* 1000 1101 dddd 0000 *** com rd */
    736 {
    737 #ifdef NICENAMES
    738 "com rd",16,7,0x18,
    739 #endif
    740 "com",OPC_com,0,{CLASS_REG_WORD+(ARG_RD),},
    741 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,15},
    742 
    743 /* 0000 1100 ddN0 0000 *** comb @rd */
    744 {
    745 #ifdef NICENAMES
    746 "comb @rd",8,12,0x1c,
    747 #endif
    748 "comb",OPC_comb,0,{CLASS_IR+(ARG_RD),},
    749 	{CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,16},
    750 
    751 /* 0100 1100 0000 0000 address_dst *** comb address_dst */
    752 {
    753 #ifdef NICENAMES
    754 "comb address_dst",8,15,0x1c,
    755 #endif
    756 "comb",OPC_comb,0,{CLASS_DA+(ARG_DST),},
    757 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,16},
    758 
    759 /* 0100 1100 ddN0 0000 address_dst *** comb address_dst(rd) */
    760 {
    761 #ifdef NICENAMES
    762 "comb address_dst(rd)",8,16,0x1c,
    763 #endif
    764 "comb",OPC_comb,0,{CLASS_X+(ARG_RD),},
    765 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,16},
    766 
    767 /* 1000 1100 dddd 0000 *** comb rbd */
    768 {
    769 #ifdef NICENAMES
    770 "comb rbd",8,7,0x1c,
    771 #endif
    772 "comb",OPC_comb,0,{CLASS_REG_BYTE+(ARG_RD),},
    773 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,16},
    774 
    775 /* 1000 1101 flags 0101 *** comflg flags */
    776 {
    777 #ifdef NICENAMES
    778 "comflg flags",16,7,0x3c,
    779 #endif
    780 "comflg",OPC_comflg,0,{CLASS_FLAGS,},
    781 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+5,0,0,0,0,0,},1,2,17},
    782 
    783 /* 0000 1101 ddN0 0001 imm16 *** cp @rd,imm16 */
    784 {
    785 #ifdef NICENAMES
    786 "cp @rd,imm16",16,11,0x3c,
    787 #endif
    788 "cp",OPC_cp,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
    789 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+1,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,18},
    790 
    791 /* 0100 1101 ddN0 0001 address_dst imm16 *** cp address_dst(rd),imm16 */
    792 {
    793 #ifdef NICENAMES
    794 "cp address_dst(rd),imm16",16,15,0x3c,
    795 #endif
    796 "cp",OPC_cp,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
    797 	{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,18},
    798 
    799 /* 0100 1101 0000 0001 address_dst imm16 *** cp address_dst,imm16 */
    800 {
    801 #ifdef NICENAMES
    802 "cp address_dst,imm16",16,14,0x3c,
    803 #endif
    804 "cp",OPC_cp,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
    805 	{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,18},
    806 
    807 /* 0000 1011 ssN0 dddd *** cp rd,@rs */
    808 {
    809 #ifdef NICENAMES
    810 "cp rd,@rs",16,7,0x3c,
    811 #endif
    812 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
    813 	{CLASS_BIT+0,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
    814 
    815 /* 0100 1011 0000 dddd address_src *** cp rd,address_src */
    816 {
    817 #ifdef NICENAMES
    818 "cp rd,address_src",16,9,0x3c,
    819 #endif
    820 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
    821 	{CLASS_BIT+4,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
    822 
    823 /* 0100 1011 ssN0 dddd address_src *** cp rd,address_src(rs) */
    824 {
    825 #ifdef NICENAMES
    826 "cp rd,address_src(rs)",16,10,0x3c,
    827 #endif
    828 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
    829 	{CLASS_BIT+4,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,18},
    830 
    831 /* 0000 1011 0000 dddd imm16 *** cp rd,imm16 */
    832 {
    833 #ifdef NICENAMES
    834 "cp rd,imm16",16,7,0x3c,
    835 #endif
    836 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
    837 	{CLASS_BIT+0,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,18},
    838 
    839 /* 1000 1011 ssss dddd *** cp rd,rs */
    840 {
    841 #ifdef NICENAMES
    842 "cp rd,rs",16,4,0x3c,
    843 #endif
    844 "cp",OPC_cp,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
    845 	{CLASS_BIT+8,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,18},
    846 
    847 /* 0000 1100 ddN0 0001 imm8 imm8 *** cpb @rd,imm8 */
    848 {
    849 #ifdef NICENAMES
    850 "cpb @rd,imm8",8,11,0x3c,
    851 #endif
    852 "cpb",OPC_cpb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
    853 	{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,19},
    854 
    855 /* 0100 1100 ddN0 0001 address_dst imm8 imm8 *** cpb address_dst(rd),imm8 */
    856 {
    857 #ifdef NICENAMES
    858 "cpb address_dst(rd),imm8",8,15,0x3c,
    859 #endif
    860 "cpb",OPC_cpb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
    861 	{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,19},
    862 
    863 /* 0100 1100 0000 0001 address_dst imm8 imm8 *** cpb address_dst,imm8 */
    864 {
    865 #ifdef NICENAMES
    866 "cpb address_dst,imm8",8,14,0x3c,
    867 #endif
    868 "cpb",OPC_cpb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
    869 	{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,19},
    870 
    871 /* 0000 1010 ssN0 dddd *** cpb rbd,@rs */
    872 {
    873 #ifdef NICENAMES
    874 "cpb rbd,@rs",8,7,0x3c,
    875 #endif
    876 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
    877 	{CLASS_BIT+0,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,19},
    878 
    879 /* 0100 1010 0000 dddd address_src *** cpb rbd,address_src */
    880 {
    881 #ifdef NICENAMES
    882 "cpb rbd,address_src",8,9,0x3c,
    883 #endif
    884 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
    885 	{CLASS_BIT+4,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,19},
    886 
    887 /* 0100 1010 ssN0 dddd address_src *** cpb rbd,address_src(rs) */
    888 {
    889 #ifdef NICENAMES
    890 "cpb rbd,address_src(rs)",8,10,0x3c,
    891 #endif
    892 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
    893 	{CLASS_BIT+4,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,19},
    894 
    895 /* 0000 1010 0000 dddd imm8 imm8 *** cpb rbd,imm8 */
    896 {
    897 #ifdef NICENAMES
    898 "cpb rbd,imm8",8,7,0x3c,
    899 #endif
    900 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
    901 	{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,19},
    902 
    903 /* 1000 1010 ssss dddd *** cpb rbd,rbs */
    904 {
    905 #ifdef NICENAMES
    906 "cpb rbd,rbs",8,4,0x3c,
    907 #endif
    908 "cpb",OPC_cpb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
    909 	{CLASS_BIT+8,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,19},
    910 
    911 /* 1011 1011 ssN0 1000 0000 rrrr dddd cccc *** cpd rd,@rs,rr,cc */
    912 {
    913 #ifdef NICENAMES
    914 "cpd rd,@rs,rr,cc",16,11,0x3c,
    915 #endif
    916 "cpd",OPC_cpd,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    917 	{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,20},
    918 
    919 /* 1011 1010 ssN0 1000 0000 rrrr dddd cccc *** cpdb rbd,@rs,rr,cc */
    920 {
    921 #ifdef NICENAMES
    922 "cpdb rbd,@rs,rr,cc",8,11,0x3c,
    923 #endif
    924 "cpdb",OPC_cpdb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    925 	{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,21},
    926 
    927 /* 1011 1011 ssN0 1100 0000 rrrr dddd cccc *** cpdr rd,@rs,rr,cc */
    928 {
    929 #ifdef NICENAMES
    930 "cpdr rd,@rs,rr,cc",16,11,0x3c,
    931 #endif
    932 "cpdr",OPC_cpdr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    933 	{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,22},
    934 
    935 /* 1011 1010 ssN0 1100 0000 rrrr dddd cccc *** cpdrb rbd,@rs,rr,cc */
    936 {
    937 #ifdef NICENAMES
    938 "cpdrb rbd,@rs,rr,cc",8,11,0x3c,
    939 #endif
    940 "cpdrb",OPC_cpdrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    941 	{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,23},
    942 
    943 /* 1011 1011 ssN0 0000 0000 rrrr dddd cccc *** cpi rd,@rs,rr,cc */
    944 {
    945 #ifdef NICENAMES
    946 "cpi rd,@rs,rr,cc",16,11,0x3c,
    947 #endif
    948 "cpi",OPC_cpi,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    949 	{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,24},
    950 
    951 /* 1011 1010 ssN0 0000 0000 rrrr dddd cccc *** cpib rbd,@rs,rr,cc */
    952 {
    953 #ifdef NICENAMES
    954 "cpib rbd,@rs,rr,cc",8,11,0x3c,
    955 #endif
    956 "cpib",OPC_cpib,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    957 	{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,25},
    958 
    959 /* 1011 1011 ssN0 0100 0000 rrrr dddd cccc *** cpir rd,@rs,rr,cc */
    960 {
    961 #ifdef NICENAMES
    962 "cpir rd,@rs,rr,cc",16,11,0x3c,
    963 #endif
    964 "cpir",OPC_cpir,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    965 	{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,26},
    966 
    967 /* 1011 1010 ssN0 0100 0000 rrrr dddd cccc *** cpirb rbd,@rs,rr,cc */
    968 {
    969 #ifdef NICENAMES
    970 "cpirb rbd,@rs,rr,cc",8,11,0x3c,
    971 #endif
    972 "cpirb",OPC_cpirb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
    973 	{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,27},
    974 
    975 /* 0001 0000 ssN0 dddd *** cpl rrd,@rs */
    976 {
    977 #ifdef NICENAMES
    978 "cpl rrd,@rs",32,14,0x3c,
    979 #endif
    980 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
    981 	{CLASS_BIT+1,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,28},
    982 
    983 /* 0101 0000 0000 dddd address_src *** cpl rrd,address_src */
    984 {
    985 #ifdef NICENAMES
    986 "cpl rrd,address_src",32,15,0x3c,
    987 #endif
    988 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
    989 	{CLASS_BIT+5,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,28},
    990 
    991 /* 0101 0000 ssN0 dddd address_src *** cpl rrd,address_src(rs) */
    992 {
    993 #ifdef NICENAMES
    994 "cpl rrd,address_src(rs)",32,16,0x3c,
    995 #endif
    996 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
    997 	{CLASS_BIT+5,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,28},
    998 
    999 /* 0001 0000 0000 dddd imm32 *** cpl rrd,imm32 */
   1000 {
   1001 #ifdef NICENAMES
   1002 "cpl rrd,imm32",32,14,0x3c,
   1003 #endif
   1004 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
   1005 	{CLASS_BIT+1,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,28},
   1006 
   1007 /* 1001 0000 ssss dddd *** cpl rrd,rrs */
   1008 {
   1009 #ifdef NICENAMES
   1010 "cpl rrd,rrs",32,8,0x3c,
   1011 #endif
   1012 "cpl",OPC_cpl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   1013 	{CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,28},
   1014 
   1015 /* 1011 1011 ssN0 1010 0000 rrrr ddN0 cccc *** cpsd @rd,@rs,rr,cc */
   1016 {
   1017 #ifdef NICENAMES
   1018 "cpsd @rd,@rs,rr,cc",16,11,0x3c,
   1019 #endif
   1020 "cpsd",OPC_cpsd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1021 	{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,29},
   1022 
   1023 /* 1011 1010 ssN0 1010 0000 rrrr ddN0 cccc *** cpsdb @rd,@rs,rr,cc */
   1024 {
   1025 #ifdef NICENAMES
   1026 "cpsdb @rd,@rs,rr,cc",8,11,0x3c,
   1027 #endif
   1028 "cpsdb",OPC_cpsdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1029 	{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,30},
   1030 
   1031 /* 1011 1011 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdr @rd,@rs,rr,cc */
   1032 {
   1033 #ifdef NICENAMES
   1034 "cpsdr @rd,@rs,rr,cc",16,11,0x3c,
   1035 #endif
   1036 "cpsdr",OPC_cpsdr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1037 	{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,31},
   1038 
   1039 /* 1011 1010 ssN0 1110 0000 rrrr ddN0 cccc *** cpsdrb @rd,@rs,rr,cc */
   1040 {
   1041 #ifdef NICENAMES
   1042 "cpsdrb @rd,@rs,rr,cc",8,11,0x3c,
   1043 #endif
   1044 "cpsdrb",OPC_cpsdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1045 	{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,32},
   1046 
   1047 /* 1011 1011 ssN0 0010 0000 rrrr ddN0 cccc *** cpsi @rd,@rs,rr,cc */
   1048 {
   1049 #ifdef NICENAMES
   1050 "cpsi @rd,@rs,rr,cc",16,11,0x3c,
   1051 #endif
   1052 "cpsi",OPC_cpsi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1053 	{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,33},
   1054 
   1055 /* 1011 1010 ssN0 0010 0000 rrrr ddN0 cccc *** cpsib @rd,@rs,rr,cc */
   1056 {
   1057 #ifdef NICENAMES
   1058 "cpsib @rd,@rs,rr,cc",8,11,0x3c,
   1059 #endif
   1060 "cpsib",OPC_cpsib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1061 	{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,34},
   1062 
   1063 /* 1011 1011 ssN0 0110 0000 rrrr ddN0 cccc *** cpsir @rd,@rs,rr,cc */
   1064 {
   1065 #ifdef NICENAMES
   1066 "cpsir @rd,@rs,rr,cc",16,11,0x3c,
   1067 #endif
   1068 "cpsir",OPC_cpsir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1069 	{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,35},
   1070 
   1071 /* 1011 1010 ssN0 0110 0000 rrrr ddN0 cccc *** cpsirb @rd,@rs,rr,cc */
   1072 {
   1073 #ifdef NICENAMES
   1074 "cpsirb @rd,@rs,rr,cc",8,11,0x3c,
   1075 #endif
   1076 "cpsirb",OPC_cpsirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),CLASS_CC,},
   1077 	{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,36},
   1078 
   1079 /* 1011 0000 dddd 0000 *** dab rbd */
   1080 {
   1081 #ifdef NICENAMES
   1082 "dab rbd",8,5,0x38,
   1083 #endif
   1084 "dab",OPC_dab,0,{CLASS_REG_BYTE+(ARG_RD),},
   1085 	{CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,37},
   1086 
   1087 /* 1111 dddd 0disp7 *** dbjnz rbd,disp7 */
   1088 {
   1089 #ifdef NICENAMES
   1090 "dbjnz rbd,disp7",16,11,0x00,
   1091 #endif
   1092 "dbjnz",OPC_dbjnz,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
   1093 	{CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_0DISP7,0,0,0,0,0,0,},2,2,38},
   1094 
   1095 /* 0010 1011 ddN0 imm4m1 *** dec @rd,imm4m1 */
   1096 {
   1097 #ifdef NICENAMES
   1098 "dec @rd,imm4m1",16,11,0x1c,
   1099 #endif
   1100 "dec",OPC_dec,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1101 	{CLASS_BIT+2,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
   1102 
   1103 /* 0110 1011 ddN0 imm4m1 address_dst *** dec address_dst(rd),imm4m1 */
   1104 {
   1105 #ifdef NICENAMES
   1106 "dec address_dst(rd),imm4m1",16,14,0x1c,
   1107 #endif
   1108 "dec",OPC_dec,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1109 	{CLASS_BIT+6,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
   1110 
   1111 /* 0110 1011 0000 imm4m1 address_dst *** dec address_dst,imm4m1 */
   1112 {
   1113 #ifdef NICENAMES
   1114 "dec address_dst,imm4m1",16,13,0x1c,
   1115 #endif
   1116 "dec",OPC_dec,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
   1117 	{CLASS_BIT+6,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,39},
   1118 
   1119 /* 1010 1011 dddd imm4m1 *** dec rd,imm4m1 */
   1120 {
   1121 #ifdef NICENAMES
   1122 "dec rd,imm4m1",16,4,0x1c,
   1123 #endif
   1124 "dec",OPC_dec,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1125 	{CLASS_BIT+0xa,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,39},
   1126 
   1127 /* 0010 1010 ddN0 imm4m1 *** decb @rd,imm4m1 */
   1128 {
   1129 #ifdef NICENAMES
   1130 "decb @rd,imm4m1",8,11,0x1c,
   1131 #endif
   1132 "decb",OPC_decb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1133 	{CLASS_BIT+2,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,40},
   1134 
   1135 /* 0110 1010 ddN0 imm4m1 address_dst *** decb address_dst(rd),imm4m1 */
   1136 {
   1137 #ifdef NICENAMES
   1138 "decb address_dst(rd),imm4m1",8,14,0x1c,
   1139 #endif
   1140 "decb",OPC_decb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1141 	{CLASS_BIT+6,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,40},
   1142 
   1143 /* 0110 1010 0000 imm4m1 address_dst *** decb address_dst,imm4m1 */
   1144 {
   1145 #ifdef NICENAMES
   1146 "decb address_dst,imm4m1",8,13,0x1c,
   1147 #endif
   1148 "decb",OPC_decb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
   1149 	{CLASS_BIT+6,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,40},
   1150 
   1151 /* 1010 1010 dddd imm4m1 *** decb rbd,imm4m1 */
   1152 {
   1153 #ifdef NICENAMES
   1154 "decb rbd,imm4m1",8,4,0x1c,
   1155 #endif
   1156 "decb",OPC_decb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1157 	{CLASS_BIT+0xa,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,40},
   1158 
   1159 /* 0111 1100 0000 00ii *** di i2 */
   1160 {
   1161 #ifdef NICENAMES
   1162 "di i2",16,7,0x00,
   1163 #endif
   1164 "di",OPC_di,0,{CLASS_IMM+(ARG_IMM2),},
   1165 	{CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_00II,0,0,0,0,0,},1,2,41},
   1166 
   1167 /* 0001 1011 ssN0 dddd *** div rrd,@rs */
   1168 {
   1169 #ifdef NICENAMES
   1170 "div rrd,@rs",16,107,0x3c,
   1171 #endif
   1172 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
   1173 	{CLASS_BIT+1,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
   1174 
   1175 /* 0101 1011 0000 dddd address_src *** div rrd,address_src */
   1176 {
   1177 #ifdef NICENAMES
   1178 "div rrd,address_src",16,107,0x3c,
   1179 #endif
   1180 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1181 	{CLASS_BIT+5,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
   1182 
   1183 /* 0101 1011 ssN0 dddd address_src *** div rrd,address_src(rs) */
   1184 {
   1185 #ifdef NICENAMES
   1186 "div rrd,address_src(rs)",16,107,0x3c,
   1187 #endif
   1188 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
   1189 	{CLASS_BIT+5,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,42},
   1190 
   1191 /* 0001 1011 0000 dddd imm16 *** div rrd,imm16 */
   1192 {
   1193 #ifdef NICENAMES
   1194 "div rrd,imm16",16,107,0x3c,
   1195 #endif
   1196 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1197 	{CLASS_BIT+1,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,42},
   1198 
   1199 /* 1001 1011 ssss dddd *** div rrd,rs */
   1200 {
   1201 #ifdef NICENAMES
   1202 "div rrd,rs",16,107,0x3c,
   1203 #endif
   1204 "div",OPC_div,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1205 	{CLASS_BIT+9,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,42},
   1206 
   1207 /* 0001 1010 ssN0 dddd *** divl rqd,@rs */
   1208 {
   1209 #ifdef NICENAMES
   1210 "divl rqd,@rs",32,744,0x3c,
   1211 #endif
   1212 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
   1213 	{CLASS_BIT+1,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,43},
   1214 
   1215 /* 0101 1010 0000 dddd address_src *** divl rqd,address_src */
   1216 {
   1217 #ifdef NICENAMES
   1218 "divl rqd,address_src",32,745,0x3c,
   1219 #endif
   1220 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1221 	{CLASS_BIT+5,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,43},
   1222 
   1223 /* 0101 1010 ssN0 dddd address_src *** divl rqd,address_src(rs) */
   1224 {
   1225 #ifdef NICENAMES
   1226 "divl rqd,address_src(rs)",32,746,0x3c,
   1227 #endif
   1228 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
   1229 	{CLASS_BIT+5,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,43},
   1230 
   1231 /* 0001 1010 0000 dddd imm32 *** divl rqd,imm32 */
   1232 {
   1233 #ifdef NICENAMES
   1234 "divl rqd,imm32",32,744,0x3c,
   1235 #endif
   1236 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
   1237 	{CLASS_BIT+1,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,43},
   1238 
   1239 /* 1001 1010 ssss dddd *** divl rqd,rrs */
   1240 {
   1241 #ifdef NICENAMES
   1242 "divl rqd,rrs",32,744,0x3c,
   1243 #endif
   1244 "divl",OPC_divl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   1245 	{CLASS_BIT+9,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,43},
   1246 
   1247 /* 1111 dddd 1disp7 *** djnz rd,disp7 */
   1248 {
   1249 #ifdef NICENAMES
   1250 "djnz rd,disp7",16,11,0x00,
   1251 #endif
   1252 "djnz",OPC_djnz,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
   1253 	{CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_1DISP7,0,0,0,0,0,0,},2,2,44},
   1254 
   1255 /* 0111 1100 0000 01ii *** ei i2 */
   1256 {
   1257 #ifdef NICENAMES
   1258 "ei i2",16,7,0x00,
   1259 #endif
   1260 "ei",OPC_ei,0,{CLASS_IMM+(ARG_IMM2),},
   1261 	{CLASS_BIT+7,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_01II,0,0,0,0,0,},1,2,45},
   1262 
   1263 /* 0010 1101 ssN0 dddd *** ex rd,@rs */
   1264 {
   1265 #ifdef NICENAMES
   1266 "ex rd,@rs",16,12,0x00,
   1267 #endif
   1268 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   1269 	{CLASS_BIT+2,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
   1270 
   1271 /* 0110 1101 0000 dddd address_src *** ex rd,address_src */
   1272 {
   1273 #ifdef NICENAMES
   1274 "ex rd,address_src",16,15,0x00,
   1275 #endif
   1276 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1277 	{CLASS_BIT+6,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
   1278 
   1279 /* 0110 1101 ssN0 dddd address_src *** ex rd,address_src(rs) */
   1280 {
   1281 #ifdef NICENAMES
   1282 "ex rd,address_src(rs)",16,16,0x00,
   1283 #endif
   1284 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
   1285 	{CLASS_BIT+6,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,46},
   1286 
   1287 /* 1010 1101 ssss dddd *** ex rd,rs */
   1288 {
   1289 #ifdef NICENAMES
   1290 "ex rd,rs",16,6,0x00,
   1291 #endif
   1292 "ex",OPC_ex,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1293 	{CLASS_BIT+0xa,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,46},
   1294 
   1295 /* 0010 1100 ssN0 dddd *** exb rbd,@rs */
   1296 {
   1297 #ifdef NICENAMES
   1298 "exb rbd,@rs",8,12,0x00,
   1299 #endif
   1300 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
   1301 	{CLASS_BIT+2,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,47},
   1302 
   1303 /* 0110 1100 0000 dddd address_src *** exb rbd,address_src */
   1304 {
   1305 #ifdef NICENAMES
   1306 "exb rbd,address_src",8,15,0x00,
   1307 #endif
   1308 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1309 	{CLASS_BIT+6,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,47},
   1310 
   1311 /* 0110 1100 ssN0 dddd address_src *** exb rbd,address_src(rs) */
   1312 {
   1313 #ifdef NICENAMES
   1314 "exb rbd,address_src(rs)",8,16,0x00,
   1315 #endif
   1316 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
   1317 	{CLASS_BIT+6,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,47},
   1318 
   1319 /* 1010 1100 ssss dddd *** exb rbd,rbs */
   1320 {
   1321 #ifdef NICENAMES
   1322 "exb rbd,rbs",8,6,0x00,
   1323 #endif
   1324 "exb",OPC_exb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1325 	{CLASS_BIT+0xa,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,47},
   1326 
   1327 /* 0000 1110 imm8 *** ext0e imm8 */
   1328 {
   1329 #ifdef NICENAMES
   1330 "ext0e imm8",8,10,0x00,
   1331 #endif
   1332 "ext0e",OPC_ext0e,0,{CLASS_IMM+(ARG_IMM8),},
   1333 	{CLASS_BIT+0,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,48},
   1334 
   1335 /* 0000 1111 imm8 *** ext0f imm8 */
   1336 {
   1337 #ifdef NICENAMES
   1338 "ext0f imm8",8,10,0x00,
   1339 #endif
   1340 "ext0f",OPC_ext0f,0,{CLASS_IMM+(ARG_IMM8),},
   1341 	{CLASS_BIT+0,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,49},
   1342 
   1343 /* 1000 1110 imm8 *** ext8e imm8 */
   1344 {
   1345 #ifdef NICENAMES
   1346 "ext8e imm8",8,10,0x00,
   1347 #endif
   1348 "ext8e",OPC_ext8e,0,{CLASS_IMM+(ARG_IMM8),},
   1349 	{CLASS_BIT+8,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,50},
   1350 
   1351 /* 1000 1111 imm8 *** ext8f imm8 */
   1352 {
   1353 #ifdef NICENAMES
   1354 "ext8f imm8",8,10,0x00,
   1355 #endif
   1356 "ext8f",OPC_ext8f,0,{CLASS_IMM+(ARG_IMM8),},
   1357 	{CLASS_BIT+8,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,51},
   1358 
   1359 /* 1011 0001 dddd 1010 *** exts rrd */
   1360 {
   1361 #ifdef NICENAMES
   1362 "exts rrd",16,11,0x00,
   1363 #endif
   1364 "exts",OPC_exts,0,{CLASS_REG_LONG+(ARG_RD),},
   1365 	{CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0xa,0,0,0,0,0,},1,2,52},
   1366 
   1367 /* 1011 0001 dddd 0000 *** extsb rd */
   1368 {
   1369 #ifdef NICENAMES
   1370 "extsb rd",8,11,0x00,
   1371 #endif
   1372 "extsb",OPC_extsb,0,{CLASS_REG_WORD+(ARG_RD),},
   1373 	{CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+0,0,0,0,0,0,},1,2,53},
   1374 
   1375 /* 1011 0001 dddd 0111 *** extsl rqd */
   1376 {
   1377 #ifdef NICENAMES
   1378 "extsl rqd",32,11,0x00,
   1379 #endif
   1380 "extsl",OPC_extsl,0,{CLASS_REG_QUAD+(ARG_RD),},
   1381 	{CLASS_BIT+0xb,CLASS_BIT+1,CLASS_REG+(ARG_RD),CLASS_BIT+7,0,0,0,0,0,},1,2,54},
   1382 
   1383 /* 0111 1010 0000 0000 *** halt */
   1384 {
   1385 #ifdef NICENAMES
   1386 "halt",16,8,0x00,
   1387 #endif
   1388 "halt",OPC_halt,0,{0},
   1389 	{CLASS_BIT+7,CLASS_BIT+0xa,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,55},
   1390 
   1391 /* 0011 1101 ssss dddd *** in rd,@ri */
   1392 {
   1393 #ifdef NICENAMES
   1394 "in rd,@ri",16,10,0x00,
   1395 #endif
   1396 "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IRO+(ARG_RS),},
   1397 	{CLASS_BIT+3,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,56},
   1398 
   1399 /* 0011 1011 dddd 0100 imm16 *** in rd,imm16 */
   1400 {
   1401 #ifdef NICENAMES
   1402 "in rd,imm16",16,12,0x00,
   1403 #endif
   1404 "in",OPC_in,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1405 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,56},
   1406 
   1407 /* 0011 1100 ssss dddd *** inb rbd,@ri */
   1408 {
   1409 #ifdef NICENAMES
   1410 "inb rbd,@ri",8,12,0x00,
   1411 #endif
   1412 "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IRO+(ARG_RS),},
   1413 	{CLASS_BIT+3,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,57},
   1414 
   1415 /* 0011 1010 dddd 0100 imm16 *** inb rbd,imm16 */
   1416 {
   1417 #ifdef NICENAMES
   1418 "inb rbd,imm16",8,10,0x00,
   1419 #endif
   1420 "inb",OPC_inb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1421 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+4,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,57},
   1422 
   1423 /* 0010 1001 ddN0 imm4m1 *** inc @rd,imm4m1 */
   1424 {
   1425 #ifdef NICENAMES
   1426 "inc @rd,imm4m1",16,11,0x1c,
   1427 #endif
   1428 "inc",OPC_inc,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1429 	{CLASS_BIT+2,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
   1430 
   1431 /* 0110 1001 ddN0 imm4m1 address_dst *** inc address_dst(rd),imm4m1 */
   1432 {
   1433 #ifdef NICENAMES
   1434 "inc address_dst(rd),imm4m1",16,14,0x1c,
   1435 #endif
   1436 "inc",OPC_inc,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1437 	{CLASS_BIT+6,CLASS_BIT+9,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
   1438 
   1439 /* 0110 1001 0000 imm4m1 address_dst *** inc address_dst,imm4m1 */
   1440 {
   1441 #ifdef NICENAMES
   1442 "inc address_dst,imm4m1",16,13,0x1c,
   1443 #endif
   1444 "inc",OPC_inc,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
   1445 	{CLASS_BIT+6,CLASS_BIT+9,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,58},
   1446 
   1447 /* 1010 1001 dddd imm4m1 *** inc rd,imm4m1 */
   1448 {
   1449 #ifdef NICENAMES
   1450 "inc rd,imm4m1",16,4,0x1c,
   1451 #endif
   1452 "inc",OPC_inc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1453 	{CLASS_BIT+0xa,CLASS_BIT+9,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,58},
   1454 
   1455 /* 0010 1000 ddN0 imm4m1 *** incb @rd,imm4m1 */
   1456 {
   1457 #ifdef NICENAMES
   1458 "incb @rd,imm4m1",8,11,0x1c,
   1459 #endif
   1460 "incb",OPC_incb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1461 	{CLASS_BIT+2,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,59},
   1462 
   1463 /* 0110 1000 ddN0 imm4m1 address_dst *** incb address_dst(rd),imm4m1 */
   1464 {
   1465 #ifdef NICENAMES
   1466 "incb address_dst(rd),imm4m1",8,14,0x1c,
   1467 #endif
   1468 "incb",OPC_incb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1469 	{CLASS_BIT+6,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,59},
   1470 
   1471 /* 0110 1000 0000 imm4m1 address_dst *** incb address_dst,imm4m1 */
   1472 {
   1473 #ifdef NICENAMES
   1474 "incb address_dst,imm4m1",8,13,0x1c,
   1475 #endif
   1476 "incb",OPC_incb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4M1),},
   1477 	{CLASS_BIT+6,CLASS_BIT+8,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4M1),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,59},
   1478 
   1479 /* 1010 1000 dddd imm4m1 *** incb rbd,imm4m1 */
   1480 {
   1481 #ifdef NICENAMES
   1482 "incb rbd,imm4m1",8,4,0x1c,
   1483 #endif
   1484 "incb",OPC_incb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4M1),},
   1485 	{CLASS_BIT+0xa,CLASS_BIT+8,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4M1),0,0,0,0,0,},2,2,59},
   1486 
   1487 /* 0011 1011 ssss 1000 0000 aaaa ddN0 1000 *** ind @rd,@ri,ra */
   1488 {
   1489 #ifdef NICENAMES
   1490 "ind @rd,@ri,ra",16,21,0x04,
   1491 #endif
   1492 "ind",OPC_ind,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1493 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,60},
   1494 
   1495 /* 0011 1010 ssss 1000 0000 aaaa ddN0 1000 *** indb @rd,@ri,ra */
   1496 {
   1497 #ifdef NICENAMES
   1498 "indb @rd,@ri,ra",8,21,0x04,
   1499 #endif
   1500 "indb",OPC_indb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1501 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,61},
   1502 
   1503 /* 0011 1011 ssss 1000 0000 aaaa ddN0 0000 *** indr @rd,@ri,ra */
   1504 {
   1505 #ifdef NICENAMES
   1506 "indr @rd,@ri,ra",16,11,0x04,
   1507 #endif
   1508 "indr",OPC_indr,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1509 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,62},
   1510 
   1511 /* 0011 1010 ssss 1000 0000 aaaa ddN0 0000 *** indrb @rd,@ri,ra */
   1512 {
   1513 #ifdef NICENAMES
   1514 "indrb @rd,@ri,ra",8,11,0x04,
   1515 #endif
   1516 "indrb",OPC_indrb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1517 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,63},
   1518 
   1519 /* 0011 1011 ssss 0000 0000 aaaa ddN0 1000 *** ini @rd,@ri,ra */
   1520 {
   1521 #ifdef NICENAMES
   1522 "ini @rd,@ri,ra",16,21,0x04,
   1523 #endif
   1524 "ini",OPC_ini,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1525 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,64},
   1526 
   1527 /* 0011 1010 ssss 0000 0000 aaaa ddN0 1000 *** inib @rd,@ri,ra */
   1528 {
   1529 #ifdef NICENAMES
   1530 "inib @rd,@ri,ra",8,21,0x04,
   1531 #endif
   1532 "inib",OPC_inib,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1533 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,65},
   1534 
   1535 /* 0011 1011 ssss 0000 0000 aaaa ddN0 0000 *** inir @rd,@ri,ra */
   1536 {
   1537 #ifdef NICENAMES
   1538 "inir @rd,@ri,ra",16,11,0x04,
   1539 #endif
   1540 "inir",OPC_inir,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1541 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,66},
   1542 
   1543 /* 0011 1010 ssss 0000 0000 aaaa ddN0 0000 *** inirb @rd,@ri,ra */
   1544 {
   1545 #ifdef NICENAMES
   1546 "inirb @rd,@ri,ra",8,11,0x04,
   1547 #endif
   1548 "inirb",OPC_inirb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   1549 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,67},
   1550 
   1551 /* 0111 1011 0000 0000 *** iret */
   1552 {
   1553 #ifdef NICENAMES
   1554 "iret",16,13,0x3f,
   1555 #endif
   1556 "iret",OPC_iret,0,{0},
   1557 	{CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0,0,0,0,0,0,},0,2,68},
   1558 
   1559 /* 0001 1110 ddN0 cccc *** jp cc,@rd */
   1560 {
   1561 #ifdef NICENAMES
   1562 "jp cc,@rd",16,10,0x00,
   1563 #endif
   1564 "jp",OPC_jp,0,{CLASS_CC,CLASS_IR+(ARG_RD),},
   1565 	{CLASS_BIT+1,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,69},
   1566 
   1567 /* 0101 1110 0000 cccc address_dst *** jp cc,address_dst */
   1568 {
   1569 #ifdef NICENAMES
   1570 "jp cc,address_dst",16,7,0x00,
   1571 #endif
   1572 "jp",OPC_jp,0,{CLASS_CC,CLASS_DA+(ARG_DST),},
   1573 	{CLASS_BIT+5,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
   1574 
   1575 /* 0101 1110 ddN0 cccc address_dst *** jp cc,address_dst(rd) */
   1576 {
   1577 #ifdef NICENAMES
   1578 "jp cc,address_dst(rd)",16,8,0x00,
   1579 #endif
   1580 "jp",OPC_jp,0,{CLASS_CC,CLASS_X+(ARG_RD),},
   1581 	{CLASS_BIT+5,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_CC,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,69},
   1582 
   1583 /* 1110 cccc disp8 *** jr cc,disp8 */
   1584 {
   1585 #ifdef NICENAMES
   1586 "jr cc,disp8",16,6,0x00,
   1587 #endif
   1588 "jr",OPC_jr,0,{CLASS_CC,CLASS_DISP,},
   1589 	{CLASS_BIT+0xe,CLASS_CC,CLASS_DISP8,0,0,0,0,0,0,},2,2,70},
   1590 
   1591 /* 0000 1101 ddN0 0101 imm16 *** ld @rd,imm16 */
   1592 {
   1593 #ifdef NICENAMES
   1594 "ld @rd,imm16",16,7,0x00,
   1595 #endif
   1596 "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1597 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
   1598 
   1599 /* 0010 1111 ddN0 ssss *** ld @rd,rs */
   1600 {
   1601 #ifdef NICENAMES
   1602 "ld @rd,rs",16,8,0x00,
   1603 #endif
   1604 "ld",OPC_ld,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1605 	{CLASS_BIT+2,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,71},
   1606 
   1607 /* 0100 1101 ddN0 0101 address_dst imm16 *** ld address_dst(rd),imm16 */
   1608 {
   1609 #ifdef NICENAMES
   1610 "ld address_dst(rd),imm16",16,15,0x00,
   1611 #endif
   1612 "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1613 	{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,71},
   1614 
   1615 /* 0110 1111 ddN0 ssss address_dst *** ld address_dst(rd),rs */
   1616 {
   1617 #ifdef NICENAMES
   1618 "ld address_dst(rd),rs",16,12,0x00,
   1619 #endif
   1620 "ld",OPC_ld,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1621 	{CLASS_BIT+6,CLASS_BIT+0xf,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,71},
   1622 
   1623 /* 0100 1101 0000 0101 address_dst imm16 *** ld address_dst,imm16 */
   1624 {
   1625 #ifdef NICENAMES
   1626 "ld address_dst,imm16",16,14,0x00,
   1627 #endif
   1628 "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM16),},
   1629 	{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,71},
   1630 
   1631 /* 0110 1111 0000 ssss address_dst *** ld address_dst,rs */
   1632 {
   1633 #ifdef NICENAMES
   1634 "ld address_dst,rs",16,11,0x00,
   1635 #endif
   1636 "ld",OPC_ld,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),},
   1637 	{CLASS_BIT+6,CLASS_BIT+0xf,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,71},
   1638 
   1639 /* 0011 0011 ddN0 ssss imm16 *** ld rd(imm16),rs */
   1640 {
   1641 #ifdef NICENAMES
   1642 "ld rd(imm16),rs",16,14,0x00,
   1643 #endif
   1644 "ld",OPC_ld,0,{CLASS_BA+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1645 	{CLASS_BIT+3,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
   1646 
   1647 /* 0111 0011 ddN0 ssss 0000 xxxx 0000 0000 *** ld rd(rx),rs */
   1648 {
   1649 #ifdef NICENAMES
   1650 "ld rd(rx),rs",16,14,0x00,
   1651 #endif
   1652 "ld",OPC_ld,0,{CLASS_BX+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1653 	{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,71},
   1654 
   1655 /* 0010 0001 ssN0 dddd *** ld rd,@rs */
   1656 {
   1657 #ifdef NICENAMES
   1658 "ld rd,@rs",16,7,0x00,
   1659 #endif
   1660 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   1661 	{CLASS_BIT+2,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,71},
   1662 
   1663 /* 0110 0001 0000 dddd address_src *** ld rd,address_src */
   1664 {
   1665 #ifdef NICENAMES
   1666 "ld rd,address_src",16,9,0x00,
   1667 #endif
   1668 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1669 	{CLASS_BIT+6,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,71},
   1670 
   1671 /* 0110 0001 ssN0 dddd address_src *** ld rd,address_src(rs) */
   1672 {
   1673 #ifdef NICENAMES
   1674 "ld rd,address_src(rs)",16,10,0x00,
   1675 #endif
   1676 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
   1677 	{CLASS_BIT+6,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,71},
   1678 
   1679 /* 0010 0001 0000 dddd imm16 *** ld rd,imm16 */
   1680 {
   1681 #ifdef NICENAMES
   1682 "ld rd,imm16",16,7,0x00,
   1683 #endif
   1684 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   1685 	{CLASS_BIT+2,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
   1686 
   1687 /* 1010 0001 ssss dddd *** ld rd,rs */
   1688 {
   1689 #ifdef NICENAMES
   1690 "ld rd,rs",16,3,0x00,
   1691 #endif
   1692 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   1693 	{CLASS_BIT+0xa,CLASS_BIT+1,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,71},
   1694 
   1695 /* 0011 0001 ssN0 dddd imm16 *** ld rd,rs(imm16) */
   1696 {
   1697 #ifdef NICENAMES
   1698 "ld rd,rs(imm16)",16,14,0x00,
   1699 #endif
   1700 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BA+(ARG_RS),},
   1701 	{CLASS_BIT+3,CLASS_BIT+1,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,71},
   1702 
   1703 /* 0111 0001 ssN0 dddd 0000 xxxx 0000 0000 *** ld rd,rs(rx) */
   1704 {
   1705 #ifdef NICENAMES
   1706 "ld rd,rs(rx)",16,14,0x00,
   1707 #endif
   1708 "ld",OPC_ld,0,{CLASS_REG_WORD+(ARG_RD),CLASS_BX+(ARG_RS),},
   1709 	{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,71},
   1710 
   1711 /* 0111 0110 0000 dddd address_src *** lda prd,address_src */
   1712 {
   1713 #ifdef NICENAMES
   1714 "lda prd,address_src",16,12,0x00,
   1715 #endif
   1716 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1717 	{CLASS_BIT+7,CLASS_BIT+6,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,72},
   1718 
   1719 /* 0111 0110 ssN0 dddd address_src *** lda prd,address_src(rs) */
   1720 {
   1721 #ifdef NICENAMES
   1722 "lda prd,address_src(rs)",16,13,0x00,
   1723 #endif
   1724 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_X+(ARG_RS),},
   1725 	{CLASS_BIT+7,CLASS_BIT+6,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,72},
   1726 
   1727 /* 0011 0100 ssN0 dddd imm16 *** lda prd,rs(imm16) */
   1728 {
   1729 #ifdef NICENAMES
   1730 "lda prd,rs(imm16)",16,15,0x00,
   1731 #endif
   1732 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BA+(ARG_RS),},
   1733 	{CLASS_BIT+3,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,72},
   1734 
   1735 /* 0111 0100 ssN0 dddd 0000 xxxx 0000 0000 *** lda prd,rs(rx) */
   1736 {
   1737 #ifdef NICENAMES
   1738 "lda prd,rs(rx)",16,15,0x00,
   1739 #endif
   1740 "lda",OPC_lda,0,{CLASS_PR+(ARG_RD),CLASS_BX+(ARG_RS),},
   1741 	{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,72},
   1742 
   1743 /* 0011 0100 0000 dddd disp16 *** ldar prd,disp16 */
   1744 {
   1745 #ifdef NICENAMES
   1746 "ldar prd,disp16",16,15,0x00,
   1747 #endif
   1748 "ldar",OPC_ldar,0,{CLASS_PR+(ARG_RD),CLASS_DISP,},
   1749 	{CLASS_BIT+3,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,73},
   1750 
   1751 /* 0000 1100 ddN0 0101 imm8 imm8 *** ldb @rd,imm8 */
   1752 {
   1753 #ifdef NICENAMES
   1754 "ldb @rd,imm8",8,7,0x00,
   1755 #endif
   1756 "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   1757 	{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,74},
   1758 
   1759 /* 0010 1110 ddN0 ssss *** ldb @rd,rbs */
   1760 {
   1761 #ifdef NICENAMES
   1762 "ldb @rd,rbs",8,8,0x00,
   1763 #endif
   1764 "ldb",OPC_ldb,0,{CLASS_IR+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1765 	{CLASS_BIT+2,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,74},
   1766 
   1767 /* 0100 1100 ddN0 0101 address_dst imm8 imm8 *** ldb address_dst(rd),imm8 */
   1768 {
   1769 #ifdef NICENAMES
   1770 "ldb address_dst(rd),imm8",8,15,0x00,
   1771 #endif
   1772 "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   1773 	{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,74},
   1774 
   1775 /* 0110 1110 ddN0 ssss address_dst *** ldb address_dst(rd),rbs */
   1776 {
   1777 #ifdef NICENAMES
   1778 "ldb address_dst(rd),rbs",8,12,0x00,
   1779 #endif
   1780 "ldb",OPC_ldb,0,{CLASS_X+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1781 	{CLASS_BIT+6,CLASS_BIT+0xe,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,74},
   1782 
   1783 /* 0100 1100 0000 0101 address_dst imm8 imm8 *** ldb address_dst,imm8 */
   1784 {
   1785 #ifdef NICENAMES
   1786 "ldb address_dst,imm8",8,14,0x00,
   1787 #endif
   1788 "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_IMM+(ARG_IMM8),},
   1789 	{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,74},
   1790 
   1791 /* 0110 1110 0000 ssss address_dst *** ldb address_dst,rbs */
   1792 {
   1793 #ifdef NICENAMES
   1794 "ldb address_dst,rbs",8,11,0x00,
   1795 #endif
   1796 "ldb",OPC_ldb,0,{CLASS_DA+(ARG_DST),CLASS_REG_BYTE+(ARG_RS),},
   1797 	{CLASS_BIT+6,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,74},
   1798 
   1799 /* 0010 0000 ssN0 dddd *** ldb rbd,@rs */
   1800 {
   1801 #ifdef NICENAMES
   1802 "ldb rbd,@rs",8,7,0x00,
   1803 #endif
   1804 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
   1805 	{CLASS_BIT+2,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,74},
   1806 
   1807 /* 0110 0000 0000 dddd address_src *** ldb rbd,address_src */
   1808 {
   1809 #ifdef NICENAMES
   1810 "ldb rbd,address_src",8,9,0x00,
   1811 #endif
   1812 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
   1813 	{CLASS_BIT+6,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,74},
   1814 
   1815 /* 0110 0000 ssN0 dddd address_src *** ldb rbd,address_src(rs) */
   1816 {
   1817 #ifdef NICENAMES
   1818 "ldb rbd,address_src(rs)",8,10,0x00,
   1819 #endif
   1820 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
   1821 	{CLASS_BIT+6,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,74},
   1822 
   1823 /* 1100 dddd imm8 *** ldb rbd,imm8 */
   1824 {
   1825 #ifdef NICENAMES
   1826 "ldb rbd,imm8",8,5,0x00,
   1827 #endif
   1828 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   1829 	{CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},2,2,74},
   1830 
   1831 /* 0010 0000 0000 dddd imm8 imm8 *** ldb rbd,imm8 */
   1832 {
   1833 #ifdef NICENAMES
   1834 "ldb rbd,imm8",8,7,0x00,
   1835 #endif
   1836 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   1837 	{CLASS_BIT+2,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM8),CLASS_IMM+(ARG_IMM8),0,0,0,},2,4,74},
   1838 
   1839 /* 1010 0000 ssss dddd *** ldb rbd,rbs */
   1840 {
   1841 #ifdef NICENAMES
   1842 "ldb rbd,rbs",8,3,0x00,
   1843 #endif
   1844 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1845 	{CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,74},
   1846 
   1847 /* 0011 0000 ssN0 dddd imm16 *** ldb rbd,rs(imm16) */
   1848 {
   1849 #ifdef NICENAMES
   1850 "ldb rbd,rs(imm16)",8,14,0x00,
   1851 #endif
   1852 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BA+(ARG_RS),},
   1853 	{CLASS_BIT+3,CLASS_BIT+0,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,74},
   1854 
   1855 /* 0111 0000 ssN0 dddd 0000 xxxx 0000 0000 *** ldb rbd,rs(rx) */
   1856 {
   1857 #ifdef NICENAMES
   1858 "ldb rbd,rs(rx)",8,14,0x00,
   1859 #endif
   1860 "ldb",OPC_ldb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_BX+(ARG_RS),},
   1861 	{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,74},
   1862 
   1863 /* 0011 0010 ddN0 ssss imm16 *** ldb rd(imm16),rbs */
   1864 {
   1865 #ifdef NICENAMES
   1866 "ldb rd(imm16),rbs",8,14,0x00,
   1867 #endif
   1868 "ldb",OPC_ldb,0,{CLASS_BA+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1869 	{CLASS_BIT+3,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,74},
   1870 
   1871 /* 0111 0010 ddN0 ssss 0000 xxxx 0000 0000 *** ldb rd(rx),rbs */
   1872 {
   1873 #ifdef NICENAMES
   1874 "ldb rd(rx),rbs",8,14,0x00,
   1875 #endif
   1876 "ldb",OPC_ldb,0,{CLASS_BX+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   1877 	{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,74},
   1878 
   1879 /* 0111 1101 ssss 1ccc *** ldctl ctrl,rs */
   1880 {
   1881 #ifdef NICENAMES
   1882 "ldctl ctrl,rs",32,7,0x00,
   1883 #endif
   1884 "ldctl",OPC_ldctl,0,{CLASS_CTRL,CLASS_REG_WORD+(ARG_RS),},
   1885 	{CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RS),CLASS_1CCC,0,0,0,0,0,},2,2,75},
   1886 
   1887 /* 0111 1101 dddd 0ccc *** ldctl rd,ctrl */
   1888 {
   1889 #ifdef NICENAMES
   1890 "ldctl rd,ctrl",32,7,0x00,
   1891 #endif
   1892 "ldctl",OPC_ldctl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_CTRL,},
   1893 	{CLASS_BIT+7,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_0CCC,0,0,0,0,0,},2,2,75},
   1894 
   1895 /* 1000 1100 ssss 1001 *** ldctlb ctrl,rbs */
   1896 {
   1897 #ifdef NICENAMES
   1898 "ldctlb ctrl,rbs",32,7,0x3f,
   1899 #endif
   1900 "ldctlb",OPC_ldctlb,0,{CLASS_CTRL,CLASS_REG_BYTE+(ARG_RS),},
   1901 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RS),CLASS_BIT+9,0,0,0,0,0,},2,2,76},
   1902 
   1903 /* 1000 1100 dddd 0001 *** ldctlb rbd,ctrl */
   1904 {
   1905 #ifdef NICENAMES
   1906 "ldctlb rbd,ctrl",32,7,0x00,
   1907 #endif
   1908 "ldctlb",OPC_ldctlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_CTRL,},
   1909 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+1,0,0,0,0,0,},2,2,76},
   1910 
   1911 /* 1011 1011 ssN0 1001 0000 rrrr ddN0 1000 *** ldd @rd,@rs,rr */
   1912 {
   1913 #ifdef NICENAMES
   1914 "ldd @rd,@rs,rr",16,11,0x04,
   1915 #endif
   1916 "ldd",OPC_ldd,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1917 	{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,77},
   1918 
   1919 /* 1011 1010 ssN0 1001 0000 rrrr ddN0 1000 *** lddb @rd,@rs,rr */
   1920 {
   1921 #ifdef NICENAMES
   1922 "lddb @rd,@rs,rr",8,11,0x04,
   1923 #endif
   1924 "lddb",OPC_lddb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1925 	{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,78},
   1926 
   1927 /* 1011 1011 ssN0 1001 0000 rrrr ddN0 0000 *** lddr @rd,@rs,rr */
   1928 {
   1929 #ifdef NICENAMES
   1930 "lddr @rd,@rs,rr",16,11,0x04,
   1931 #endif
   1932 "lddr",OPC_lddr,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1933 	{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,79},
   1934 
   1935 /* 1011 1010 ssN0 1001 0000 rrrr ddN0 0000 *** lddrb @rd,@rs,rr */
   1936 {
   1937 #ifdef NICENAMES
   1938 "lddrb @rd,@rs,rr",8,11,0x04,
   1939 #endif
   1940 "lddrb",OPC_lddrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1941 	{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,80},
   1942 
   1943 /* 1011 1011 ssN0 0001 0000 rrrr ddN0 1000 *** ldi @rd,@rs,rr */
   1944 {
   1945 #ifdef NICENAMES
   1946 "ldi @rd,@rs,rr",16,11,0x04,
   1947 #endif
   1948 "ldi",OPC_ldi,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1949 	{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,81},
   1950 
   1951 /* 1011 1010 ssN0 0001 0000 rrrr ddN0 1000 *** ldib @rd,@rs,rr */
   1952 {
   1953 #ifdef NICENAMES
   1954 "ldib @rd,@rs,rr",8,11,0x04,
   1955 #endif
   1956 "ldib",OPC_ldib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1957 	{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,82},
   1958 
   1959 /* 1011 1011 ssN0 0001 0000 rrrr ddN0 0000 *** ldir @rd,@rs,rr */
   1960 {
   1961 #ifdef NICENAMES
   1962 "ldir @rd,@rs,rr",16,11,0x04,
   1963 #endif
   1964 "ldir",OPC_ldir,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1965 	{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,83},
   1966 
   1967 /* 1011 1010 ssN0 0001 0000 rrrr ddN0 0000 *** ldirb @rd,@rs,rr */
   1968 {
   1969 #ifdef NICENAMES
   1970 "ldirb @rd,@rs,rr",8,11,0x04,
   1971 #endif
   1972 "ldirb",OPC_ldirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   1973 	{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,84},
   1974 
   1975 /* 1011 1101 dddd imm4 *** ldk rd,imm4 */
   1976 {
   1977 #ifdef NICENAMES
   1978 "ldk rd,imm4",16,5,0x00,
   1979 #endif
   1980 "ldk",OPC_ldk,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   1981 	{CLASS_BIT+0xb,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,85},
   1982 
   1983 /* 0001 1101 ddN0 ssss *** ldl @rd,rrs */
   1984 {
   1985 #ifdef NICENAMES
   1986 "ldl @rd,rrs",32,11,0x00,
   1987 #endif
   1988 "ldl",OPC_ldl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   1989 	{CLASS_BIT+1,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,86},
   1990 
   1991 /* 0101 1101 ddN0 ssss address_dst *** ldl address_dst(rd),rrs */
   1992 {
   1993 #ifdef NICENAMES
   1994 "ldl address_dst(rd),rrs",32,14,0x00,
   1995 #endif
   1996 "ldl",OPC_ldl,0,{CLASS_X+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   1997 	{CLASS_BIT+5,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,86},
   1998 
   1999 /* 0101 1101 0000 ssss address_dst *** ldl address_dst,rrs */
   2000 {
   2001 #ifdef NICENAMES
   2002 "ldl address_dst,rrs",32,15,0x00,
   2003 #endif
   2004 "ldl",OPC_ldl,0,{CLASS_DA+(ARG_DST),CLASS_REG_LONG+(ARG_RS),},
   2005 	{CLASS_BIT+5,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,86},
   2006 
   2007 /* 0011 0111 ddN0 ssss imm16 *** ldl rd(imm16),rrs */
   2008 {
   2009 #ifdef NICENAMES
   2010 "ldl rd(imm16),rrs",32,17,0x00,
   2011 #endif
   2012 "ldl",OPC_ldl,0,{CLASS_BA+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   2013 	{CLASS_BIT+3,CLASS_BIT+7,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,86},
   2014 
   2015 /* 0111 0111 ddN0 ssss 0000 xxxx 0000 0000 *** ldl rd(rx),rrs */
   2016 {
   2017 #ifdef NICENAMES
   2018 "ldl rd(rx),rrs",32,17,0x00,
   2019 #endif
   2020 "ldl",OPC_ldl,0,{CLASS_BX+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   2021 	{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,86},
   2022 
   2023 /* 0001 0100 ssN0 dddd *** ldl rrd,@rs */
   2024 {
   2025 #ifdef NICENAMES
   2026 "ldl rrd,@rs",32,11,0x00,
   2027 #endif
   2028 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
   2029 	{CLASS_BIT+1,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,86},
   2030 
   2031 /* 0101 0100 0000 dddd address_src *** ldl rrd,address_src */
   2032 {
   2033 #ifdef NICENAMES
   2034 "ldl rrd,address_src",32,12,0x00,
   2035 #endif
   2036 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2037 	{CLASS_BIT+5,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,86},
   2038 
   2039 /* 0101 0100 ssN0 dddd address_src *** ldl rrd,address_src(rs) */
   2040 {
   2041 #ifdef NICENAMES
   2042 "ldl rrd,address_src(rs)",32,13,0x00,
   2043 #endif
   2044 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
   2045 	{CLASS_BIT+5,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,86},
   2046 
   2047 /* 0001 0100 0000 dddd imm32 *** ldl rrd,imm32 */
   2048 {
   2049 #ifdef NICENAMES
   2050 "ldl rrd,imm32",32,11,0x00,
   2051 #endif
   2052 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
   2053 	{CLASS_BIT+1,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,86},
   2054 
   2055 /* 1001 0100 ssss dddd *** ldl rrd,rrs */
   2056 {
   2057 #ifdef NICENAMES
   2058 "ldl rrd,rrs",32,5,0x00,
   2059 #endif
   2060 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   2061 	{CLASS_BIT+9,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,86},
   2062 
   2063 /* 0011 0101 ssN0 dddd imm16 *** ldl rrd,rs(imm16) */
   2064 {
   2065 #ifdef NICENAMES
   2066 "ldl rrd,rs(imm16)",32,17,0x00,
   2067 #endif
   2068 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BA+(ARG_RS),},
   2069 	{CLASS_BIT+3,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,86},
   2070 
   2071 /* 0111 0101 ssN0 dddd 0000 xxxx 0000 0000 *** ldl rrd,rs(rx) */
   2072 {
   2073 #ifdef NICENAMES
   2074 "ldl rrd,rs(rx)",32,17,0x00,
   2075 #endif
   2076 "ldl",OPC_ldl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_BX+(ARG_RS),},
   2077 	{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,86},
   2078 
   2079 /* 0001 1100 ddN0 1001 0000 ssss 0000 imm4m1 *** ldm @rd,rs,n */
   2080 {
   2081 #ifdef NICENAMES
   2082 "ldm @rd,rs,n",16,11,0x00,
   2083 #endif
   2084 "ldm",OPC_ldm,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
   2085 	{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,87},
   2086 
   2087 /* 0101 1100 ddN0 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst(rd),rs,n */
   2088 {
   2089 #ifdef NICENAMES
   2090 "ldm address_dst(rd),rs,n",16,15,0x00,
   2091 #endif
   2092 "ldm",OPC_ldm,0,{CLASS_X+(ARG_RD),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
   2093 	{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,87},
   2094 
   2095 /* 0101 1100 0000 1001 0000 ssss 0000 imm4m1 address_dst *** ldm address_dst,rs,n */
   2096 {
   2097 #ifdef NICENAMES
   2098 "ldm address_dst,rs,n",16,14,0x00,
   2099 #endif
   2100 "ldm",OPC_ldm,0,{CLASS_DA+(ARG_DST),CLASS_REG_WORD+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
   2101 	{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,87},
   2102 
   2103 /* 0001 1100 ssN0 0001 0000 dddd 0000 imm4m1 *** ldm rd,@rs,n */
   2104 {
   2105 #ifdef NICENAMES
   2106 "ldm rd,@rs,n",16,11,0x00,
   2107 #endif
   2108 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
   2109 	{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,87},
   2110 
   2111 /* 0101 1100 ssN0 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src(rs),n */
   2112 {
   2113 #ifdef NICENAMES
   2114 "ldm rd,address_src(rs),n",16,15,0x00,
   2115 #endif
   2116 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),CLASS_IMM + (ARG_IMM4M1),},
   2117 	{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,87},
   2118 
   2119 /* 0101 1100 0000 0001 0000 dddd 0000 imm4m1 address_src *** ldm rd,address_src,n */
   2120 {
   2121 #ifdef NICENAMES
   2122 "ldm rd,address_src,n",16,14,0x00,
   2123 #endif
   2124 "ldm",OPC_ldm,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),CLASS_IMM + (ARG_IMM4M1),},
   2125 	{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,87},
   2126 
   2127 /* 0011 1001 ssN0 0000 *** ldps @rs */
   2128 {
   2129 #ifdef NICENAMES
   2130 "ldps @rs",16,12,0x3f,
   2131 #endif
   2132 "ldps",OPC_ldps,0,{CLASS_IR+(ARG_RS),},
   2133 	{CLASS_BIT+3,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,0,0,0,0,},1,2,88},
   2134 
   2135 /* 0111 1001 0000 0000 address_src *** ldps address_src */
   2136 {
   2137 #ifdef NICENAMES
   2138 "ldps address_src",16,16,0x3f,
   2139 #endif
   2140 "ldps",OPC_ldps,0,{CLASS_DA+(ARG_SRC),},
   2141 	{CLASS_BIT+7,CLASS_BIT+9,CLASS_BIT+0,CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,88},
   2142 
   2143 /* 0111 1001 ssN0 0000 address_src *** ldps address_src(rs) */
   2144 {
   2145 #ifdef NICENAMES
   2146 "ldps address_src(rs)",16,17,0x3f,
   2147 #endif
   2148 "ldps",OPC_ldps,0,{CLASS_X+(ARG_RS),},
   2149 	{CLASS_BIT+7,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},1,4,88},
   2150 
   2151 /* 0011 0011 0000 ssss disp16 *** ldr disp16,rs */
   2152 {
   2153 #ifdef NICENAMES
   2154 "ldr disp16,rs",16,14,0x00,
   2155 #endif
   2156 "ldr",OPC_ldr,0,{CLASS_DISP,CLASS_REG_WORD+(ARG_RS),},
   2157 	{CLASS_BIT+3,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,89},
   2158 
   2159 /* 0011 0001 0000 dddd disp16 *** ldr rd,disp16 */
   2160 {
   2161 #ifdef NICENAMES
   2162 "ldr rd,disp16",16,14,0x00,
   2163 #endif
   2164 "ldr",OPC_ldr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DISP,},
   2165 	{CLASS_BIT+3,CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,89},
   2166 
   2167 /* 0011 0010 0000 ssss disp16 *** ldrb disp16,rbs */
   2168 {
   2169 #ifdef NICENAMES
   2170 "ldrb disp16,rbs",8,14,0x00,
   2171 #endif
   2172 "ldrb",OPC_ldrb,0,{CLASS_DISP,CLASS_REG_BYTE+(ARG_RS),},
   2173 	{CLASS_BIT+3,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,90},
   2174 
   2175 /* 0011 0000 0000 dddd disp16 *** ldrb rbd,disp16 */
   2176 {
   2177 #ifdef NICENAMES
   2178 "ldrb rbd,disp16",8,14,0x00,
   2179 #endif
   2180 "ldrb",OPC_ldrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DISP,},
   2181 	{CLASS_BIT+3,CLASS_BIT+0,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,90},
   2182 
   2183 /* 0011 0111 0000 ssss disp16 *** ldrl disp16,rrs */
   2184 {
   2185 #ifdef NICENAMES
   2186 "ldrl disp16,rrs",32,17,0x00,
   2187 #endif
   2188 "ldrl",OPC_ldrl,0,{CLASS_DISP,CLASS_REG_LONG+(ARG_RS),},
   2189 	{CLASS_BIT+3,CLASS_BIT+7,CLASS_BIT+0,CLASS_REG+(ARG_RS),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,91},
   2190 
   2191 /* 0011 0101 0000 dddd disp16 *** ldrl rrd,disp16 */
   2192 {
   2193 #ifdef NICENAMES
   2194 "ldrl rrd,disp16",32,17,0x00,
   2195 #endif
   2196 "ldrl",OPC_ldrl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DISP,},
   2197 	{CLASS_BIT+3,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_DISP+(ARG_DISP16),0,0,0,0,},2,4,91},
   2198 
   2199 /* 0111 1011 0000 1010 *** mbit */
   2200 {
   2201 #ifdef NICENAMES
   2202 "mbit",16,7,0x38,
   2203 #endif
   2204 "mbit",OPC_mbit,0,{0},
   2205 	{CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+0xa,0,0,0,0,0,},0,2,92},
   2206 
   2207 /* 0111 1011 dddd 1101 *** mreq rd */
   2208 {
   2209 #ifdef NICENAMES
   2210 "mreq rd",16,12,0x18,
   2211 #endif
   2212 "mreq",OPC_mreq,0,{CLASS_REG_WORD+(ARG_RD),},
   2213 	{CLASS_BIT+7,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+0xd,0,0,0,0,0,},1,2,93},
   2214 
   2215 /* 0111 1011 0000 1001 *** mres */
   2216 {
   2217 #ifdef NICENAMES
   2218 "mres",16,5,0x00,
   2219 #endif
   2220 "mres",OPC_mres,0,{0},
   2221 	{CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+9,0,0,0,0,0,},0,2,94},
   2222 
   2223 /* 0111 1011 0000 1000 *** mset */
   2224 {
   2225 #ifdef NICENAMES
   2226 "mset",16,5,0x00,
   2227 #endif
   2228 "mset",OPC_mset,0,{0},
   2229 	{CLASS_BIT+7,CLASS_BIT+0xb,CLASS_BIT+0,CLASS_BIT+8,0,0,0,0,0,},0,2,95},
   2230 
   2231 /* 0001 1001 ssN0 dddd *** mult rrd,@rs */
   2232 {
   2233 #ifdef NICENAMES
   2234 "mult rrd,@rs",16,70,0x3c,
   2235 #endif
   2236 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
   2237 	{CLASS_BIT+1,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
   2238 
   2239 /* 0101 1001 0000 dddd address_src *** mult rrd,address_src */
   2240 {
   2241 #ifdef NICENAMES
   2242 "mult rrd,address_src",16,70,0x3c,
   2243 #endif
   2244 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2245 	{CLASS_BIT+5,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
   2246 
   2247 /* 0101 1001 ssN0 dddd address_src *** mult rrd,address_src(rs) */
   2248 {
   2249 #ifdef NICENAMES
   2250 "mult rrd,address_src(rs)",16,70,0x3c,
   2251 #endif
   2252 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
   2253 	{CLASS_BIT+5,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,96},
   2254 
   2255 /* 0001 1001 0000 dddd imm16 *** mult rrd,imm16 */
   2256 {
   2257 #ifdef NICENAMES
   2258 "mult rrd,imm16",16,70,0x3c,
   2259 #endif
   2260 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   2261 	{CLASS_BIT+1,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,96},
   2262 
   2263 /* 1001 1001 ssss dddd *** mult rrd,rs */
   2264 {
   2265 #ifdef NICENAMES
   2266 "mult rrd,rs",16,70,0x3c,
   2267 #endif
   2268 "mult",OPC_mult,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2269 	{CLASS_BIT+9,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,96},
   2270 
   2271 /* 0001 1000 ssN0 dddd *** multl rqd,@rs */
   2272 {
   2273 #ifdef NICENAMES
   2274 "multl rqd,@rs",32,282,0x3c,
   2275 #endif
   2276 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IR+(ARG_RS),},
   2277 	{CLASS_BIT+1,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
   2278 
   2279 /* 0101 1000 0000 dddd address_src *** multl rqd,address_src */
   2280 {
   2281 #ifdef NICENAMES
   2282 "multl rqd,address_src",32,282,0x3c,
   2283 #endif
   2284 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2285 	{CLASS_BIT+5,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
   2286 
   2287 /* 0101 1000 ssN0 dddd address_src *** multl rqd,address_src(rs) */
   2288 {
   2289 #ifdef NICENAMES
   2290 "multl rqd,address_src(rs)",32,282,0x3c,
   2291 #endif
   2292 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_X+(ARG_RS),},
   2293 	{CLASS_BIT+5,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,97},
   2294 
   2295 /* 0001 1000 0000 dddd imm32 *** multl rqd,imm32 */
   2296 {
   2297 #ifdef NICENAMES
   2298 "multl rqd,imm32",32,282,0x3c,
   2299 #endif
   2300 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
   2301 	{CLASS_BIT+1,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,97},
   2302 
   2303 /* 1001 1000 ssss dddd *** multl rqd,rrs */
   2304 {
   2305 #ifdef NICENAMES
   2306 "multl rqd,rrs",32,282,0x3c,
   2307 #endif
   2308 "multl",OPC_multl,0,{CLASS_REG_QUAD+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   2309 	{CLASS_BIT+9,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,97},
   2310 
   2311 /* 0000 1101 ddN0 0010 *** neg @rd */
   2312 {
   2313 #ifdef NICENAMES
   2314 "neg @rd",16,12,0x3c,
   2315 #endif
   2316 "neg",OPC_neg,0,{CLASS_IR+(ARG_RD),},
   2317 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,98},
   2318 
   2319 /* 0100 1101 0000 0010 address_dst *** neg address_dst */
   2320 {
   2321 #ifdef NICENAMES
   2322 "neg address_dst",16,15,0x3c,
   2323 #endif
   2324 "neg",OPC_neg,0,{CLASS_DA+(ARG_DST),},
   2325 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,98},
   2326 
   2327 /* 0100 1101 ddN0 0010 address_dst *** neg address_dst(rd) */
   2328 {
   2329 #ifdef NICENAMES
   2330 "neg address_dst(rd)",16,16,0x3c,
   2331 #endif
   2332 "neg",OPC_neg,0,{CLASS_X+(ARG_RD),},
   2333 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,98},
   2334 
   2335 /* 1000 1101 dddd 0010 *** neg rd */
   2336 {
   2337 #ifdef NICENAMES
   2338 "neg rd",16,7,0x3c,
   2339 #endif
   2340 "neg",OPC_neg,0,{CLASS_REG_WORD+(ARG_RD),},
   2341 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,98},
   2342 
   2343 /* 0000 1100 ddN0 0010 *** negb @rd */
   2344 {
   2345 #ifdef NICENAMES
   2346 "negb @rd",8,12,0x3c,
   2347 #endif
   2348 "negb",OPC_negb,0,{CLASS_IR+(ARG_RD),},
   2349 	{CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,99},
   2350 
   2351 /* 0100 1100 0000 0010 address_dst *** negb address_dst */
   2352 {
   2353 #ifdef NICENAMES
   2354 "negb address_dst",8,15,0x3c,
   2355 #endif
   2356 "negb",OPC_negb,0,{CLASS_DA+(ARG_DST),},
   2357 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,99},
   2358 
   2359 /* 0100 1100 ddN0 0010 address_dst *** negb address_dst(rd) */
   2360 {
   2361 #ifdef NICENAMES
   2362 "negb address_dst(rd)",8,16,0x3c,
   2363 #endif
   2364 "negb",OPC_negb,0,{CLASS_X+(ARG_RD),},
   2365 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+2,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,99},
   2366 
   2367 /* 1000 1100 dddd 0010 *** negb rbd */
   2368 {
   2369 #ifdef NICENAMES
   2370 "negb rbd",8,7,0x3c,
   2371 #endif
   2372 "negb",OPC_negb,0,{CLASS_REG_BYTE+(ARG_RD),},
   2373 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+2,0,0,0,0,0,},1,2,99},
   2374 
   2375 /* 1000 1101 0000 0111 *** nop */
   2376 {
   2377 #ifdef NICENAMES
   2378 "nop",16,7,0x00,
   2379 #endif
   2380 "nop",OPC_nop,0,{0},
   2381 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+7,0,0,0,0,0,},0,2,100},
   2382 
   2383 /* 0000 0101 ssN0 dddd *** or rd,@rs */
   2384 {
   2385 #ifdef NICENAMES
   2386 "or rd,@rs",16,7,0x38,
   2387 #endif
   2388 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   2389 	{CLASS_BIT+0,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,101},
   2390 
   2391 /* 0100 0101 0000 dddd address_src *** or rd,address_src */
   2392 {
   2393 #ifdef NICENAMES
   2394 "or rd,address_src",16,9,0x38,
   2395 #endif
   2396 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2397 	{CLASS_BIT+4,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,101},
   2398 
   2399 /* 0100 0101 ssN0 dddd address_src *** or rd,address_src(rs) */
   2400 {
   2401 #ifdef NICENAMES
   2402 "or rd,address_src(rs)",16,10,0x38,
   2403 #endif
   2404 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
   2405 	{CLASS_BIT+4,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,101},
   2406 
   2407 /* 0000 0101 0000 dddd imm16 *** or rd,imm16 */
   2408 {
   2409 #ifdef NICENAMES
   2410 "or rd,imm16",16,7,0x38,
   2411 #endif
   2412 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   2413 	{CLASS_BIT+0,CLASS_BIT+5,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,101},
   2414 
   2415 /* 1000 0101 ssss dddd *** or rd,rs */
   2416 {
   2417 #ifdef NICENAMES
   2418 "or rd,rs",16,4,0x38,
   2419 #endif
   2420 "or",OPC_or,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2421 	{CLASS_BIT+8,CLASS_BIT+5,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,101},
   2422 
   2423 /* 0000 0100 ssN0 dddd *** orb rbd,@rs */
   2424 {
   2425 #ifdef NICENAMES
   2426 "orb rbd,@rs",8,7,0x3c,
   2427 #endif
   2428 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
   2429 	{CLASS_BIT+0,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,102},
   2430 
   2431 /* 0100 0100 0000 dddd address_src *** orb rbd,address_src */
   2432 {
   2433 #ifdef NICENAMES
   2434 "orb rbd,address_src",8,9,0x3c,
   2435 #endif
   2436 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2437 	{CLASS_BIT+4,CLASS_BIT+4,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,102},
   2438 
   2439 /* 0100 0100 ssN0 dddd address_src *** orb rbd,address_src(rs) */
   2440 {
   2441 #ifdef NICENAMES
   2442 "orb rbd,address_src(rs)",8,10,0x3c,
   2443 #endif
   2444 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
   2445 	{CLASS_BIT+4,CLASS_BIT+4,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,102},
   2446 
   2447 /* 0000 0100 0000 dddd imm8 imm8 *** orb rbd,imm8 */
   2448 {
   2449 #ifdef NICENAMES
   2450 "orb rbd,imm8",8,7,0x3c,
   2451 #endif
   2452 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   2453 	{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,102},
   2454 
   2455 /* 1000 0100 ssss dddd *** orb rbd,rbs */
   2456 {
   2457 #ifdef NICENAMES
   2458 "orb rbd,rbs",8,4,0x3c,
   2459 #endif
   2460 "orb",OPC_orb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   2461 	{CLASS_BIT+8,CLASS_BIT+4,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,102},
   2462 
   2463 /* 0011 1011 ssN0 1010 0000 aaaa dddd 0000 *** otdr @ro,@rs,ra */
   2464 {
   2465 #ifdef NICENAMES
   2466 "otdr @ro,@rs,ra",16,11,0x04,
   2467 #endif
   2468 "otdr",OPC_otdr,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2469 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,103},
   2470 
   2471 /* 0011 1010 ssN0 1010 0000 aaaa dddd 0000 *** otdrb @ro,@rs,ra */
   2472 {
   2473 #ifdef NICENAMES
   2474 "otdrb @ro,@rs,ra",8,11,0x04,
   2475 #endif
   2476 "otdrb",OPC_otdrb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2477 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,104},
   2478 
   2479 /* 0011 1011 ssN0 0010 0000 aaaa dddd 0000 *** otir @ro,@rs,ra */
   2480 {
   2481 #ifdef NICENAMES
   2482 "otir @ro,@rs,ra",16,11,0x04,
   2483 #endif
   2484 "otir",OPC_otir,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2485 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,105},
   2486 
   2487 /* 0011 1010 ssN0 0010 0000 aaaa dddd 0000 *** otirb @ro,@rs,ra */
   2488 {
   2489 #ifdef NICENAMES
   2490 "otirb @ro,@rs,ra",8,11,0x04,
   2491 #endif
   2492 "otirb",OPC_otirb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2493 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,106},
   2494 
   2495 /* 0011 1111 dddd ssss *** out @ro,rs */
   2496 {
   2497 #ifdef NICENAMES
   2498 "out @ro,rs",16,10,0x00,
   2499 #endif
   2500 "out",OPC_out,0,{CLASS_IRO+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2501 	{CLASS_BIT+3,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,107},
   2502 
   2503 /* 0011 1011 ssss 0110 imm16 *** out imm16,rs */
   2504 {
   2505 #ifdef NICENAMES
   2506 "out imm16,rs",16,12,0x00,
   2507 #endif
   2508 "out",OPC_out,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
   2509 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,107},
   2510 
   2511 /* 0011 1110 dddd ssss *** outb @ro,rbs */
   2512 {
   2513 #ifdef NICENAMES
   2514 "outb @ro,rbs",8,10,0x00,
   2515 #endif
   2516 "outb",OPC_outb,0,{CLASS_IRO+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   2517 	{CLASS_BIT+3,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,108},
   2518 
   2519 /* 0011 1010 ssss 0110 imm16 *** outb imm16,rbs */
   2520 {
   2521 #ifdef NICENAMES
   2522 "outb imm16,rbs",8,12,0x00,
   2523 #endif
   2524 "outb",OPC_outb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
   2525 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,108},
   2526 
   2527 /* 0011 1011 ssN0 1010 0000 aaaa dddd 1000 *** outd @ro,@rs,ra */
   2528 {
   2529 #ifdef NICENAMES
   2530 "outd @ro,@rs,ra",16,21,0x04,
   2531 #endif
   2532 "outd",OPC_outd,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2533 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,109},
   2534 
   2535 /* 0011 1010 ssN0 1010 0000 aaaa dddd 1000 *** outdb @ro,@rs,ra */
   2536 {
   2537 #ifdef NICENAMES
   2538 "outdb @ro,@rs,ra",8,21,0x04,
   2539 #endif
   2540 "outdb",OPC_outdb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2541 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xa,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,110},
   2542 
   2543 /* 0011 1011 ssN0 0010 0000 aaaa dddd 1000 *** outi @ro,@rs,ra */
   2544 {
   2545 #ifdef NICENAMES
   2546 "outi @ro,@rs,ra",16,21,0x04,
   2547 #endif
   2548 "outi",OPC_outi,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2549 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,111},
   2550 
   2551 /* 0011 1010 ssN0 0010 0000 aaaa dddd 1000 *** outib @ro,@rs,ra */
   2552 {
   2553 #ifdef NICENAMES
   2554 "outib @ro,@rs,ra",8,21,0x04,
   2555 #endif
   2556 "outib",OPC_outib,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   2557 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,112},
   2558 
   2559 /* 0001 0111 ssN0 ddN0 *** pop @rd,@rs */
   2560 {
   2561 #ifdef NICENAMES
   2562 "pop @rd,@rs",16,12,0x00,
   2563 #endif
   2564 "pop",OPC_pop,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
   2565 	{CLASS_BIT+1,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,113},
   2566 
   2567 /* 0101 0111 ssN0 ddN0 address_dst *** pop address_dst(rd),@rs */
   2568 {
   2569 #ifdef NICENAMES
   2570 "pop address_dst(rd),@rs",16,16,0x00,
   2571 #endif
   2572 "pop",OPC_pop,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
   2573 	{CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,113},
   2574 
   2575 /* 0101 0111 ssN0 0000 address_dst *** pop address_dst,@rs */
   2576 {
   2577 #ifdef NICENAMES
   2578 "pop address_dst,@rs",16,16,0x00,
   2579 #endif
   2580 "pop",OPC_pop,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
   2581 	{CLASS_BIT+5,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,113},
   2582 
   2583 /* 1001 0111 ssN0 dddd *** pop rd,@rs */
   2584 {
   2585 #ifdef NICENAMES
   2586 "pop rd,@rs",16,8,0x00,
   2587 #endif
   2588 "pop",OPC_pop,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   2589 	{CLASS_BIT+9,CLASS_BIT+7,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,113},
   2590 
   2591 /* 0001 0101 ssN0 ddN0 *** popl @rd,@rs */
   2592 {
   2593 #ifdef NICENAMES
   2594 "popl @rd,@rs",32,19,0x00,
   2595 #endif
   2596 "popl",OPC_popl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
   2597 	{CLASS_BIT+1,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),0,0,0,0,0,},2,2,114},
   2598 
   2599 /* 0101 0101 ssN0 ddN0 address_dst *** popl address_dst(rd),@rs */
   2600 {
   2601 #ifdef NICENAMES
   2602 "popl address_dst(rd),@rs",32,23,0x00,
   2603 #endif
   2604 "popl",OPC_popl,0,{CLASS_X+(ARG_RD),CLASS_IR+(ARG_RS),},
   2605 	{CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REGN0+(ARG_RD),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,114},
   2606 
   2607 /* 0101 0101 ssN0 0000 address_dst *** popl address_dst,@rs */
   2608 {
   2609 #ifdef NICENAMES
   2610 "popl address_dst,@rs",32,23,0x00,
   2611 #endif
   2612 "popl",OPC_popl,0,{CLASS_DA+(ARG_DST),CLASS_IR+(ARG_RS),},
   2613 	{CLASS_BIT+5,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_BIT+0,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,114},
   2614 
   2615 /* 1001 0101 ssN0 dddd *** popl rrd,@rs */
   2616 {
   2617 #ifdef NICENAMES
   2618 "popl rrd,@rs",32,12,0x00,
   2619 #endif
   2620 "popl",OPC_popl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
   2621 	{CLASS_BIT+9,CLASS_BIT+5,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,114},
   2622 
   2623 /* 0001 0011 ddN0 ssN0 *** push @rd,@rs */
   2624 {
   2625 #ifdef NICENAMES
   2626 "push @rd,@rs",16,13,0x00,
   2627 #endif
   2628 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
   2629 	{CLASS_BIT+1,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,115},
   2630 
   2631 /* 0101 0011 ddN0 0000 address_src *** push @rd,address_src */
   2632 {
   2633 #ifdef NICENAMES
   2634 "push @rd,address_src",16,14,0x00,
   2635 #endif
   2636 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2637 	{CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,115},
   2638 
   2639 /* 0101 0011 ddN0 ssN0 address_src *** push @rd,address_src(rs) */
   2640 {
   2641 #ifdef NICENAMES
   2642 "push @rd,address_src(rs)",16,14,0x00,
   2643 #endif
   2644 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
   2645 	{CLASS_BIT+5,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,115},
   2646 
   2647 /* 0000 1101 ddN0 1001 imm16 *** push @rd,imm16 */
   2648 {
   2649 #ifdef NICENAMES
   2650 "push @rd,imm16",16,12,0x00,
   2651 #endif
   2652 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   2653 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+9,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,115},
   2654 
   2655 /* 1001 0011 ddN0 ssss *** push @rd,rs */
   2656 {
   2657 #ifdef NICENAMES
   2658 "push @rd,rs",16,9,0x00,
   2659 #endif
   2660 "push",OPC_push,0,{CLASS_IR+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2661 	{CLASS_BIT+9,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,115},
   2662 
   2663 /* 0001 0001 ddN0 ssN0 *** pushl @rd,@rs */
   2664 {
   2665 #ifdef NICENAMES
   2666 "pushl @rd,@rs",32,20,0x00,
   2667 #endif
   2668 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),},
   2669 	{CLASS_BIT+1,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),0,0,0,0,0,},2,2,116},
   2670 
   2671 /* 0101 0001 ddN0 0000 address_src *** pushl @rd,address_src */
   2672 {
   2673 #ifdef NICENAMES
   2674 "pushl @rd,address_src",32,21,0x00,
   2675 #endif
   2676 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_DA+(ARG_SRC),},
   2677 	{CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_BIT+0,CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,116},
   2678 
   2679 /* 0101 0001 ddN0 ssN0 address_src *** pushl @rd,address_src(rs) */
   2680 {
   2681 #ifdef NICENAMES
   2682 "pushl @rd,address_src(rs)",32,21,0x00,
   2683 #endif
   2684 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_X+(ARG_RS),},
   2685 	{CLASS_BIT+5,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REGN0+(ARG_RS),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,116},
   2686 
   2687 /* 1001 0001 ddN0 ssss *** pushl @rd,rrs */
   2688 {
   2689 #ifdef NICENAMES
   2690 "pushl @rd,rrs",32,12,0x00,
   2691 #endif
   2692 "pushl",OPC_pushl,0,{CLASS_IR+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   2693 	{CLASS_BIT+9,CLASS_BIT+1,CLASS_REGN0+(ARG_RD),CLASS_REG+(ARG_RS),0,0,0,0,0,},2,2,116},
   2694 
   2695 /* 0010 0011 ddN0 imm4 *** res @rd,imm4 */
   2696 {
   2697 #ifdef NICENAMES
   2698 "res @rd,imm4",16,11,0x00,
   2699 #endif
   2700 "res",OPC_res,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2701 	{CLASS_BIT+2,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,117},
   2702 
   2703 /* 0110 0011 ddN0 imm4 address_dst *** res address_dst(rd),imm4 */
   2704 {
   2705 #ifdef NICENAMES
   2706 "res address_dst(rd),imm4",16,14,0x00,
   2707 #endif
   2708 "res",OPC_res,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2709 	{CLASS_BIT+6,CLASS_BIT+3,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,117},
   2710 
   2711 /* 0110 0011 0000 imm4 address_dst *** res address_dst,imm4 */
   2712 {
   2713 #ifdef NICENAMES
   2714 "res address_dst,imm4",16,13,0x00,
   2715 #endif
   2716 "res",OPC_res,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
   2717 	{CLASS_BIT+6,CLASS_BIT+3,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,117},
   2718 
   2719 /* 1010 0011 dddd imm4 *** res rd,imm4 */
   2720 {
   2721 #ifdef NICENAMES
   2722 "res rd,imm4",16,4,0x00,
   2723 #endif
   2724 "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2725 	{CLASS_BIT+0xa,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,117},
   2726 
   2727 /* 0010 0011 0000 ssss 0000 dddd 0000 0000 *** res rd,rs */
   2728 {
   2729 #ifdef NICENAMES
   2730 "res rd,rs",16,10,0x00,
   2731 #endif
   2732 "res",OPC_res,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2733 	{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,117},
   2734 
   2735 /* 0010 0010 ddN0 imm4 *** resb @rd,imm4 */
   2736 {
   2737 #ifdef NICENAMES
   2738 "resb @rd,imm4",8,11,0x00,
   2739 #endif
   2740 "resb",OPC_resb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2741 	{CLASS_BIT+2,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,118},
   2742 
   2743 /* 0110 0010 ddN0 imm4 address_dst *** resb address_dst(rd),imm4 */
   2744 {
   2745 #ifdef NICENAMES
   2746 "resb address_dst(rd),imm4",8,14,0x00,
   2747 #endif
   2748 "resb",OPC_resb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2749 	{CLASS_BIT+6,CLASS_BIT+2,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,118},
   2750 
   2751 /* 0110 0010 0000 imm4 address_dst *** resb address_dst,imm4 */
   2752 {
   2753 #ifdef NICENAMES
   2754 "resb address_dst,imm4",8,13,0x00,
   2755 #endif
   2756 "resb",OPC_resb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
   2757 	{CLASS_BIT+6,CLASS_BIT+2,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,118},
   2758 
   2759 /* 1010 0010 dddd imm4 *** resb rbd,imm4 */
   2760 {
   2761 #ifdef NICENAMES
   2762 "resb rbd,imm4",8,4,0x00,
   2763 #endif
   2764 "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   2765 	{CLASS_BIT+0xa,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,118},
   2766 
   2767 /* 0010 0010 0000 ssss 0000 dddd 0000 0000 *** resb rbd,rs */
   2768 {
   2769 #ifdef NICENAMES
   2770 "resb rbd,rs",8,10,0x00,
   2771 #endif
   2772 "resb",OPC_resb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2773 	{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,118},
   2774 
   2775 /* 1000 1101 flags 0011 *** resflg flags */
   2776 {
   2777 #ifdef NICENAMES
   2778 "resflg flags",16,7,0x3c,
   2779 #endif
   2780 "resflg",OPC_resflg,0,{CLASS_FLAGS,},
   2781 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+3,0,0,0,0,0,},1,2,119},
   2782 
   2783 /* 1001 1110 0000 cccc *** ret cc */
   2784 {
   2785 #ifdef NICENAMES
   2786 "ret cc",16,10,0x00,
   2787 #endif
   2788 "ret",OPC_ret,0,{CLASS_CC,},
   2789 	{CLASS_BIT+9,CLASS_BIT+0xe,CLASS_BIT+0,CLASS_CC,0,0,0,0,0,},1,2,120},
   2790 
   2791 /* 1011 0011 dddd 00I0 *** rl rd,imm1or2 */
   2792 {
   2793 #ifdef NICENAMES
   2794 "rl rd,imm1or2",16,6,0x3c,
   2795 #endif
   2796 "rl",OPC_rl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2797 	{CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,121},
   2798 
   2799 /* 1011 0010 dddd 00I0 *** rlb rbd,imm1or2 */
   2800 {
   2801 #ifdef NICENAMES
   2802 "rlb rbd,imm1or2",8,6,0x3c,
   2803 #endif
   2804 "rlb",OPC_rlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2805 	{CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0,0,0,0,0,0,},2,2,122},
   2806 
   2807 /* 1011 0011 dddd 10I0 *** rlc rd,imm1or2 */
   2808 {
   2809 #ifdef NICENAMES
   2810 "rlc rd,imm1or2",16,6,0x3c,
   2811 #endif
   2812 "rlc",OPC_rlc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2813 	{CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,123},
   2814 
   2815 /* 1011 0010 dddd 10I0 *** rlcb rbd,imm1or2 */
   2816 {
   2817 #ifdef NICENAMES
   2818 "rlcb rbd,imm1or2",8,9,0x10,
   2819 #endif
   2820 "rlcb",OPC_rlcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2821 	{CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+8,0,0,0,0,0,},2,2,124},
   2822 
   2823 /* 1011 1110 aaaa bbbb *** rldb rbb,rba */
   2824 {
   2825 #ifdef NICENAMES
   2826 "rldb rbb,rba",8,9,0x10,
   2827 #endif
   2828 "rldb",OPC_rldb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
   2829 	{CLASS_BIT+0xb,CLASS_BIT+0xe,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,125},
   2830 
   2831 /* 1011 0011 dddd 01I0 *** rr rd,imm1or2 */
   2832 {
   2833 #ifdef NICENAMES
   2834 "rr rd,imm1or2",16,6,0x3c,
   2835 #endif
   2836 "rr",OPC_rr,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2837 	{CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,126},
   2838 
   2839 /* 1011 0010 dddd 01I0 *** rrb rbd,imm1or2 */
   2840 {
   2841 #ifdef NICENAMES
   2842 "rrb rbd,imm1or2",8,6,0x3c,
   2843 #endif
   2844 "rrb",OPC_rrb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2845 	{CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+4,0,0,0,0,0,},2,2,127},
   2846 
   2847 /* 1011 0011 dddd 11I0 *** rrc rd,imm1or2 */
   2848 {
   2849 #ifdef NICENAMES
   2850 "rrc rd,imm1or2",16,6,0x3c,
   2851 #endif
   2852 "rrc",OPC_rrc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2853 	{CLASS_BIT+0xb,CLASS_BIT+3,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,128},
   2854 
   2855 /* 1011 0010 dddd 11I0 *** rrcb rbd,imm1or2 */
   2856 {
   2857 #ifdef NICENAMES
   2858 "rrcb rbd,imm1or2",8,9,0x10,
   2859 #endif
   2860 "rrcb",OPC_rrcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM1OR2),},
   2861 	{CLASS_BIT+0xb,CLASS_BIT+2,CLASS_REG+(ARG_RD),CLASS_BIT_1OR2+0xc,0,0,0,0,0,},2,2,129},
   2862 
   2863 /* 1011 1100 aaaa bbbb *** rrdb rbb,rba */
   2864 {
   2865 #ifdef NICENAMES
   2866 "rrdb rbb,rba",8,9,0x10,
   2867 #endif
   2868 "rrdb",OPC_rrdb,0,{CLASS_REG_BYTE+(ARG_RB),CLASS_REG_BYTE+(ARG_RA),},
   2869 	{CLASS_BIT+0xb,CLASS_BIT+0xc,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RB),0,0,0,0,0,},2,2,130},
   2870 
   2871 /* 0011 0110 imm8 *** rsvd36 */
   2872 {
   2873 #ifdef NICENAMES
   2874 "rsvd36",8,10,0x00,
   2875 #endif
   2876 "rsvd36",OPC_rsvd36,0,{0},
   2877 	{CLASS_BIT+3,CLASS_BIT+6,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,131},
   2878 
   2879 /* 0011 1000 imm8 *** rsvd38 */
   2880 {
   2881 #ifdef NICENAMES
   2882 "rsvd38",8,10,0x00,
   2883 #endif
   2884 "rsvd38",OPC_rsvd38,0,{0},
   2885 	{CLASS_BIT+3,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,132},
   2886 
   2887 /* 0111 1000 imm8 *** rsvd78 */
   2888 {
   2889 #ifdef NICENAMES
   2890 "rsvd78",8,10,0x00,
   2891 #endif
   2892 "rsvd78",OPC_rsvd78,0,{0},
   2893 	{CLASS_BIT+7,CLASS_BIT+8,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,133},
   2894 
   2895 /* 0111 1110 imm8 *** rsvd7e */
   2896 {
   2897 #ifdef NICENAMES
   2898 "rsvd7e",8,10,0x00,
   2899 #endif
   2900 "rsvd7e",OPC_rsvd7e,0,{0},
   2901 	{CLASS_BIT+7,CLASS_BIT+0xe,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,134},
   2902 
   2903 /* 1001 1101 imm8 *** rsvd9d */
   2904 {
   2905 #ifdef NICENAMES
   2906 "rsvd9d",8,10,0x00,
   2907 #endif
   2908 "rsvd9d",OPC_rsvd9d,0,{0},
   2909 	{CLASS_BIT+9,CLASS_BIT+0xd,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,135},
   2910 
   2911 /* 1001 1111 imm8 *** rsvd9f */
   2912 {
   2913 #ifdef NICENAMES
   2914 "rsvd9f",8,10,0x00,
   2915 #endif
   2916 "rsvd9f",OPC_rsvd9f,0,{0},
   2917 	{CLASS_BIT+9,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,136},
   2918 
   2919 /* 1011 1001 imm8 *** rsvdb9 */
   2920 {
   2921 #ifdef NICENAMES
   2922 "rsvdb9",8,10,0x00,
   2923 #endif
   2924 "rsvdb9",OPC_rsvdb9,0,{0},
   2925 	{CLASS_BIT+0xb,CLASS_BIT+9,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,137},
   2926 
   2927 /* 1011 1111 imm8 *** rsvdbf */
   2928 {
   2929 #ifdef NICENAMES
   2930 "rsvdbf",8,10,0x00,
   2931 #endif
   2932 "rsvdbf",OPC_rsvdbf,0,{0},
   2933 	{CLASS_BIT+0xb,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},0,2,138},
   2934 
   2935 /* 1011 0111 ssss dddd *** sbc rd,rs */
   2936 {
   2937 #ifdef NICENAMES
   2938 "sbc rd,rs",16,5,0x3c,
   2939 #endif
   2940 "sbc",OPC_sbc,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2941 	{CLASS_BIT+0xb,CLASS_BIT+7,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,139},
   2942 
   2943 /* 1011 0110 ssss dddd *** sbcb rbd,rbs */
   2944 {
   2945 #ifdef NICENAMES
   2946 "sbcb rbd,rbs",8,5,0x3f,
   2947 #endif
   2948 "sbcb",OPC_sbcb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   2949 	{CLASS_BIT+0xb,CLASS_BIT+6,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,140},
   2950 
   2951 /* 0111 1111 imm8 *** sc imm8 */
   2952 {
   2953 #ifdef NICENAMES
   2954 "sc imm8",8,33,0x3f,
   2955 #endif
   2956 "sc",OPC_sc,0,{CLASS_IMM+(ARG_IMM8),},
   2957 	{CLASS_BIT+7,CLASS_BIT+0xf,CLASS_IMM+(ARG_IMM8),0,0,0,0,0,0,},1,2,141},
   2958 
   2959 /* 1011 0011 dddd 1011 0000 ssss 0000 0000 *** sda rd,rs */
   2960 {
   2961 #ifdef NICENAMES
   2962 "sda rd,rs",16,15,0x3c,
   2963 #endif
   2964 "sda",OPC_sda,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2965 	{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,142},
   2966 
   2967 /* 1011 0010 dddd 1011 0000 ssss 0000 0000 *** sdab rbd,rs */
   2968 {
   2969 #ifdef NICENAMES
   2970 "sdab rbd,rs",8,15,0x3c,
   2971 #endif
   2972 "sdab",OPC_sdab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2973 	{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,143},
   2974 
   2975 /* 1011 0011 dddd 1111 0000 ssss 0000 0000 *** sdal rrd,rs */
   2976 {
   2977 #ifdef NICENAMES
   2978 "sdal rrd,rs",32,15,0x3c,
   2979 #endif
   2980 "sdal",OPC_sdal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2981 	{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,144},
   2982 
   2983 /* 1011 0011 dddd 0011 0000 ssss 0000 0000 *** sdl rd,rs */
   2984 {
   2985 #ifdef NICENAMES
   2986 "sdl rd,rs",16,15,0x38,
   2987 #endif
   2988 "sdl",OPC_sdl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2989 	{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,145},
   2990 
   2991 /* 1011 0010 dddd 0011 0000 ssss 0000 0000 *** sdlb rbd,rs */
   2992 {
   2993 #ifdef NICENAMES
   2994 "sdlb rbd,rs",8,15,0x38,
   2995 #endif
   2996 "sdlb",OPC_sdlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   2997 	{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,146},
   2998 
   2999 /* 1011 0011 dddd 0111 0000 ssss 0000 0000 *** sdll rrd,rs */
   3000 {
   3001 #ifdef NICENAMES
   3002 "sdll rrd,rs",32,15,0x38,
   3003 #endif
   3004 "sdll",OPC_sdll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   3005 	{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,147},
   3006 
   3007 /* 0010 0101 ddN0 imm4 *** set @rd,imm4 */
   3008 {
   3009 #ifdef NICENAMES
   3010 "set @rd,imm4",16,11,0x00,
   3011 #endif
   3012 "set",OPC_set,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3013 	{CLASS_BIT+2,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,148},
   3014 
   3015 /* 0110 0101 ddN0 imm4 address_dst *** set address_dst(rd),imm4 */
   3016 {
   3017 #ifdef NICENAMES
   3018 "set address_dst(rd),imm4",16,14,0x00,
   3019 #endif
   3020 "set",OPC_set,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3021 	{CLASS_BIT+6,CLASS_BIT+5,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,148},
   3022 
   3023 /* 0110 0101 0000 imm4 address_dst *** set address_dst,imm4 */
   3024 {
   3025 #ifdef NICENAMES
   3026 "set address_dst,imm4",16,13,0x00,
   3027 #endif
   3028 "set",OPC_set,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
   3029 	{CLASS_BIT+6,CLASS_BIT+5,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,148},
   3030 
   3031 /* 1010 0101 dddd imm4 *** set rd,imm4 */
   3032 {
   3033 #ifdef NICENAMES
   3034 "set rd,imm4",16,4,0x00,
   3035 #endif
   3036 "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3037 	{CLASS_BIT+0xa,CLASS_BIT+5,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,148},
   3038 
   3039 /* 0010 0101 0000 ssss 0000 dddd 0000 0000 *** set rd,rs */
   3040 {
   3041 #ifdef NICENAMES
   3042 "set rd,rs",16,10,0x00,
   3043 #endif
   3044 "set",OPC_set,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   3045 	{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,148},
   3046 
   3047 /* 0010 0100 ddN0 imm4 *** setb @rd,imm4 */
   3048 {
   3049 #ifdef NICENAMES
   3050 "setb @rd,imm4",8,11,0x00,
   3051 #endif
   3052 "setb",OPC_setb,0,{CLASS_IR+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3053 	{CLASS_BIT+2,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,149},
   3054 
   3055 /* 0110 0100 ddN0 imm4 address_dst *** setb address_dst(rd),imm4 */
   3056 {
   3057 #ifdef NICENAMES
   3058 "setb address_dst(rd),imm4",8,14,0x00,
   3059 #endif
   3060 "setb",OPC_setb,0,{CLASS_X+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3061 	{CLASS_BIT+6,CLASS_BIT+4,CLASS_REGN0+(ARG_RD),CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,149},
   3062 
   3063 /* 0110 0100 0000 imm4 address_dst *** setb address_dst,imm4 */
   3064 {
   3065 #ifdef NICENAMES
   3066 "setb address_dst,imm4",8,13,0x00,
   3067 #endif
   3068 "setb",OPC_setb,0,{CLASS_DA+(ARG_DST),CLASS_IMM +(ARG_IMM4),},
   3069 	{CLASS_BIT+6,CLASS_BIT+4,CLASS_BIT+0,CLASS_IMM+(ARG_IMM4),CLASS_ADDRESS+(ARG_DST),0,0,0,0,},2,4,149},
   3070 
   3071 /* 1010 0100 dddd imm4 *** setb rbd,imm4 */
   3072 {
   3073 #ifdef NICENAMES
   3074 "setb rbd,imm4",8,4,0x00,
   3075 #endif
   3076 "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3077 	{CLASS_BIT+0xa,CLASS_BIT+4,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM4),0,0,0,0,0,},2,2,149},
   3078 
   3079 /* 0010 0100 0000 ssss 0000 dddd 0000 0000 *** setb rbd,rs */
   3080 {
   3081 #ifdef NICENAMES
   3082 "setb rbd,rs",8,10,0x00,
   3083 #endif
   3084 "setb",OPC_setb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   3085 	{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,149},
   3086 
   3087 /* 1000 1101 flags 0001 *** setflg flags */
   3088 {
   3089 #ifdef NICENAMES
   3090 "setflg flags",16,7,0x3c,
   3091 #endif
   3092 "setflg",OPC_setflg,0,{CLASS_FLAGS,},
   3093 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_FLAGS,CLASS_BIT+1,0,0,0,0,0,},1,2,150},
   3094 
   3095 /* 0011 1011 dddd 0101 imm16 *** sin rd,imm16 */
   3096 {
   3097 #ifdef NICENAMES
   3098 "sin rd,imm16",16,12,0x00,
   3099 #endif
   3100 "sin",OPC_sin,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   3101 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,151},
   3102 
   3103 /* 0011 1010 dddd 0101 imm16 *** sinb rbd,imm16 */
   3104 {
   3105 #ifdef NICENAMES
   3106 "sinb rbd,imm16",8,10,0x00,
   3107 #endif
   3108 "sinb",OPC_sinb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   3109 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RD),CLASS_BIT+5,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,152},
   3110 
   3111 /* 0011 1011 ssss 1001 0000 aaaa ddN0 1000 *** sind @rd,@ri,ra */
   3112 {
   3113 #ifdef NICENAMES
   3114 "sind @rd,@ri,ra",16,21,0x04,
   3115 #endif
   3116 "sind",OPC_sind,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3117 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,153},
   3118 
   3119 /* 0011 1010 ssss 1001 0000 aaaa ddN0 1000 *** sindb @rd,@ri,ra */
   3120 {
   3121 #ifdef NICENAMES
   3122 "sindb @rd,@ri,ra",8,21,0x04,
   3123 #endif
   3124 "sindb",OPC_sindb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3125 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,154},
   3126 
   3127 /* 0011 1011 ssss 1001 0000 aaaa ddN0 0000 *** sindr @rd,@ri,ra */
   3128 {
   3129 #ifdef NICENAMES
   3130 "sindr @rd,@ri,ra",16,11,0x04,
   3131 #endif
   3132 "sindr",OPC_sindr,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3133 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,155},
   3134 
   3135 /* 0011 1010 ssss 1001 0000 aaaa ddN0 0000 *** sindrb @rd,@ri,ra */
   3136 {
   3137 #ifdef NICENAMES
   3138 "sindrb @rd,@ri,ra",8,11,0x04,
   3139 #endif
   3140 "sindrb",OPC_sindrb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3141 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,156},
   3142 
   3143 /* 0011 1011 ssss 0001 0000 aaaa ddN0 1000 *** sini @rd,@ri,ra */
   3144 {
   3145 #ifdef NICENAMES
   3146 "sini @rd,@ri,ra",16,21,0x04,
   3147 #endif
   3148 "sini",OPC_sini,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3149 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,157},
   3150 
   3151 /* 0011 1010 ssss 0001 0000 aaaa ddN0 1000 *** sinib @rd,@ri,ra */
   3152 {
   3153 #ifdef NICENAMES
   3154 "sinib @rd,@ri,ra",8,21,0x04,
   3155 #endif
   3156 "sinib",OPC_sinib,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3157 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,},3,4,158},
   3158 
   3159 /* 0011 1011 ssss 0001 0000 aaaa ddN0 0000 *** sinir @rd,@ri,ra */
   3160 {
   3161 #ifdef NICENAMES
   3162 "sinir @rd,@ri,ra",16,11,0x04,
   3163 #endif
   3164 "sinir",OPC_sinir,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3165 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,159},
   3166 
   3167 /* 0011 1010 ssss 0001 0000 aaaa ddN0 0000 *** sinirb @rd,@ri,ra */
   3168 {
   3169 #ifdef NICENAMES
   3170 "sinirb @rd,@ri,ra",8,11,0x04,
   3171 #endif
   3172 "sinirb",OPC_sinirb,0,{CLASS_IR+(ARG_RD),CLASS_IRO+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3173 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+1,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REGN0+(ARG_RD),CLASS_BIT+0,0,},3,4,160},
   3174 
   3175 /* 1011 0011 dddd 1001 0000 0000 imm8 *** sla rd,imm8 */
   3176 {
   3177 #ifdef NICENAMES
   3178 "sla rd,imm8",16,13,0x3c,
   3179 #endif
   3180 "sla",OPC_sla,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3181 	{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,161},
   3182 
   3183 /* 1011 0010 dddd 1001 iiii iiii 0000 imm4 *** slab rbd,imm4 */
   3184 {
   3185 #ifdef NICENAMES
   3186 "slab rbd,imm4",8,13,0x3c,
   3187 #endif
   3188 "slab",OPC_slab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3189 	{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,162},
   3190 
   3191 /* 1011 0011 dddd 1101 0000 0000 imm8 *** slal rrd,imm8 */
   3192 {
   3193 #ifdef NICENAMES
   3194 "slal rrd,imm8",32,13,0x3c,
   3195 #endif
   3196 "slal",OPC_slal,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3197 	{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,163},
   3198 
   3199 /* 1011 0011 dddd 0001 0000 0000 imm8 *** sll rd,imm8 */
   3200 {
   3201 #ifdef NICENAMES
   3202 "sll rd,imm8",16,13,0x38,
   3203 #endif
   3204 "sll",OPC_sll,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3205 	{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,164},
   3206 
   3207 /* 1011 0010 dddd 0001 iiii iiii 0000 imm4 *** sllb rbd,imm4 */
   3208 {
   3209 #ifdef NICENAMES
   3210 "sllb rbd,imm4",8,13,0x38,
   3211 #endif
   3212 "sllb",OPC_sllb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3213 	{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,165},
   3214 
   3215 /* 1011 0011 dddd 0101 0000 0000 imm8 *** slll rrd,imm8 */
   3216 {
   3217 #ifdef NICENAMES
   3218 "slll rrd,imm8",32,13,0x38,
   3219 #endif
   3220 "slll",OPC_slll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3221 	{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,166},
   3222 
   3223 /* 0011 1011 ssN0 1011 0000 aaaa dddd 0000 *** sotdr @ro,@rs,ra */
   3224 {
   3225 #ifdef NICENAMES
   3226 "sotdr @ro,@rs,ra",16,11,0x04,
   3227 #endif
   3228 "sotdr",OPC_sotdr,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3229 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,167},
   3230 
   3231 /* 0011 1010 ssN0 1011 0000 aaaa dddd 0000 *** sotdrb @ro,@rs,ra */
   3232 {
   3233 #ifdef NICENAMES
   3234 "sotdrb @ro,@rs,ra",8,11,0x04,
   3235 #endif
   3236 "sotdrb",OPC_sotdrb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3237 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,168},
   3238 
   3239 /* 0011 1011 ssN0 0011 0000 aaaa dddd 0000 *** sotir @ro,@rs,ra */
   3240 {
   3241 #ifdef NICENAMES
   3242 "sotir @ro,@rs,ra",16,11,0x04,
   3243 #endif
   3244 "sotir",OPC_sotir,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3245 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,169},
   3246 
   3247 /* 0011 1010 ssN0 0011 0000 aaaa dddd 0000 *** sotirb @ro,@rs,ra */
   3248 {
   3249 #ifdef NICENAMES
   3250 "sotirb @ro,@rs,ra",8,11,0x04,
   3251 #endif
   3252 "sotirb",OPC_sotirb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3253 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+0,0,},3,4,170},
   3254 
   3255 /* 0011 1011 ssss 0110 imm16 *** sout imm16,rs */
   3256 {
   3257 #ifdef NICENAMES
   3258 "sout imm16,rs",16,12,0x00,
   3259 #endif
   3260 "sout",OPC_sout,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_WORD+(ARG_RS),},
   3261 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,171},
   3262 
   3263 /* 0011 1010 ssss 0110 imm16 *** soutb imm16,rbs */
   3264 {
   3265 #ifdef NICENAMES
   3266 "soutb imm16,rbs",8,12,0x00,
   3267 #endif
   3268 "soutb",OPC_soutb,0,{CLASS_IMM+(ARG_IMM16),CLASS_REG_BYTE+(ARG_RS),},
   3269 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REG+(ARG_RS),CLASS_BIT+6,CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,172},
   3270 
   3271 /* 0011 1011 ssN0 1011 0000 aaaa dddd 1000 *** soutd @ro,@rs,ra */
   3272 {
   3273 #ifdef NICENAMES
   3274 "soutd @ro,@rs,ra",16,21,0x04,
   3275 #endif
   3276 "soutd",OPC_soutd,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3277 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,173},
   3278 
   3279 /* 0011 1010 ssN0 1011 0000 aaaa dddd 1000 *** soutdb @ro,@rs,ra */
   3280 {
   3281 #ifdef NICENAMES
   3282 "soutdb @ro,@rs,ra",8,21,0x04,
   3283 #endif
   3284 "soutdb",OPC_soutdb,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3285 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+0xb,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,174},
   3286 
   3287 /* 0011 1011 ssN0 0011 0000 aaaa dddd 1000 *** souti @ro,@rs,ra */
   3288 {
   3289 #ifdef NICENAMES
   3290 "souti @ro,@rs,ra",16,21,0x04,
   3291 #endif
   3292 "souti",OPC_souti,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3293 	{CLASS_BIT+3,CLASS_BIT+0xb,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,175},
   3294 
   3295 /* 0011 1010 ssN0 0011 0000 aaaa dddd 1000 *** soutib @ro,@rs,ra */
   3296 {
   3297 #ifdef NICENAMES
   3298 "soutib @ro,@rs,ra",8,21,0x04,
   3299 #endif
   3300 "soutib",OPC_soutib,0,{CLASS_IRO+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RA),},
   3301 	{CLASS_BIT+3,CLASS_BIT+0xa,CLASS_REGN0+(ARG_RS),CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RA),CLASS_REG+(ARG_RD),CLASS_BIT+8,0,},3,4,176},
   3302 
   3303 /* 1011 0011 dddd 1001 1111 1111 nim8 *** sra rd,imm8 */
   3304 {
   3305 #ifdef NICENAMES
   3306 "sra rd,imm8",16,13,0x3c,
   3307 #endif
   3308 "sra",OPC_sra,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3309 	{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,177},
   3310 
   3311 /* 1011 0010 dddd 1001 iiii iiii 1111 nim4 *** srab rbd,imm4 */
   3312 {
   3313 #ifdef NICENAMES
   3314 "srab rbd,imm4",8,13,0x3c,
   3315 #endif
   3316 "srab",OPC_srab,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3317 	{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,178},
   3318 
   3319 /* 1011 0011 dddd 1101 1111 1111 nim8 *** sral rrd,imm8 */
   3320 {
   3321 #ifdef NICENAMES
   3322 "sral rrd,imm8",32,13,0x3c,
   3323 #endif
   3324 "sral",OPC_sral,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3325 	{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,179},
   3326 
   3327 /* 1011 0011 dddd 0001 1111 1111 nim8 *** srl rd,imm8 */
   3328 {
   3329 #ifdef NICENAMES
   3330 "srl rd,imm8",16,13,0x3c,
   3331 #endif
   3332 "srl",OPC_srl,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3333 	{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,180},
   3334 
   3335 /* 1011 0010 dddd 0001 iiii iiii 1111 nim4 *** srlb rbd,imm4 */
   3336 {
   3337 #ifdef NICENAMES
   3338 "srlb rbd,imm4",8,13,0x3c,
   3339 #endif
   3340 "srlb",OPC_srlb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM +(ARG_IMM4),},
   3341 	{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,181},
   3342 
   3343 /* 1011 0011 dddd 0101 1111 1111 nim8 *** srll rrd,imm8 */
   3344 {
   3345 #ifdef NICENAMES
   3346 "srll rrd,imm8",32,13,0x3c,
   3347 #endif
   3348 "srll",OPC_srll,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3349 	{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,182},
   3350 
   3351 /* 0000 0011 ssN0 dddd *** sub rd,@rs */
   3352 {
   3353 #ifdef NICENAMES
   3354 "sub rd,@rs",16,7,0x3c,
   3355 #endif
   3356 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   3357 	{CLASS_BIT+0,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,183},
   3358 
   3359 /* 0100 0011 0000 dddd address_src *** sub rd,address_src */
   3360 {
   3361 #ifdef NICENAMES
   3362 "sub rd,address_src",16,9,0x3c,
   3363 #endif
   3364 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   3365 	{CLASS_BIT+4,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,183},
   3366 
   3367 /* 0100 0011 ssN0 dddd address_src *** sub rd,address_src(rs) */
   3368 {
   3369 #ifdef NICENAMES
   3370 "sub rd,address_src(rs)",16,10,0x3c,
   3371 #endif
   3372 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
   3373 	{CLASS_BIT+4,CLASS_BIT+3,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,183},
   3374 
   3375 /* 0000 0011 0000 dddd imm16 *** sub rd,imm16 */
   3376 {
   3377 #ifdef NICENAMES
   3378 "sub rd,imm16",16,7,0x3c,
   3379 #endif
   3380 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   3381 	{CLASS_BIT+0,CLASS_BIT+3,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,183},
   3382 
   3383 /* 1000 0011 ssss dddd *** sub rd,rs */
   3384 {
   3385 #ifdef NICENAMES
   3386 "sub rd,rs",16,4,0x3c,
   3387 #endif
   3388 "sub",OPC_sub,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   3389 	{CLASS_BIT+8,CLASS_BIT+3,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,183},
   3390 
   3391 /* 0000 0010 ssN0 dddd *** subb rbd,@rs */
   3392 {
   3393 #ifdef NICENAMES
   3394 "subb rbd,@rs",8,7,0x3f,
   3395 #endif
   3396 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
   3397 	{CLASS_BIT+0,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,184},
   3398 
   3399 /* 0100 0010 0000 dddd address_src *** subb rbd,address_src */
   3400 {
   3401 #ifdef NICENAMES
   3402 "subb rbd,address_src",8,9,0x3f,
   3403 #endif
   3404 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
   3405 	{CLASS_BIT+4,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,184},
   3406 
   3407 /* 0100 0010 ssN0 dddd address_src *** subb rbd,address_src(rs) */
   3408 {
   3409 #ifdef NICENAMES
   3410 "subb rbd,address_src(rs)",8,10,0x3f,
   3411 #endif
   3412 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
   3413 	{CLASS_BIT+4,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,184},
   3414 
   3415 /* 0000 0010 0000 dddd imm8 imm8 *** subb rbd,imm8 */
   3416 {
   3417 #ifdef NICENAMES
   3418 "subb rbd,imm8",8,7,0x3f,
   3419 #endif
   3420 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3421 	{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,184},
   3422 
   3423 /* 1000 0010 ssss dddd *** subb rbd,rbs */
   3424 {
   3425 #ifdef NICENAMES
   3426 "subb rbd,rbs",8,4,0x3f,
   3427 #endif
   3428 "subb",OPC_subb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   3429 	{CLASS_BIT+8,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,184},
   3430 
   3431 /* 0001 0010 ssN0 dddd *** subl rrd,@rs */
   3432 {
   3433 #ifdef NICENAMES
   3434 "subl rrd,@rs",32,14,0x3c,
   3435 #endif
   3436 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IR+(ARG_RS),},
   3437 	{CLASS_BIT+1,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,185},
   3438 
   3439 /* 0101 0010 0000 dddd address_src *** subl rrd,address_src */
   3440 {
   3441 #ifdef NICENAMES
   3442 "subl rrd,address_src",32,15,0x3c,
   3443 #endif
   3444 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_DA+(ARG_SRC),},
   3445 	{CLASS_BIT+5,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,185},
   3446 
   3447 /* 0101 0010 ssN0 dddd address_src *** subl rrd,address_src(rs) */
   3448 {
   3449 #ifdef NICENAMES
   3450 "subl rrd,address_src(rs)",32,16,0x3c,
   3451 #endif
   3452 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_X+(ARG_RS),},
   3453 	{CLASS_BIT+5,CLASS_BIT+2,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,185},
   3454 
   3455 /* 0001 0010 0000 dddd imm32 *** subl rrd,imm32 */
   3456 {
   3457 #ifdef NICENAMES
   3458 "subl rrd,imm32",32,14,0x3c,
   3459 #endif
   3460 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_IMM+(ARG_IMM32),},
   3461 	{CLASS_BIT+1,CLASS_BIT+2,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM32),0,0,0,0,},2,6,185},
   3462 
   3463 /* 1001 0010 ssss dddd *** subl rrd,rrs */
   3464 {
   3465 #ifdef NICENAMES
   3466 "subl rrd,rrs",32,8,0x3c,
   3467 #endif
   3468 "subl",OPC_subl,0,{CLASS_REG_LONG+(ARG_RD),CLASS_REG_LONG+(ARG_RS),},
   3469 	{CLASS_BIT+9,CLASS_BIT+2,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,185},
   3470 
   3471 /* 1010 1111 dddd cccc *** tcc cc,rd */
   3472 {
   3473 #ifdef NICENAMES
   3474 "tcc cc,rd",16,5,0x00,
   3475 #endif
   3476 "tcc",OPC_tcc,0,{CLASS_CC,CLASS_REG_WORD+(ARG_RD),},
   3477 	{CLASS_BIT+0xa,CLASS_BIT+0xf,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,186},
   3478 
   3479 /* 1010 1110 dddd cccc *** tccb cc,rbd */
   3480 {
   3481 #ifdef NICENAMES
   3482 "tccb cc,rbd",8,5,0x00,
   3483 #endif
   3484 "tccb",OPC_tccb,0,{CLASS_CC,CLASS_REG_BYTE+(ARG_RD),},
   3485 	{CLASS_BIT+0xa,CLASS_BIT+0xe,CLASS_REG+(ARG_RD),CLASS_CC,0,0,0,0,0,},2,2,187},
   3486 
   3487 /* 0000 1101 ddN0 0100 *** test @rd */
   3488 {
   3489 #ifdef NICENAMES
   3490 "test @rd",16,8,0x18,
   3491 #endif
   3492 "test",OPC_test,0,{CLASS_IR+(ARG_RD),},
   3493 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,188},
   3494 
   3495 /* 0100 1101 0000 0100 address_dst *** test address_dst */
   3496 {
   3497 #ifdef NICENAMES
   3498 "test address_dst",16,11,0x00,
   3499 #endif
   3500 "test",OPC_test,0,{CLASS_DA+(ARG_DST),},
   3501 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,188},
   3502 
   3503 /* 0100 1101 ddN0 0100 address_dst *** test address_dst(rd) */
   3504 {
   3505 #ifdef NICENAMES
   3506 "test address_dst(rd)",16,12,0x00,
   3507 #endif
   3508 "test",OPC_test,0,{CLASS_X+(ARG_RD),},
   3509 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,188},
   3510 
   3511 /* 1000 1101 dddd 0100 *** test rd */
   3512 {
   3513 #ifdef NICENAMES
   3514 "test rd",16,7,0x00,
   3515 #endif
   3516 "test",OPC_test,0,{CLASS_REG_WORD+(ARG_RD),},
   3517 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,188},
   3518 
   3519 /* 0000 1100 ddN0 0100 *** testb @rd */
   3520 {
   3521 #ifdef NICENAMES
   3522 "testb @rd",8,8,0x1c,
   3523 #endif
   3524 "testb",OPC_testb,0,{CLASS_IR+(ARG_RD),},
   3525 	{CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,189},
   3526 
   3527 /* 0100 1100 0000 0100 address_dst *** testb address_dst */
   3528 {
   3529 #ifdef NICENAMES
   3530 "testb address_dst",8,11,0x1c,
   3531 #endif
   3532 "testb",OPC_testb,0,{CLASS_DA+(ARG_DST),},
   3533 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,189},
   3534 
   3535 /* 0100 1100 ddN0 0100 address_dst *** testb address_dst(rd) */
   3536 {
   3537 #ifdef NICENAMES
   3538 "testb address_dst(rd)",8,12,0x1c,
   3539 #endif
   3540 "testb",OPC_testb,0,{CLASS_X+(ARG_RD),},
   3541 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+4,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,189},
   3542 
   3543 /* 1000 1100 dddd 0100 *** testb rbd */
   3544 {
   3545 #ifdef NICENAMES
   3546 "testb rbd",8,7,0x1c,
   3547 #endif
   3548 "testb",OPC_testb,0,{CLASS_REG_BYTE+(ARG_RD),},
   3549 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+4,0,0,0,0,0,},1,2,189},
   3550 
   3551 /* 0001 1100 ddN0 1000 *** testl @rd */
   3552 {
   3553 #ifdef NICENAMES
   3554 "testl @rd",32,13,0x18,
   3555 #endif
   3556 "testl",OPC_testl,0,{CLASS_IR+(ARG_RD),},
   3557 	{CLASS_BIT+1,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,190},
   3558 
   3559 /* 0101 1100 0000 1000 address_dst *** testl address_dst */
   3560 {
   3561 #ifdef NICENAMES
   3562 "testl address_dst",32,16,0x18,
   3563 #endif
   3564 "testl",OPC_testl,0,{CLASS_DA+(ARG_DST),},
   3565 	{CLASS_BIT+5,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,190},
   3566 
   3567 /* 0101 1100 ddN0 1000 address_dst *** testl address_dst(rd) */
   3568 {
   3569 #ifdef NICENAMES
   3570 "testl address_dst(rd)",32,17,0x18,
   3571 #endif
   3572 "testl",OPC_testl,0,{CLASS_X+(ARG_RD),},
   3573 	{CLASS_BIT+5,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,190},
   3574 
   3575 /* 1001 1100 dddd 1000 *** testl rrd */
   3576 {
   3577 #ifdef NICENAMES
   3578 "testl rrd",32,13,0x18,
   3579 #endif
   3580 "testl",OPC_testl,0,{CLASS_REG_LONG+(ARG_RD),},
   3581 	{CLASS_BIT+9,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+8,0,0,0,0,0,},1,2,190},
   3582 
   3583 /* 1011 1000 ddN0 1000 0000 rrrr ssN0 0000 *** trdb @rd,@rs,rr */
   3584 {
   3585 #ifdef NICENAMES
   3586 "trdb @rd,@rs,rr",8,25,0x04,
   3587 #endif
   3588 "trdb",OPC_trdb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   3589 	{CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,191},
   3590 
   3591 /* 1011 1000 ddN0 1100 0000 rrrr ssN0 0000 *** trdrb @rd,@rs,rr */
   3592 {
   3593 #ifdef NICENAMES
   3594 "trdrb @rd,@rs,rr",8,25,0x04,
   3595 #endif
   3596 "trdrb",OPC_trdrb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   3597 	{CLASS_BIT+0xb,CLASS_BIT+8,CLASS_REGN0+(ARG_RD),CLASS_BIT+0xc,CLASS_BIT+0,CLASS_REG+(ARG_RR),CLASS_REGN0+(ARG_RS),CLASS_BIT+0,0,},3,4,192},
   3598 
   3599 /* 1011 1000 ddN0 0000 0000 rrrr ssN0 0000 *** trib @rd,@rs,rr */
   3600 {
   3601 #ifdef NICENAMES
   3602 "trib @rd,@rs,rr",8,25,0x04,
   3603 #endif
   3604 "trib",OPC_trib,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   3605 	{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,193},
   3606 
   3607 /* 1011 1000 ddN0 0100 0000 rrrr ssN0 0000 *** trirb @rd,@rs,rr */
   3608 {
   3609 #ifdef NICENAMES
   3610 "trirb @rd,@rs,rr",8,25,0x04,
   3611 #endif
   3612 "trirb",OPC_trirb,0,{CLASS_IR+(ARG_RD),CLASS_IR+(ARG_RS),CLASS_REG_WORD+(ARG_RR),},
   3613 	{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,194},
   3614 
   3615 /* 1011 1000 aaN0 1010 0000 rrrr bbN0 0000 *** trtdb @ra,@rb,rr */
   3616 {
   3617 #ifdef NICENAMES
   3618 "trtdb @ra,@rb,rr",8,25,0x14,
   3619 #endif
   3620 "trtdb",OPC_trtdb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
   3621 	{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,195},
   3622 
   3623 /* 1011 1000 aaN0 1110 0000 rrrr bbN0 1110 *** trtdrb @ra,@rb,rr */
   3624 {
   3625 #ifdef NICENAMES
   3626 "trtdrb @ra,@rb,rr",8,25,0x14,
   3627 #endif
   3628 "trtdrb",OPC_trtdrb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
   3629 	{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,196},
   3630 
   3631 /* 1011 1000 aaN0 0010 0000 rrrr bbN0 0000 *** trtib @ra,@rb,rr */
   3632 {
   3633 #ifdef NICENAMES
   3634 "trtib @ra,@rb,rr",8,25,0x14,
   3635 #endif
   3636 "trtib",OPC_trtib,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
   3637 	{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,197},
   3638 
   3639 /* 1011 1000 aaN0 0110 0000 rrrr bbN0 1110 *** trtirb @ra,@rb,rr */
   3640 {
   3641 #ifdef NICENAMES
   3642 "trtirb @ra,@rb,rr",8,25,0x14,
   3643 #endif
   3644 "trtirb",OPC_trtirb,0,{CLASS_IR+(ARG_RA),CLASS_IR+(ARG_RB),CLASS_REG_WORD+(ARG_RR),},
   3645 	{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,198},
   3646 
   3647 /* 0000 1101 ddN0 0110 *** tset @rd */
   3648 {
   3649 #ifdef NICENAMES
   3650 "tset @rd",16,11,0x08,
   3651 #endif
   3652 "tset",OPC_tset,0,{CLASS_IR+(ARG_RD),},
   3653 	{CLASS_BIT+0,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,199},
   3654 
   3655 /* 0100 1101 0000 0110 address_dst *** tset address_dst */
   3656 {
   3657 #ifdef NICENAMES
   3658 "tset address_dst",16,14,0x08,
   3659 #endif
   3660 "tset",OPC_tset,0,{CLASS_DA+(ARG_DST),},
   3661 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,199},
   3662 
   3663 /* 0100 1101 ddN0 0110 address_dst *** tset address_dst(rd) */
   3664 {
   3665 #ifdef NICENAMES
   3666 "tset address_dst(rd)",16,15,0x08,
   3667 #endif
   3668 "tset",OPC_tset,0,{CLASS_X+(ARG_RD),},
   3669 	{CLASS_BIT+4,CLASS_BIT+0xd,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,199},
   3670 
   3671 /* 1000 1101 dddd 0110 *** tset rd */
   3672 {
   3673 #ifdef NICENAMES
   3674 "tset rd",16,7,0x08,
   3675 #endif
   3676 "tset",OPC_tset,0,{CLASS_REG_WORD+(ARG_RD),},
   3677 	{CLASS_BIT+8,CLASS_BIT+0xd,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,199},
   3678 
   3679 /* 0000 1100 ddN0 0110 *** tsetb @rd */
   3680 {
   3681 #ifdef NICENAMES
   3682 "tsetb @rd",8,11,0x08,
   3683 #endif
   3684 "tsetb",OPC_tsetb,0,{CLASS_IR+(ARG_RD),},
   3685 	{CLASS_BIT+0,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,200},
   3686 
   3687 /* 0100 1100 0000 0110 address_dst *** tsetb address_dst */
   3688 {
   3689 #ifdef NICENAMES
   3690 "tsetb address_dst",8,14,0x08,
   3691 #endif
   3692 "tsetb",OPC_tsetb,0,{CLASS_DA+(ARG_DST),},
   3693 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_BIT+0,CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,200},
   3694 
   3695 /* 0100 1100 ddN0 0110 address_dst *** tsetb address_dst(rd) */
   3696 {
   3697 #ifdef NICENAMES
   3698 "tsetb address_dst(rd)",8,15,0x08,
   3699 #endif
   3700 "tsetb",OPC_tsetb,0,{CLASS_X+(ARG_RD),},
   3701 	{CLASS_BIT+4,CLASS_BIT+0xc,CLASS_REGN0+(ARG_RD),CLASS_BIT+6,CLASS_ADDRESS+(ARG_DST),0,0,0,0,},1,4,200},
   3702 
   3703 /* 1000 1100 dddd 0110 *** tsetb rbd */
   3704 {
   3705 #ifdef NICENAMES
   3706 "tsetb rbd",8,7,0x08,
   3707 #endif
   3708 "tsetb",OPC_tsetb,0,{CLASS_REG_BYTE+(ARG_RD),},
   3709 	{CLASS_BIT+8,CLASS_BIT+0xc,CLASS_REG+(ARG_RD),CLASS_BIT+6,0,0,0,0,0,},1,2,200},
   3710 
   3711 /* 0000 1001 ssN0 dddd *** xor rd,@rs */
   3712 {
   3713 #ifdef NICENAMES
   3714 "xor rd,@rs",16,7,0x18,
   3715 #endif
   3716 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IR+(ARG_RS),},
   3717 	{CLASS_BIT+0,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,201},
   3718 
   3719 /* 0100 1001 0000 dddd address_src *** xor rd,address_src */
   3720 {
   3721 #ifdef NICENAMES
   3722 "xor rd,address_src",16,9,0x18,
   3723 #endif
   3724 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_DA+(ARG_SRC),},
   3725 	{CLASS_BIT+4,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,201},
   3726 
   3727 /* 0100 1001 ssN0 dddd address_src *** xor rd,address_src(rs) */
   3728 {
   3729 #ifdef NICENAMES
   3730 "xor rd,address_src(rs)",16,10,0x18,
   3731 #endif
   3732 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_X+(ARG_RS),},
   3733 	{CLASS_BIT+4,CLASS_BIT+9,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,201},
   3734 
   3735 /* 0000 1001 0000 dddd imm16 *** xor rd,imm16 */
   3736 {
   3737 #ifdef NICENAMES
   3738 "xor rd,imm16",16,7,0x18,
   3739 #endif
   3740 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_IMM+(ARG_IMM16),},
   3741 	{CLASS_BIT+0,CLASS_BIT+9,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_IMM+(ARG_IMM16),0,0,0,0,},2,4,201},
   3742 
   3743 /* 1000 1001 ssss dddd *** xor rd,rs */
   3744 {
   3745 #ifdef NICENAMES
   3746 "xor rd,rs",16,4,0x18,
   3747 #endif
   3748 "xor",OPC_xor,0,{CLASS_REG_WORD+(ARG_RD),CLASS_REG_WORD+(ARG_RS),},
   3749 	{CLASS_BIT+8,CLASS_BIT+9,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,201},
   3750 
   3751 /* 0000 1000 ssN0 dddd *** xorb rbd,@rs */
   3752 {
   3753 #ifdef NICENAMES
   3754 "xorb rbd,@rs",8,7,0x1c,
   3755 #endif
   3756 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IR+(ARG_RS),},
   3757 	{CLASS_BIT+0,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,202},
   3758 
   3759 /* 0100 1000 0000 dddd address_src *** xorb rbd,address_src */
   3760 {
   3761 #ifdef NICENAMES
   3762 "xorb rbd,address_src",8,9,0x1c,
   3763 #endif
   3764 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_DA+(ARG_SRC),},
   3765 	{CLASS_BIT+4,CLASS_BIT+8,CLASS_BIT+0,CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,202},
   3766 
   3767 /* 0100 1000 ssN0 dddd address_src *** xorb rbd,address_src(rs) */
   3768 {
   3769 #ifdef NICENAMES
   3770 "xorb rbd,address_src(rs)",8,10,0x1c,
   3771 #endif
   3772 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_X+(ARG_RS),},
   3773 	{CLASS_BIT+4,CLASS_BIT+8,CLASS_REGN0+(ARG_RS),CLASS_REG+(ARG_RD),CLASS_ADDRESS+(ARG_SRC),0,0,0,0,},2,4,202},
   3774 
   3775 /* 0000 1000 0000 dddd imm8 imm8 *** xorb rbd,imm8 */
   3776 {
   3777 #ifdef NICENAMES
   3778 "xorb rbd,imm8",8,7,0x1c,
   3779 #endif
   3780 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_IMM+(ARG_IMM8),},
   3781 	{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,202},
   3782 
   3783 /* 1000 1000 ssss dddd *** xorb rbd,rbs */
   3784 {
   3785 #ifdef NICENAMES
   3786 "xorb rbd,rbs",8,4,0x1c,
   3787 #endif
   3788 "xorb",OPC_xorb,0,{CLASS_REG_BYTE+(ARG_RD),CLASS_REG_BYTE+(ARG_RS),},
   3789 	{CLASS_BIT+8,CLASS_BIT+8,CLASS_REG+(ARG_RS),CLASS_REG+(ARG_RD),0,0,0,0,0,},2,2,202},
   3790 
   3791 /* end marker */
   3792 {
   3793 #ifdef NICENAMES
   3794 NULL,0,0,
   3795 0,
   3796 #endif
   3797 NULL,0,0,{0,0,0,0},{0,0,0,0,0,0,0,0,0,0},0,0,0}
   3798 };
   3799 #endif
   3800