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