1 /* keywords.c - keyword tables for assembler */
2 
3 #include "syshead.h"
4 #include "const.h"
5 #include "type.h"
6 #include "globvar.h"
7 #include "opcode.h"
8 
9 /* --- start of keywords --- */
10 
11 /* registers */
12 /* the register code (internal to assembler) is given in 1 byte */
13 /* the "opcode" field is not used */
14 
15 PUBLIC char regs[] =
16 {
17 #ifdef I80386
18     2, 'B', 'P', BPREG, 0,
19     2, 'B', 'X', BXREG, 0,
20     2, 'D', 'I', DIREG, 0,
21     2, 'S', 'I', SIREG, 0,
22 
23     3, 'E', 'A', 'X', EAXREG, 0,
24     3, 'E', 'B', 'P', EBPREG, 0,
25     3, 'E', 'B', 'X', EBXREG, 0,
26     3, 'E', 'C', 'X', ECXREG, 0,
27     3, 'E', 'D', 'I', EDIREG, 0,
28     3, 'E', 'D', 'X', EDXREG, 0,
29     3, 'E', 'S', 'I', ESIREG, 0,
30     3, 'E', 'S', 'P', ESPREG, 0,
31 
32     2, 'A', 'X', AXREG, 0,
33     2, 'C', 'X', CXREG, 0,
34     2, 'D', 'X', DXREG, 0,
35     2, 'S', 'P', SPREG, 0,
36 
37     2, 'A', 'H', AHREG, 0,
38     2, 'A', 'L', ALREG, 0,
39     2, 'B', 'H', BHREG, 0,
40     2, 'B', 'L', BLREG, 0,
41     2, 'C', 'H', CHREG, 0,
42     2, 'C', 'L', CLREG, 0,
43     2, 'D', 'H', DHREG, 0,
44     2, 'D', 'L', DLREG, 0,
45 
46     2, 'C', 'S', CSREG, 0,
47     2, 'D', 'S', DSREG, 0,
48     2, 'E', 'S', ESREG, 0,
49     2, 'F', 'S', FSREG, 0,
50     2, 'G', 'S', GSREG, 0,
51     2, 'S', 'S', SSREG, 0,
52 
53     3, 'C', 'R', '0', CR0REG, 0,
54     3, 'C', 'R', '2', CR2REG, 0,
55     3, 'C', 'R', '3', CR3REG, 0,
56     3, 'D', 'R', '0', DR0REG, 0,
57     3, 'D', 'R', '1', DR1REG, 0,
58     3, 'D', 'R', '2', DR2REG, 0,
59     3, 'D', 'R', '3', DR3REG, 0,
60     3, 'D', 'R', '6', DR6REG, 0,
61     3, 'D', 'R', '7', DR7REG, 0,
62     3, 'T', 'R', '3', TR3REG, 0,
63     3, 'T', 'R', '4', TR4REG, 0,
64     3, 'T', 'R', '5', TR5REG, 0,
65     3, 'T', 'R', '6', TR6REG, 0,
66     3, 'T', 'R', '7', TR7REG, 0,
67 
68     2, 'S', 'T', ST0REG, 0,
69 #endif /* I80386 */
70 
71 #ifdef MC6809
72     1, 'A', AREG, 0,
73     1, 'B', BREG, 0,
74     2, 'C', 'C', CCREG, 0,
75     1, 'D', DREG, 0,
76     2, 'D', 'P', DPREG, 0,
77     2, 'P', 'C', PCREG, 0,
78     3, 'P', 'C', 'R', PCREG, 0,
79     1, 'S', SREG, 0,
80     1, 'U', UREG, 0,
81     1, 'X', XREG, 0,
82     1, 'Y', YREG, 0,
83 #endif
84     0				/* end of register list */
85 };
86 
87 #ifdef I80386
88 
89 /* type sizes */
90 /* the "opcode" field gives the type size */
91 
92 PUBLIC char typesizes[] =
93 {
94     4, 'B', 'Y', 'T', 'E', BYTEOP, 1,
95     5, 'D', 'W', 'O', 'R', 'D', DWORDOP, 4,
96     5, 'F', 'W', 'O', 'R', 'D', FWORDOP, 6,
97     3, 'F', 'A', 'R', FAROP, 0,
98     4, 'N', 'E', 'A', 'R', WORDOP, 2,
99     3, 'P', 'T', 'R', PTROP, 0,
100     5, 'P', 'W', 'O', 'R', 'D', PWORDOP, 6,
101     5, 'Q', 'W', 'O', 'R', 'D', QWORDOP, 8,
102     5, 'T', 'B', 'Y', 'T', 'E', TBYTEOP, 10,
103     4, 'W', 'O', 'R', 'D', WORDOP, 2,
104     0				/* end of typesize list */
105 };
106 
107 #endif
108 
109 /* ops */
110 /* the routine number is given in 1 byte */
111 /* the opcode is given in 1 byte (it is not used for pseudo-ops) */
112 
113 PUBLIC char ops[] =
114 {
115     /* pseudo-ops. The "opcode" field is unused and padded with a null byte */
116     /* conditionals - must be first */
117     4, 'E', 'L', 'S', 'E', ELSEOP, 0,
118     6, 'E', 'L', 'S', 'E', 'I', 'F', ELSEIFOP, 0,
119     7, 'E', 'L', 'S', 'E', 'I', 'F', 'C', ELSEIFCOP, 0,
120     5, 'E', 'N', 'D', 'I', 'F', ENDIFOP, 0,
121     2, 'I', 'F', IFOP, 0,
122     3, 'I', 'F', 'C', IFCOP, 0,
123 
124     /* unconditionals */
125     6, '.', 'A', 'L', 'I', 'G', 'N', ALIGNOP, 0,
126     6, '.', 'A', 'S', 'C', 'I', 'I', FCCOP, 0,
127     6, '.', 'A', 'S', 'C', 'I', 'Z', ASCIZOP, 0,
128     5, '.', 'B', 'L', 'K', 'B', RMBOP, 0,
129     5, '.', 'B', 'L', 'K', 'W', BLKWOP, 0,
130     5, 'B', 'L', 'O', 'C', 'K', BLOCKOP, 0,
131     4, '.', 'B', 'S', 'S', BSSOP, 0,
132     5, '.', 'B', 'Y', 'T', 'E', FCBOP, 0,
133     4, 'C', 'O', 'M', 'M', COMMOP, 0,
134     5, '.', 'C', 'O', 'M', 'M', COMMOP1, 0,
135     5, '.', 'D', 'A', 'T', 'A', DATAOP, 0,
136     6, '.', 'D', 'A', 'T', 'A', '1', FCBOP, 0,
137     6, '.', 'D', 'A', 'T', 'A', '2', FDBOP, 0,
138 #if SIZEOF_OFFSET_T > 2
139     6, '.', 'D', 'A', 'T', 'A', '4', FQBOP, 0,
140 #endif
141     2, 'D', 'B', FCBOP, 0,
142 #if SIZEOF_OFFSET_T > 2
143     2, 'D', 'D', FQBOP, 0,
144 #endif
145     7, '.', 'D', 'E', 'F', 'I', 'N', 'E', EXPORTOP, 0,
146     2, 'D', 'W', FDBOP, 0,
147     3, 'E', 'N', 'D', PROCEOFOP, 0,
148     4, 'E', 'N', 'D', 'B', ENDBOP, 0,
149     6, '.', 'E', 'N', 'T', 'E', 'R', ENTEROP, 0,
150     5, 'E', 'N', 'T', 'R', 'Y', ENTRYOP, 0,
151     3, 'E', 'Q', 'U', EQUOP, 0,
152     5, '.', 'E', 'V', 'E', 'N', EVENOP, 0,
153     6, 'E', 'X', 'P', 'O', 'R', 'T', EXPORTOP, 0,
154     6, 'E', 'X', 'T', 'E', 'R', 'N', IMPORTOP, 0,
155     7, '.', 'E', 'X', 'T', 'E', 'R', 'N', IMPORTOP, 0,
156     5, 'E', 'X', 'T', 'R', 'N', IMPORTOP, 0,
157     4, 'F', 'A', 'I', 'L', FAILOP, 0,
158     5, '.', 'F', 'A', 'I', 'L', FAILOP, 0,
159     3, 'F', 'C', 'B', FCBOP, 0,
160     3, 'F', 'C', 'C', FCCOP, 0,
161     3, 'F', 'D', 'B', FDBOP, 0,
162     3, 'G', 'E', 'T', GETOP, 0,
163     7, '.', 'G', 'L', 'O', 'B', 'A', 'L', GLOBLOP, 0,
164     6, '.', 'G', 'L', 'O', 'B', 'L', GLOBLOP, 0,
165     5, 'I', 'D', 'E', 'N', 'T', IDENTOP, 0,
166     6, 'I', 'M', 'P', 'O', 'R', 'T', IMPORTOP, 0,
167     7, 'I', 'N', 'C', 'L', 'U', 'D', 'E', GETOP, 0,
168     5, 'L', 'C', 'O', 'M', 'M', LCOMMOP, 0,
169     6, '.', 'L', 'C', 'O', 'M', 'M', LCOMMOP1, 0,
170     5, '.', 'L', 'I', 'S', 'T', LISTOP, 0,
171     3, 'L', 'O', 'C', LOCOP, 0,
172 #if SIZEOF_OFFSET_T > 2
173     5, '.', 'L', 'O', 'N', 'G', FQBOP, 0,
174 #endif
175     8, '.', 'M', 'A', 'C', 'L', 'I', 'S', 'T', MACLISTOP, 0,
176     5, 'M', 'A', 'C', 'R', 'O', MACROOP, 0,
177     4, '.', 'M', 'A', 'P', MAPOP, 0,
178     3, 'O', 'R', 'G', ORGOP, 0,
179     4, '.', 'O', 'R', 'G', ORGOP, 0,
180     6, 'P', 'U', 'B', 'L', 'I', 'C', EXPORTOP, 0,
181     3, 'R', 'M', 'B', RMBOP, 0,
182     4, '.', 'R', 'O', 'M', DATAOP, 0,
183     5, '.', 'S', 'E', 'C', 'T', SECTOP, 0,
184     3, 'S', 'E', 'T', SETOP, 0,
185     5, 'S', 'E', 'T', 'D', 'P', SETDPOP, 0,
186     6, '.', 'S', 'H', 'O', 'R', 'T', FDBOP, 0,
187     6, '.', 'S', 'P', 'A', 'C', 'E', RMBOP, 0,
188     5, '.', 'T', 'E', 'X', 'T', TEXTOP, 0,
189 #ifndef MC6809
190     5, 'U', 'S', 'E', '1', '6', USE16OP, 0,
191     5, 'U', 'S', 'E', '3', '2', USE32OP, 0,
192 #endif
193     5, '.', 'W', 'A', 'R', 'N', WARNOP, 0,
194     5, '.', 'W', 'O', 'R', 'D', FDBOP, 0,
195     6, '.', 'Z', 'E', 'R', 'O', 'W', BLKWOP, 0,
196 
197     /* hardware ops. The opcode field is now used */
198 #ifdef I80386
199     3, 'A', 'A', 'A', INHER, 0x37,
200     3, 'A', 'A', 'D', INHER_A, 0xD5,
201     3, 'A', 'A', 'M', INHER_A, 0xD4,
202     3, 'A', 'A', 'S', INHER, 0x3F,
203     3, 'A', 'D', 'C', GROUP1, 0x10,
204     3, 'A', 'D', 'D', GROUP1, 0x00,
205     3, 'A', 'N', 'D', GROUP1, 0x20,
206     4, 'A', 'R', 'P', 'L', EwGw, 0x63,
207     3, 'B', 'C', 'C', BCC, 0x73,
208     3, 'B', 'C', 'S', BCC, 0x72,
209     3, 'B', 'E', 'Q', BCC, 0x74,
210     3, 'B', 'G', 'E', BCC, 0x7D,
211     3, 'B', 'G', 'T', BCC, 0x7F,
212     3, 'B', 'H', 'I', BCC, 0x77,
213     4, 'B', 'H', 'I', 'S', BCC, 0x73,
214     3, 'B', 'L', 'E', BCC, 0x7E,
215     3, 'B', 'L', 'O', BCC, 0x72,
216     4, 'B', 'L', 'O', 'S', BCC, 0x76,
217     3, 'B', 'L', 'T', BCC, 0x7C,
218     3, 'B', 'M', 'I', BCC, 0x78,
219     3, 'B', 'N', 'E', BCC, 0x75,
220     5, 'B', 'O', 'U', 'N', 'D', GvMa, 0x62,
221     3, 'B', 'P', 'C', BCC, 0x7B,
222     3, 'B', 'P', 'L', BCC, 0x79,
223     3, 'B', 'P', 'S', BCC, 0x7A,
224     2, 'B', 'R', CALL, JMP_OPCODE,
225     3, 'B', 'V', 'C', BCC, 0x71,
226     3, 'B', 'V', 'S', BCC, 0x70,
227     4, 'C', 'A', 'L', 'L', CALL, JSR_OPCODE,
228     5, 'C', 'A', 'L', 'L', 'F', CALLI, 0x9A,
229     5, 'C', 'A', 'L', 'L', 'I', CALLI, 0x9A,
230     3, 'C', 'B', 'W', INHER16, 0x98,
231     3, 'C', 'L', 'C', INHER, 0xF8,
232     3, 'C', 'L', 'D', INHER, 0xFC,
233     3, 'C', 'L', 'I', INHER, 0xFA,
234     3, 'C', 'M', 'C', INHER, 0xF5,
235     3, 'C', 'M', 'P', GROUP1, CMP_OPCODE_BASE,
236     4, 'C', 'M', 'P', 'S', INHER, CMPSW_OPCODE,
237     5, 'C', 'M', 'P', 'S', 'B', INHER, CMPSB_OPCODE,
238     5, 'C', 'M', 'P', 'S', 'D', INHER32, CMPSW_OPCODE,
239     5, 'C', 'M', 'P', 'S', 'W', INHER16, CMPSW_OPCODE,
240     4, 'C', 'M', 'P', 'W', INHER16, CMPSW_OPCODE,
241     4, 'C', 'S', 'E', 'G', INHER, 0x2E,
242     3, 'C', 'W', 'D', INHER16, 0x99,
243     4, 'C', 'W', 'D', 'E', INHER32, 0x98,
244     3, 'C', 'D', 'Q', INHER32, 0x99,
245     3, 'D', 'A', 'A', INHER, 0x27,
246     3, 'D', 'A', 'S', INHER, 0x2F,
247     4, 'D', 'S', 'E', 'G', INHER, 0x3E,
248     3, 'D', 'E', 'C', INCDEC, 0x08,
249     3, 'D', 'I', 'V', DIVMUL, 0x30,
250     5, 'E', 'N', 'T', 'E', 'R', ENTER, 0xC8,
251     4, 'E', 'S', 'E', 'G', INHER, 0x26,
252     4, 'F', 'S', 'E', 'G', INHER, 0x64,
253     4, 'G', 'S', 'E', 'G', INHER, 0x65,
254     3, 'H', 'L', 'T', INHER, 0xF4,
255     4, 'I', 'D', 'I', 'V', DIVMUL, 0x38,
256     4, 'I', 'M', 'U', 'L', IMUL, 0x28,
257     2, 'I', 'N', IN, 0xEC,
258     3, 'I', 'N', 'C', INCDEC, 0x00,
259     3, 'I', 'N', 'S', INHER, 0x6D,
260     4, 'I', 'N', 'S', 'B', INHER, 0x6C,
261     4, 'I', 'N', 'S', 'D', INHER32, 0x6D,
262     4, 'I', 'N', 'S', 'W', INHER16, 0x6D,
263     3, 'I', 'N', 'T', INT, 0xCD,
264     4, 'I', 'N', 'T', 'O', INHER, 0xCE,
265     3, 'I', 'N', 'W', IN, 0xED,
266     4, 'I', 'R', 'E', 'T', INHER16, 0xCF,
267     5, 'I', 'R', 'E', 'T', 'D', INHER32, 0xCF,
268     1, 'J', CALL, JMP_SHORT_OPCODE,
269     2, 'J', 'A', JCC, 0x77,
270     3, 'J', 'A', 'E', JCC, 0x73,
271     2, 'J', 'B', JCC, 0x72,
272     3, 'J', 'B', 'E', JCC, 0x76,
273     2, 'J', 'C', JCC, 0x72,
274     4, 'J', 'C', 'X', 'E', JCXZ, 0x2,
275     4, 'J', 'C', 'X', 'Z', JCXZ, 0x2,
276     5, 'J', 'E', 'C', 'X', 'E', JCXZ, 0x4,
277     5, 'J', 'E', 'C', 'X', 'Z', JCXZ, 0x4,
278     2, 'J', 'E', JCC, 0x74,
279     2, 'J', 'G', JCC, 0x7F,
280     3, 'J', 'G', 'E', JCC, 0x7D,
281     2, 'J', 'L', JCC, 0x7C,
282     3, 'J', 'L', 'E', JCC, 0x7E,
283     3, 'J', 'M', 'P', CALL, JMP_SHORT_OPCODE,
284     4, 'J', 'M', 'P', 'F', CALLI, 0xEA,
285     4, 'J', 'M', 'P', 'I', CALLI, 0xEA,
286     3, 'J', 'N', 'A', JCC, 0x76,
287     4, 'J', 'N', 'A', 'E', JCC, 0x72,
288     3, 'J', 'N', 'B', JCC, 0x73,
289     4, 'J', 'N', 'B', 'E', JCC, 0x77,
290     3, 'J', 'N', 'C', JCC, 0x73,
291     3, 'J', 'N', 'E', JCC, 0x75,
292     3, 'J', 'N', 'G', JCC, 0x7E,
293     4, 'J', 'N', 'G', 'E', JCC, 0x7C,
294     3, 'J', 'N', 'L', JCC, 0x7D,
295     4, 'J', 'N', 'L', 'E', JCC, 0x7F,
296     3, 'J', 'N', 'O', JCC, 0x71,
297     3, 'J', 'N', 'P', JCC, 0x7B,
298     3, 'J', 'N', 'S', JCC, 0x79,
299     3, 'J', 'N', 'Z', JCC, 0x75,
300     2, 'J', 'O', JCC, 0x70,
301     2, 'J', 'P', JCC, 0x7A,
302     3, 'J', 'P', 'E', JCC, 0x7A,
303     3, 'J', 'P', 'O', JCC, 0x7B,
304     2, 'J', 'S', JCC, 0x78,
305     2, 'J', 'Z', JCC, 0x74,
306     4, 'L', 'A', 'H', 'F', INHER, 0x9F,
307     3, 'L', 'D', 'S', GvMp, 0xC5,
308     3, 'L', 'E', 'A', LEA, 0x8D,
309     5, 'L', 'E', 'A', 'V', 'E', INHER, 0xC9,
310     3, 'L', 'E', 'S', GvMp, 0xC4,
311     4, 'L', 'O', 'C', 'K', INHER, 0xF0,
312     4, 'L', 'O', 'D', 'B', INHER, 0xAC,
313     4, 'L', 'O', 'D', 'S', INHER, 0xAD,
314     5, 'L', 'O', 'D', 'S', 'B', INHER, 0xAC,
315     5, 'L', 'O', 'D', 'S', 'D', INHER32, 0xAD,
316     5, 'L', 'O', 'D', 'S', 'W', INHER16, 0xAD,
317     4, 'L', 'O', 'D', 'W', INHER16, 0xAD,
318     4, 'L', 'O', 'O', 'P', JCC, 0xE2,
319     5, 'L', 'O', 'O', 'P', 'E', JCC, 0xE1,
320     6, 'L', 'O', 'O', 'P', 'N', 'E', JCC, 0xE0,
321     6, 'L', 'O', 'O', 'P', 'N', 'Z', JCC, 0xE0,
322     5, 'L', 'O', 'O', 'P', 'Z', JCC, 0xE1,
323     3, 'M', 'O', 'V', MOV, 0x88,
324     4, 'M', 'O', 'V', 'S', INHER, MOVSW_OPCODE,
325     5, 'M', 'O', 'V', 'S', 'B', INHER, MOVSB_OPCODE,
326     5, 'M', 'O', 'V', 'S', 'D', INHER32, MOVSW_OPCODE,
327     5, 'M', 'O', 'V', 'S', 'W', INHER16, MOVSW_OPCODE,
328     4, 'M', 'O', 'V', 'W', INHER16, MOVSW_OPCODE,
329     3, 'M', 'U', 'L', DIVMUL, 0x20,
330     3, 'N', 'E', 'G', NEGNOT, 0x18,
331     3, 'N', 'O', 'P', INHER, 0x90,
332     3, 'N', 'O', 'T', NEGNOT, 0x10,
333     2, 'O', 'R', GROUP1, 0x08,
334     3, 'O', 'U', 'T', OUT, 0xEE,
335     4, 'O', 'U', 'T', 'S', INHER, 0x6F,
336     5, 'O', 'U', 'T', 'S', 'B', INHER, 0x6E,
337     5, 'O', 'U', 'T', 'S', 'D', INHER32, 0x6F,
338     5, 'O', 'U', 'T', 'S', 'W', INHER16, 0x6F,
339     4, 'O', 'U', 'T', 'W', OUT, 0xEF,
340     3, 'P', 'O', 'P', PUSHPOP, POP_OPCODE,
341     4, 'P', 'O', 'P', 'A', INHER16, 0x61,
342     5, 'P', 'O', 'P', 'A', 'D', INHER32, 0x61,
343     4, 'P', 'O', 'P', 'F', INHER16, 0x9D,
344     5, 'P', 'O', 'P', 'F', 'D', INHER32, 0x9D,
345     4, 'P', 'U', 'S', 'H', PUSHPOP, PUSH_OPCODE,
346     5, 'P', 'U', 'S', 'H', 'A', INHER16, 0x60,
347     6, 'P', 'U', 'S', 'H', 'A', 'D', INHER32, 0x60,
348     5, 'P', 'U', 'S', 'H', 'F', INHER16, 0x9C,
349     6, 'P', 'U', 'S', 'H', 'F', 'D', INHER32, 0x9C,
350     3, 'R', 'C', 'L', GROUP2, 0x10,
351     3, 'R', 'C', 'R', GROUP2, 0x18,
352     3, 'R', 'O', 'L', GROUP2, 0x00,
353     3, 'R', 'O', 'R', GROUP2, 0x08,
354     3, 'R', 'E', 'P', INHER, 0xF3,
355     4, 'R', 'E', 'P', 'E', INHER, 0xF3,
356     5, 'R', 'E', 'P', 'N', 'E', INHER, 0xF2,
357     5, 'R', 'E', 'P', 'N', 'Z', INHER, 0xF2,
358     4, 'R', 'E', 'P', 'Z', INHER, 0xF3,
359     3, 'R', 'E', 'T', RET, 0xC3,
360     4, 'R', 'E', 'T', 'F', RET, 0xCB,
361     4, 'R', 'E', 'T', 'I', RET, 0xCB,
362     4, 'S', 'A', 'H', 'F', INHER, 0x9E,
363     3, 'S', 'A', 'L', GROUP2, 0x20,
364     3, 'S', 'A', 'R', GROUP2, 0x38,
365     3, 'S', 'B', 'B', GROUP1, 0x18,
366     4, 'S', 'C', 'A', 'B', INHER, 0xAE,
367     4, 'S', 'C', 'A', 'S', INHER, 0xAF,
368     5, 'S', 'C', 'A', 'S', 'B', INHER, 0xAE,
369     5, 'S', 'C', 'A', 'S', 'D', INHER32, 0xAF,
370     5, 'S', 'C', 'A', 'S', 'W', INHER16, 0xAF,
371     4, 'S', 'C', 'A', 'W', INHER16, 0xAF,
372     3, 'S', 'E', 'G', SEG, 0x06,
373     3, 'S', 'H', 'L', GROUP2, 0x20,
374     3, 'S', 'H', 'R', GROUP2, 0x28,
375     4, 'S', 'S', 'E', 'G', INHER, 0x36,
376     3, 'S', 'T', 'C', INHER, 0xF9,
377     3, 'S', 'T', 'D', INHER, 0xFD,
378     3, 'S', 'T', 'I', INHER, 0xFB,
379     4, 'S', 'T', 'O', 'B', INHER, 0xAA,
380     4, 'S', 'T', 'O', 'S', INHER, 0xAB,
381     5, 'S', 'T', 'O', 'S', 'B', INHER, 0xAA,
382     5, 'S', 'T', 'O', 'S', 'D', INHER32, 0xAB,
383     5, 'S', 'T', 'O', 'S', 'W', INHER16, 0xAB,
384     4, 'S', 'T', 'O', 'W', INHER16, 0xAB,
385     3, 'S', 'U', 'B', GROUP1, 0x28,
386     4, 'T', 'E', 'S', 'T', TEST, 0x84,
387     4, 'W', 'A', 'I', 'T', INHER, WAIT_OPCODE,
388     4, 'X', 'C', 'H', 'G', XCHG, 0x86,
389     4, 'X', 'L', 'A', 'T', INHER, 0xD7,
390     5, 'X', 'L', 'A', 'T', 'B', INHER, 0xD7,
391     3, 'X', 'O', 'R', GROUP1, 0x30,
392 
393     /* floating point */
394     5, 'F', '2', 'X', 'M', '1', F_INHER, 0x70,
395     4, 'F', 'A', 'B', 'S', F_INHER, 0x61,
396     4, 'F', 'A', 'D', 'D', F_M4_M8_STST, 0x00,
397     5, 'F', 'A', 'D', 'D', 'P', F_STST, 0x60,
398     4, 'F', 'B', 'L', 'D', F_M10, 0x74,
399     5, 'F', 'B', 'S', 'T', 'P', F_M10, 0x76,
400     4, 'F', 'C', 'H', 'S', F_INHER, 0x60,
401     5, 'F', 'C', 'L', 'E', 'X', F_W_INHER, 0xE2,
402     4, 'F', 'C', 'O', 'M', F_M4_M8_OPTST, 0x02,
403     5, 'F', 'C', 'O', 'M', 'P', F_M4_M8_OPTST, 0x03,
404     6, 'F', 'C', 'O', 'M', 'P', 'P', F_INHER, 0x19,
405     4, 'F', 'C', 'O', 'S', F_INHER, 0x7F,
406     7, 'F', 'D', 'E', 'C', 'S', 'T', 'P', F_INHER, 0x76,
407     5, 'F', 'D', 'I', 'S', 'I', F_W_INHER, 0xE1,
408     4, 'F', 'D', 'I', 'V', F_M4_M8_STST, 0x06,
409     5, 'F', 'D', 'I', 'V', 'P', F_STST, 0x67,
410     5, 'F', 'D', 'I', 'V', 'R', F_M4_M8_STST, 0x07,
411     6, 'F', 'D', 'I', 'V', 'R', 'P', F_STST, 0x66,
412     4, 'F', 'E', 'N', 'I', F_W_INHER, 0xE0,
413     5, 'F', 'F', 'R', 'E', 'E', F_ST, 0x50,
414     5, 'F', 'I', 'A', 'D', 'D', F_M2_M4, 0x20,
415     5, 'F', 'I', 'C', 'O', 'M', F_M2_M4, 0x22,
416     6, 'F', 'I', 'C', 'O', 'M', 'P', F_M2_M4, 0x23,
417     5, 'F', 'I', 'D', 'I', 'V', F_M2_M4, 0x26,
418     6, 'F', 'I', 'D', 'I', 'V', 'R', F_M2_M4, 0x27,
419     4, 'F', 'I', 'L', 'D', F_M2_M4_M8, 0x30,
420     5, 'F', 'I', 'M', 'U', 'L', F_M2_M4, 0x21,
421     7, 'F', 'I', 'N', 'C', 'S', 'T', 'P', F_INHER, 0x77,
422     5, 'F', 'I', 'N', 'I', 'T', F_W_INHER, 0xE3,
423     4, 'F', 'I', 'S', 'T', F_M2_M4, 0x32,
424     5, 'F', 'I', 'S', 'T', 'P', F_M2_M4_M8, 0x33,
425     5, 'F', 'I', 'S', 'U', 'B', F_M2_M4, 0x24,
426     6, 'F', 'I', 'S', 'U', 'B', 'R', F_M2_M4, 0x25,
427     3, 'F', 'L', 'D', F_M4_M8_M10_ST, 0x10,
428     4, 'F', 'L', 'D', '1', F_INHER, 0x68,
429     6, 'F', 'L', 'D', 'L', '2', 'E', F_INHER, 0x6A,
430     6, 'F', 'L', 'D', 'L', '2', 'T', F_INHER, 0x69,
431     5, 'F', 'L', 'D', 'C', 'W', F_M2, 0x15,
432     6, 'F', 'L', 'D', 'E', 'N', 'V', F_M, 0x14,
433     6, 'F', 'L', 'D', 'L', 'G', '2', F_INHER, 0x6C,
434     6, 'F', 'L', 'D', 'L', 'N', '2', F_INHER, 0x6D,
435     5, 'F', 'L', 'D', 'P', 'I', F_INHER, 0x6B,
436     4, 'F', 'L', 'D', 'Z', F_INHER, 0x6E,
437     4, 'F', 'M', 'U', 'L', F_M4_M8_STST, 0x01,
438     5, 'F', 'M', 'U', 'L', 'P', F_STST, 0x61,
439     6, 'F', 'N', 'C', 'L', 'E', 'X', F_INHER, 0xE2,
440     6, 'F', 'N', 'D', 'I', 'S', 'I', F_INHER, 0xE1,
441     5, 'F', 'N', 'E', 'N', 'I', F_INHER, 0xE0,
442     6, 'F', 'N', 'I', 'N', 'I', 'T', F_INHER, 0xE3,
443     4, 'F', 'N', 'O', 'P', F_INHER, 0x50,
444     6, 'F', 'N', 'S', 'A', 'V', 'E', F_M, 0x56,
445     6, 'F', 'N', 'S', 'T', 'C', 'W', F_M2, 0x17,
446     7, 'F', 'N', 'S', 'T', 'E', 'N', 'V', F_M, 0x16,
447     6, 'F', 'N', 'S', 'T', 'S', 'W', F_M2_AX, 0x57,
448     6, 'F', 'P', 'A', 'T', 'A', 'N', F_INHER, 0x73,
449     5, 'F', 'P', 'R', 'E', 'M', F_INHER, 0x78,
450     6, 'F', 'P', 'R', 'E', 'M', '1', F_INHER, 0x75,
451     5, 'F', 'P', 'T', 'A', 'N', F_INHER, 0x72,
452     7, 'F', 'R', 'N', 'D', 'I', 'N', 'T', F_INHER, 0x7C,
453     6, 'F', 'R', 'S', 'T', 'O', 'R', F_M, 0x54,
454     5, 'F', 'S', 'A', 'V', 'E', F_W_M, 0x56,
455     6, 'F', 'S', 'C', 'A', 'L', 'E', F_INHER, 0x7D,
456     6, 'F', 'S', 'E', 'T', 'P', 'M', F_INHER, 0xE4,
457     4, 'F', 'S', 'I', 'N', F_INHER, 0x7E,
458     7, 'F', 'S', 'I', 'N', 'C', 'O', 'S', F_INHER, 0x7B,
459     5, 'F', 'S', 'Q', 'R', 'T', F_INHER, 0x7A,
460     3, 'F', 'S', 'T', F_M4_M8_ST, FST_ENCODED,
461     5, 'F', 'S', 'T', 'C', 'W', F_W_M2, 0x17,
462     6, 'F', 'S', 'T', 'E', 'N', 'V', F_W_M, 0x16,
463     4, 'F', 'S', 'T', 'P', F_M4_M8_M10_ST, FSTP_ENCODED,
464     5, 'F', 'S', 'T', 'S', 'W', F_W_M2_AX, 0x57,
465     4, 'F', 'S', 'U', 'B', F_M4_M8_STST, 0x04,
466     5, 'F', 'S', 'U', 'B', 'P', F_STST, 0x65,
467     5, 'F', 'S', 'U', 'B', 'R', F_M4_M8_STST, 0x05,
468     6, 'F', 'S', 'U', 'B', 'R', 'P', F_STST, 0x64,
469     4, 'F', 'T', 'S', 'T', F_INHER, 0x64,
470     5, 'F', 'U', 'C', 'O', 'M', F_OPTST, 0x54,
471     6, 'F', 'U', 'C', 'O', 'M', 'P', F_OPTST, 0x55,
472     7, 'F', 'U', 'C', 'O', 'M', 'P', 'P', F_INHER, 0xA9,
473     5, 'F', 'W', 'A', 'I', 'T', INHER, WAIT_OPCODE,
474     4, 'F', 'X', 'A', 'M', F_INHER, 0x65,
475     4, 'F', 'X', 'C', 'H', F_OPTST, 0x11,
476     7, 'F', 'X', 'T', 'R', 'A', 'C', 'T', F_INHER, 0x74,
477     5, 'F', 'Y', 'L', '2', 'X', F_INHER, 0x71,
478     7, 'F', 'Y', 'L', '2', 'X', 'P', '1', F_INHER, 0x79,
479 #endif /* I80386 */
480 
481 #ifdef MC6809
482     3, 'A', 'B', 'X', INHER, 0x3A,
483     4, 'A', 'D', 'C', 'A', ALL, 0x89,
484     4, 'A', 'D', 'C', 'B', ALL, 0xC9,
485     4, 'A', 'D', 'D', 'A', ALL, 0x8B,
486     4, 'A', 'D', 'D', 'B', ALL, 0xCB,
487     4, 'A', 'D', 'D', 'D', ALL, 0xC3,
488     4, 'A', 'N', 'D', 'A', ALL, 0x84,
489     4, 'A', 'N', 'D', 'B', ALL, 0xC4,
490     5, 'A', 'N', 'D', 'C', 'C', IMMED, 0x1C,
491     3, 'A', 'S', 'L', ALTER, 0x08,
492     4, 'A', 'S', 'L', 'A', INHER, 0x48,
493     4, 'A', 'S', 'L', 'B', INHER, 0x58,
494     3, 'A', 'S', 'R', ALTER, 0x07,
495     4, 'A', 'S', 'R', 'A', INHER, 0x47,
496     4, 'A', 'S', 'R', 'B', INHER, 0x57,
497     3, 'B', 'C', 'C', SHORT, 0x24,
498     3, 'B', 'C', 'S', SHORT, 0x25,
499     3, 'B', 'E', 'Q', SHORT, 0x27,
500     3, 'B', 'G', 'E', SHORT, 0x2C,
501     3, 'B', 'G', 'T', SHORT, 0x2E,
502     3, 'B', 'H', 'I', SHORT, 0x22,
503     3, 'B', 'H', 'S', SHORT, 0x24,
504     4, 'B', 'I', 'T', 'A', ALL, 0X85,
505     4, 'B', 'I', 'T', 'B', ALL, 0XC5,
506     3, 'B', 'L', 'E', SHORT, 0x2F,
507     3, 'B', 'L', 'O', SHORT, 0x25,
508     3, 'B', 'L', 'S', SHORT, 0x23,
509     3, 'B', 'L', 'T', SHORT, 0x2D,
510     3, 'B', 'M', 'I', SHORT, 0x2B,
511     3, 'B', 'N', 'E', SHORT, 0x26,
512     3, 'B', 'P', 'L', SHORT, 0x2A,
513     3, 'B', 'R', 'A', SHORT, 0x20,
514     4, 'L', 'B', 'R', 'A', LONG, 0x16,
515     3, 'B', 'R', 'N', SHORT, 0x21,
516     3, 'B', 'S', 'R', SHORT, 0x8D,
517     4, 'L', 'B', 'S', 'R', LONG, 0x17,
518     3, 'B', 'V', 'C', SHORT, 0x28,
519     3, 'B', 'V', 'S', SHORT, 0x29,
520     3, 'C', 'L', 'R', ALTER, 0x0F,
521     4, 'C', 'L', 'R', 'A', INHER, 0x4F,
522     4, 'C', 'L', 'R', 'B', INHER, 0x5F,
523     4, 'C', 'M', 'P', 'A', ALL, 0x81,
524     4, 'C', 'M', 'P', 'B', ALL, 0xC1,
525     4, 'C', 'M', 'P', 'X', ALL, 0x8C,
526     3, 'C', 'O', 'M', ALTER, 0x03,
527     4, 'C', 'O', 'M', 'A', INHER, 0x43,
528     4, 'C', 'O', 'M', 'B', INHER, 0x53,
529     4, 'C', 'W', 'A', 'I', IMMED, 0x3C,
530     3, 'D', 'A', 'A', INHER, 0x19,
531     3, 'D', 'E', 'C', ALTER, 0x0A,
532     4, 'D', 'E', 'C', 'A', INHER, 0x4A,
533     4, 'D', 'E', 'C', 'B', INHER, 0x5A,
534     4, 'E', 'O', 'R', 'A', ALL, 0x88,
535     4, 'E', 'O', 'R', 'B', ALL, 0xC8,
536     3, 'E', 'X', 'G', SWAP, 0x1E,
537     3, 'I', 'N', 'C', ALTER, 0x0C,
538     4, 'I', 'N', 'C', 'A', INHER, 0x4C,
539     4, 'I', 'N', 'C', 'B', INHER, 0x5C,
540     3, 'J', 'M', 'P', ALTER, 0x0E,
541     3, 'J', 'S', 'R', ALTER, 0x8D,
542     3, 'L', 'D', 'A', ALL, 0x86,
543     3, 'L', 'D', 'B', ALL, 0xC6,
544     3, 'L', 'D', 'D', ALL, 0xCC,
545     3, 'L', 'D', 'U', ALL, 0xCE,
546     3, 'L', 'D', 'X', ALL, 0x8E,
547     4, 'L', 'E', 'A', 'S', INDEXD, 0x32,
548     4, 'L', 'E', 'A', 'U', INDEXD, 0x33,
549     4, 'L', 'E', 'A', 'X', INDEXD, 0x30,
550     4, 'L', 'E', 'A', 'Y', INDEXD, 0x31,
551     3, 'L', 'S', 'L', ALTER, 0x08,
552     4, 'L', 'S', 'L', 'A', INHER, 0x48,
553     4, 'L', 'S', 'L', 'B', INHER, 0x58,
554     3, 'L', 'S', 'R', ALTER, 0x04,
555     4, 'L', 'S', 'R', 'A', INHER, 0x44,
556     4, 'L', 'S', 'R', 'B', INHER, 0x54,
557     3, 'M', 'U', 'L', INHER, 0x3D,
558     3, 'N', 'E', 'G', ALTER, 0x00,
559     4, 'N', 'E', 'G', 'A', INHER, 0x40,
560     4, 'N', 'E', 'G', 'B', INHER, 0x50,
561     3, 'N', 'O', 'P', INHER, 0x12,
562     3, 'O', 'R', 'A', ALL, 0x8A,
563     3, 'O', 'R', 'B', ALL, 0xCA,
564     4, 'O', 'R', 'C', 'C', IMMED, 0x1A,
565     4, 'P', 'S', 'H', 'S', SSTAK, 0x34,
566     4, 'P', 'S', 'H', 'U', USTAK, 0x36,
567     4, 'P', 'U', 'L', 'S', SSTAK, 0x35,
568     4, 'P', 'U', 'L', 'U', USTAK, 0x37,
569     3, 'R', 'O', 'L', ALTER, 0x09,
570     4, 'R', 'O', 'L', 'A', INHER, 0x49,
571     4, 'R', 'O', 'L', 'B', INHER, 0x59,
572     3, 'R', 'O', 'R', ALTER, 0x06,
573     4, 'R', 'O', 'R', 'A', INHER, 0x46,
574     4, 'R', 'O', 'R', 'B', INHER, 0x56,
575     3, 'R', 'T', 'I', INHER, 0x3B,
576     3, 'R', 'T', 'S', INHER, 0x39,
577     4, 'S', 'B', 'C', 'A', ALL, 0x82,
578     4, 'S', 'B', 'C', 'B', ALL, 0xC2,
579     3, 'S', 'E', 'X', INHER, 0x1D,
580     3, 'S', 'T', 'A', ALTER, 0x87,
581     3, 'S', 'T', 'B', ALTER, 0xC7,
582     3, 'S', 'T', 'D', ALTER, 0xCD,
583     3, 'S', 'T', 'U', ALTER, 0xCF,
584     3, 'S', 'T', 'X', ALTER, 0x8F,
585     4, 'S', 'U', 'B', 'A', ALL, 0x80,
586     4, 'S', 'U', 'B', 'B', ALL, 0xC0,
587     4, 'S', 'U', 'B', 'D', ALL, 0x83,
588     3, 'S', 'W', 'I', INHER, 0x3F,
589     4, 'S', 'Y', 'N', 'C', INHER, 0x13,
590     3, 'T', 'F', 'R', SWAP, 0x1F,
591     3, 'T', 'S', 'T', ALTER, 0x0D,
592     4, 'T', 'S', 'T', 'A', INHER, 0x4D,
593     4, 'T', 'S', 'T', 'B', INHER, 0x5D,
594 #endif /* MC6809 */
595     0				/* end of ops */
596 };
597 
598 PUBLIC char page1ops[] =
599 {
600 #ifdef I80386
601     3, 'B', 'S', 'F', GvEv, 0xBC,
602     3, 'B', 'S', 'R', GvEv, 0xBD,
603     5, 'B', 'S', 'W', 'A', 'P', BSWAP, 0xC8,
604     2, 'B', 'T', GROUP8, 0x20,
605     3, 'B', 'T', 'C', GROUP8, 0x38,
606     3, 'B', 'T', 'R', GROUP8, 0x30,
607     3, 'B', 'T', 'S', GROUP8, 0x28,
608     4, 'C', 'L', 'T', 'S', INHER, 0x06,
609     7, 'C', 'M', 'P', 'X', 'C', 'H', 'G', ExGx, 0xA6,
610     4, 'I', 'N', 'V', 'D', INHER, 0x08,
611     6, 'I', 'N', 'V', 'L', 'P', 'G', GROUP7, 0x38,
612     3, 'L', 'A', 'R', GvEv, 0x02,
613     3, 'L', 'F', 'S', GvMp, 0xB4,
614     4, 'L', 'G', 'D', 'T', GROUP7, 0x10,
615     3, 'L', 'G', 'S', GvMp, 0xB5,
616     4, 'L', 'I', 'D', 'T', GROUP7, 0x18,
617     4, 'L', 'L', 'D', 'T', GROUP6, 0x10,
618     4, 'L', 'M', 'S', 'W', GROUP7, 0x30,
619     3, 'L', 'S', 'L', GvEv, 0x03,
620     3, 'L', 'S', 'S', GvMp, 0xB2,
621     3, 'L', 'T', 'R', GROUP6, 0x18,
622     5, 'M', 'O', 'V', 'S', 'X', MOVX, 0xBE,
623     5, 'M', 'O', 'V', 'Z', 'X', MOVX, 0xB6,
624     5, 'R', 'D', 'M', 'S', 'R', INHER, 0x32,
625     4, 'S', 'E', 'T', 'A', SETCC, 0x97,
626     5, 'S', 'E', 'T', 'A', 'E', SETCC, 0x93,
627     4, 'S', 'E', 'T', 'B', SETCC, 0x92,
628     5, 'S', 'E', 'T', 'B', 'E', SETCC, 0x96,
629     4, 'S', 'E', 'T', 'C', SETCC, 0x92,
630     4, 'S', 'E', 'T', 'E', SETCC, 0x94,
631     4, 'S', 'E', 'T', 'G', SETCC, 0x9F,
632     5, 'S', 'E', 'T', 'G', 'E', SETCC, 0x9D,
633     4, 'S', 'E', 'T', 'L', SETCC, 0x9C,
634     5, 'S', 'E', 'T', 'L', 'E', SETCC, 0x9E,
635     5, 'S', 'E', 'T', 'N', 'A', SETCC, 0x96,
636     6, 'S', 'E', 'T', 'N', 'A', 'E', SETCC, 0x92,
637     5, 'S', 'E', 'T', 'N', 'B', SETCC, 0x93,
638     6, 'S', 'E', 'T', 'N', 'B', 'E', SETCC, 0x97,
639     5, 'S', 'E', 'T', 'N', 'C', SETCC, 0x93,
640     5, 'S', 'E', 'T', 'N', 'E', SETCC, 0x95,
641     5, 'S', 'E', 'T', 'N', 'G', SETCC, 0x9E,
642     6, 'S', 'E', 'T', 'N', 'G', 'E', SETCC, 0x9C,
643     5, 'S', 'E', 'T', 'N', 'L', SETCC, 0x9D,
644     6, 'S', 'E', 'T', 'N', 'L', 'E', SETCC, 0x9F,
645     5, 'S', 'E', 'T', 'N', 'O', SETCC, 0x91,
646     5, 'S', 'E', 'T', 'N', 'P', SETCC, 0x9B,
647     5, 'S', 'E', 'T', 'N', 'S', SETCC, 0x99,
648     5, 'S', 'E', 'T', 'N', 'Z', SETCC, 0x95,
649     4, 'S', 'E', 'T', 'O', SETCC, 0x90,
650     4, 'S', 'E', 'T', 'P', SETCC, 0x9A,
651     5, 'S', 'E', 'T', 'P', 'E', SETCC, 0x9A,
652     5, 'S', 'E', 'T', 'P', 'O', SETCC, 0x9B,
653     4, 'S', 'E', 'T', 'S', SETCC, 0x98,
654     4, 'S', 'E', 'T', 'Z', SETCC, 0x94,
655     4, 'S', 'G', 'D', 'T', GROUP7, 0x00,
656     4, 'S', 'I', 'D', 'T', GROUP7, 0x08,
657     4, 'S', 'H', 'L', 'D', SH_DOUBLE, 0xA4,
658     4, 'S', 'H', 'R', 'D', SH_DOUBLE, 0xAC,
659     4, 'S', 'L', 'D', 'T', GROUP6, 0x00,
660     4, 'S', 'M', 'S', 'W', GROUP7, 0x20,
661     3, 'S', 'T', 'R', GROUP6, 0x08,
662     4, 'V', 'E', 'R', 'R', GROUP6, 0x20,
663     4, 'V', 'E', 'R', 'W', GROUP6, 0x28,
664     6, 'W', 'B', 'I', 'N', 'V', 'D', INHER, 0x09,
665     5, 'W', 'R', 'M', 'S', 'R', INHER, 0x30,
666     4, 'X', 'A', 'D', 'D', ExGx, 0xC0,
667 #endif /* I80386 */
668 
669 #ifdef MC6809
670     4, 'L', 'B', 'C', 'C', LONG, 0x24,
671     4, 'L', 'B', 'C', 'S', LONG, 0x25,
672     4, 'L', 'B', 'E', 'Q', LONG, 0x27,
673     4, 'L', 'B', 'G', 'E', LONG, 0x2C,
674     4, 'L', 'B', 'G', 'T', LONG, 0x2E,
675     4, 'L', 'B', 'H', 'I', LONG, 0x22,
676     4, 'L', 'B', 'H', 'S', LONG, 0x24,
677     4, 'L', 'B', 'L', 'E', LONG, 0x2F,
678     4, 'L', 'B', 'L', 'O', LONG, 0x25,
679     4, 'L', 'B', 'L', 'S', LONG, 0x23,
680     4, 'L', 'B', 'L', 'T', LONG, 0x2D,
681     4, 'L', 'B', 'M', 'I', LONG, 0x2B,
682     4, 'L', 'B', 'N', 'E', LONG, 0x26,
683     4, 'L', 'B', 'P', 'L', LONG, 0x2A,
684     4, 'L', 'B', 'R', 'N', LONG, 0x21,
685     4, 'L', 'B', 'V', 'C', LONG, 0x28,
686     4, 'L', 'B', 'V', 'S', LONG, 0x29,
687     4, 'C', 'M', 'P', 'D', ALL, 0x83,
688     4, 'C', 'M', 'P', 'Y', ALL, 0x8C,
689     3, 'L', 'D', 'S', ALL, 0xCE,
690     3, 'L', 'D', 'Y', ALL, 0x8E,
691     3, 'S', 'T', 'S', ALTER, 0xCF,
692     3, 'S', 'T', 'Y', ALTER, 0x8F,
693     4, 'S', 'W', 'I', '2', INHER, 0x3F,
694 #endif /* MC6809 */
695     0				/* end of page 1 ops */
696 };
697 
698 PUBLIC char page2ops[] =
699 {
700 #ifdef MC6809
701     4, 'C', 'M', 'P', 'S', ALL, 0x8C,
702     4, 'C', 'M', 'P', 'U', ALL, 0x83,
703     4, 'S', 'W', 'I', '3', INHER, 0x3F,
704 #endif
705     0				/* end of page 2 ops */
706 };
707 
708 #ifdef I80386
709 # ifdef MNSIZE
710 PUBLIC char bytesizeops[] =
711 {
712     4, 'A', 'D', 'C', 'B', GROUP1, 0x10,
713     4, 'A', 'D', 'D', 'B', GROUP1, 0x00,
714     4, 'A', 'N', 'D', 'B', GROUP1, 0x20,
715     4, 'C', 'M', 'P', 'B', GROUP1, CMP_OPCODE_BASE,
716     4, 'D', 'E', 'C', 'B', INCDEC, 0x08,
717     4, 'D', 'I', 'V', 'B', DIVMUL, 0x30,
718     5, 'I', 'D', 'I', 'V', 'B', DIVMUL, 0x38,
719     5, 'I', 'M', 'U', 'L', 'B', IMUL, 0x28,
720     3, 'I', 'N', 'B', IN, 0xEC,
721     4, 'I', 'N', 'C', 'B', INCDEC, 0x00,
722     4, 'M', 'O', 'V', 'B', MOV, 0x88,
723     4, 'M', 'U', 'L', 'B', DIVMUL, 0x20,
724     4, 'N', 'E', 'G', 'B', NEGNOT, 0x18,
725     4, 'N', 'O', 'T', 'B', NEGNOT, 0x10,
726     3, 'O', 'R', 'B', GROUP1, 0x08,
727     4, 'O', 'U', 'T', 'B', OUT, 0xEE,
728     4, 'R', 'C', 'L', 'B', GROUP2, 0x10,
729     4, 'R', 'C', 'R', 'B', GROUP2, 0x18,
730     4, 'R', 'O', 'L', 'B', GROUP2, 0x00,
731     4, 'R', 'O', 'R', 'B', GROUP2, 0x08,
732     4, 'S', 'A', 'L', 'B', GROUP2, 0x20,
733     4, 'S', 'A', 'R', 'B', GROUP2, 0x38,
734     4, 'S', 'H', 'L', 'B', GROUP2, 0x20,
735     4, 'S', 'H', 'R', 'B', GROUP2, 0x28,
736     4, 'S', 'B', 'B', 'B', GROUP1, 0x18,
737     4, 'S', 'U', 'B', 'B', GROUP1, 0x28,
738     5, 'T', 'E', 'S', 'T', 'B', TEST, 0x84,
739     5, 'X', 'C', 'H', 'G', 'B', XCHG, 0x86,
740     4, 'X', 'O', 'R', 'B', GROUP1, 0x30,
741     0				/* end of byte size ops */
742 };
743 # endif /* MNSIZE */
744 #endif /* I80386 */
745 
746 /* --- end of keywords --- */
747