xref: /original-bsd/old/as.vax/instrs (revision 3708840b)
1##
2##	Copyright (c) 1982 Regents of the University of California
3##	@(#)instrs 4.8 05/19/83
4##
5##	Robert R. Henry
6##	University of California, Berkeley
7##	Berkeley, CA
8##	February 6, 1982
9##
10##	Updated 19 May 83 to include the page number in the
11##	architecture reference manual (1981 edition) the instruction
12##	is documented on, and to enumerate the instructions in the same
13##	order as the reference manual does.
14##
15##	THIS FILE IS BOTH AN AWK SCRIPT AND THE DATA
16##
17##	Instruction definitions for the VAX
18##
19##	This file is processed by an awk script, viz:
20##	(echo "FLAVOR AS"; cat instrs) | awk -f instrs > as.instrs
21##	(echo "FLAVOR ADB"; cat instrs) | awk -f instrs > as.instrs
22##	(echo "FLAVOR SDB"; cat instrs) | awk -f instrs > as.instrs
23##	(echo "FLAVOR C2"; cat instrs) | awk -f instrs > c2.instrs
24##
25##	The data in this file is shared between:
26##	as	assembler
27##	c2	optimizer
28##	adb	debugger
29##	sdb	symbolic debugger
30##
31##	The awk script reads itself, and produces macros understood
32##	by the appropriate consumer. The awk script determines how
33##	to interpret the file by looking for a line of the form:
34##	FLAVOR	AS
35##	FLAVOR	ADB		(same as AS, but without pseudo instructions)
36##	FLAVOR	SDB		(same as ADB)
37##	FLAVOR	C2		(radically different format for instructions)
38##	and proceeding accordingly.  This line should be prepended to
39##	the front of this file.
40##
41##	Lines starting with # are always comments to awk
42##	Lines starting with ## are always comments
43##	Lines starting with a single # are data lines, to be output.
44##
45##	Empty lines are passed through
46##
47##	field	user(s)		what
48##
49##	$2	awk		#: comment to awk
50##
51##	$3	as, c2, adb	instruction name
52##
53##	$4	c2		instruction class
54##	$5	c2		instruction sub class
55##				HARD, TN1, TN2, TN3, TNX2, OP
56##
57##	$6	as, adb		escape opcode byte (NONE, NEW, ESCD, ESCF)
58##	$7	as, adb		primary opcode byte
59##
60##	$8	as, adb		number of arguments
61##	$9	as, adb		1st operand: access A,V,R,W,M,I,B
62##	$10	as, adb		1st operand: type, BWLQOFDGH
63##
64##	$11	as, adb		2nd operand: access
65##		...
66##
67##
68##	These are the definitions used in this file:
69##	instruction class (c2)
70##		understood only by c2.  If it is HARD, the second field
71##		is ignored.
72##	instruction subclass: (c2)
73##		HARD		paired with the class
74##		S		single valued attribute to C2
75##		TN1		class + type of 1st operand
76##		TN2		class + type of 2nd operand
77##		TN3		class + type of 3rd operand
78##		TNX2		class + type of 1st and 2nd operand
79##		OP		class + type of 1st operand and # of args
80##		default		class + subclass
81##
82##	escape byte:
83##		CORE		1 byte opcodes in all VAXen
84##		NEW		1 byte opcodes only in newer VAXen
85##		ESCD		2 byte opcodes, escape byte of 0xFD, newer VAXen
86##		ESCF		2 byte opcodes, escape byte of 0xFF, newer VAXen
87##	code byte
88##	number of arguments
89##	Access type
90##		A		for address, only in memory
91##		V		for address [sic], either in memory or register
92##		W		for writing
93##		R		for reading
94##		M		for modifying
95##		B		for branch displacement
96##		I		for xfc code
97##	Data types
98##		B	byte
99##		W	word
100##		L	long
101##		Q	quad
102##		O	octa
103##		F	f_float
104##		D	d_float
105##		G	g_float
106##		H	h_float
107##
108##	The order of instructions in this table is not critical;
109##	the clients take care of their own table construction and ordering.
110##	The instructions are grouped (more or less) into functional groups.
111##
112##	The following is the awk program to interpret this table.
113
114BEGIN{
115	flavor = AS;
116}
117{
118	if (NF == 0){
119		printf("\n");
120		next;
121	}
122	if ($1 == "FLAVOR"){
123		flavor = $2;
124		if (flavor == "SDB"){
125			flavor = "ADB";
126		}
127		next;
128	}
129	if ($1 != "#"){
130		next;
131	}
132
133	if ($6 == "MACR"){
134		if (flavor == "ADB"){
135			next;
136		}
137		if (flavor == "AS"){
138			if ($4 == "CBR")
139				$4 = "IJXXX";
140			printf("PSEUDO(\"%s\", %s, %s),\n", $3, $7, $4);
141			next;
142		}
143		if (flavor == "C2"){
144			if ($5 == "C2X")
145				next;
146			printf("\"%s\",", $3);
147			if ($4 == "CBR" && $5 != "JBR"){
148				printf("T(CBR,%s),\n", $5);
149			} else {
150				printf("%s,\n", $5);
151			}
152			next;
153		}
154	}
155
156	if (flavor == "C2"){
157		printf("\"%s\",", $3);
158		if ($4 == "HARD"){		# 0 value
159			printf("0,\n");
160			next;
161		}
162		if ($5 == "S"){			# single value
163			printf("%s,\n", $4);
164			next;
165		}
166		if ($5 == "TN1"){		# use type of 1st operand
167			printf("T(%s,TYP%s),\n", $4, $10);
168			next;
169		}
170		if ($5 == "TN3"){		# use type of 3rd operand
171			printf("T(%s,TYP%s),\n", $4, $14);
172			next;
173		}
174		if ($5 == "TNX2"){		# cross product of 1st and 2nd operand
175			printf("T(%s,U(TYP%s,TYP%s)),\n", $4, $10, $12);
176			next;
177		}
178		if ($5 == "OP"){		# arithmetic operator
179			printf("T(%s,U(TYP%s,OP%d)),\n", $4, $10, $8);
180			next;
181		}
182		printf("T(%s,%s),\n", $4, $5);	# special value
183		next;
184	}
185	if (flavor == "AS" || flavor == "ADB"){
186		printf("OP(\"%s\", %s, %s, %d", $3, $6, $7, $8);
187		for (i = 9; i+1 <= NF; i = i + 2){
188			printf(", A_%s%s", $i, $(i+1));
189		}
190		for (i = $8; i < 6; i++){
191			printf(",0");
192		}
193		printf("),\n");
194	}
195}
196##
197##-------------------------------------------------------
198##1 2		3     4  	5    6	        7  8 9
199##
200##
201## PSEUDO (MACR) operators come first
202
203## Data initializers
204
205# 000a .byte	IBYTE	C2X	MACR 0		VAR
206# 000b .word	IWORD	WGEN	MACR 0		VAR
207# 000c .int	IINT	LGEN	MACR 0		VAR
208# 000d .long	ILONG	LGEN	MACR 0		VAR
209# 000a .quad	IQUAD	C2X	MACR 0		VAR
210# 000a .octa	IOCTA	C2X	MACR 0		VAR
211# 000a .float	IFFLOAT	C2X	MACR 0		VAR
212# 000a .double	IDFLOAT	C2X	MACR 0		VAR
213# 000a .ffloat	IFFLOAT	C2X	MACR 0		VAR
214# 000a .dfloat	IDFLOAT	C2X	MACR 0		VAR
215# 000a .gfloat	IGFLOAT	C2X	MACR 0		VAR
216# 000a .hfloat	IHFLOAT	C2X	MACR 0		VAR
217# 000a .space	ISPACE	C2X	MACR 0		1
218# 000a .fill	IFILL	C2X	MACR 0		2
219# 000a .ascii	IASCII	C2X	MACR 0		VAR
220# 000a .asciz	IASCIZ	C2X	MACR 0		VAR
221
222# 000a .data	IDATA	DATA	MACR 0		1
223# 000a .text	ITEXT	TEXT	MACR 0		1
224# 000a .align	IALIGN	ALIGN	MACR 0		1
225
226# 000a .line	ILINENO	C2X	MACR 0		1
227# 000a .file	IFILE	C2X	MACR 0		1
228
229# 000a .globl	IGLOBAL	EROU	MACR 0		1
230# 000a .comm	ICOMM	COMM	MACR 0		2
231# 000a .lcomm	ILCOMM	LCOMM	MACR 0		2
232# 000a .set	ISET	SET	MACR 0		2
233# 000a .lsym	ILSYM	C2X	MACR 0		2
234# 000a .org	IORG	C2X	MACR 0		1
235
236# 000a .stab	ISTAB	C2X	MACR 0		6
237# 000a .stabd	ISTABDOT	C2X	MACR 0	3
238# 000a .stabn	ISTABNONE	C2X	MACR 0	3
239# 000a .stabs	ISTABSTR	C2X	MACR 0	3
240
241# 000a .ABORT	IABORT	C2X	MACR 0		0
242
243## Pseudo jumps
244
245# 000a jbc	CBR	JBC	MACR 0xe1	1	B B
246# 000a jlbc	CBR	JLBC	MACR 0xe9	1	B B
247# 000a jbs	CBR	JBS	MACR 0xe0	1	B B
248# 000a jlbs	CBR	JLBS	MACR 0xe8	1	B B
249# 000a jbcc	CBR	JBCC	MACR 0xe5	1	B B
250# 000a jbsc	CBR	JBSC	MACR 0xe4	1	B B
251# 000a jbcs	CBR	JBCS	MACR 0xe3	1	B B
252# 000a jbss	CBR	JBSS	MACR 0xe2	1	B B
253
254# 000a jbr	CBR	JBR	MACR 0x11	1	B B
255# 000a jcc	CBR	C2X	MACR 0x1e	1	B B
256# 000a jcs	CBR	C2X	MACR 0x1f	1	B B
257# 000a jvc	CBR	C2X	MACR 0x1c	1	B B
258# 000a jvs	CBR	C2X	MACR 0x1d	1	B B
259# 000a jlss	CBR	JLT	MACR 0x19	1	B B
260# 000a jlssu	CBR	JLO	MACR 0x1f	1	B B
261# 000a jleq	CBR	JLE	MACR 0x15	1	B B
262# 000a jlequ	CBR	JLOS	MACR 0x1b	1	B B
263# 000a jeql	CBR	JEQ	MACR 0x13	1	B B
264# 000a jeqlu	CBR	JEQ	MACR 0x13	1	B B
265# 000a jneq	CBR	JNE	MACR 0x12	1	B B
266# 000a jnequ	CBR	JNE	MACR 0x12	1	B B
267# 000a jgeq	CBR	JGE	MACR 0x18	1	B B
268# 000a jgequ	CBR	JHIS	MACR 0x1e	1	B B
269# 000a jgtr	CBR	JGT	MACR 0x14	1	B B
270# 000a jgtru	CBR	JHI	MACR 0x1a	1	B B
271##
272## Registers
273##
274# 000a r0	REG	C2X	MACR 0		0
275# 000a r1	REG	C2X	MACR 1		0
276# 000a r2	REG	C2X	MACR 2		0
277# 000a r3	REG	C2X	MACR 3		0
278# 000a r4	REG	C2X	MACR 4		0
279# 000a r5	REG	C2X	MACR 5		0
280# 000a r6	REG	C2X	MACR 6		0
281# 000a r7	REG	C2X	MACR 7		0
282# 000a r8	REG	C2X	MACR 8		0
283# 000a r9	REG	C2X	MACR 9		0
284# 000a r10	REG	C2X	MACR 10		0
285# 000a r11	REG	C2X	MACR 11		0
286# 000a r12	REG	C2X	MACR 12		0
287# 000a r13	REG	C2X	MACR 13		0
288# 000a r14	REG	C2X	MACR 14		0
289# 000a r15	REG	C2X	MACR 15		0
290# 000a ap	REG	C2X	MACR 12		0
291# 000a fp	REG	C2X	MACR 13		0
292# 000a sp	REG	C2X	MACR 14		0
293# 000a pc	REG	C2X	MACR 15		0
294
295## Normal instructions
296
297# 158a chmk	HARD HARD	CORE 0xbc	1  R W
298# 158b chme	HARD HARD	CORE 0xbd	1  R W
299# 158c chms	HARD HARD	CORE 0xbe	1  R W
300# 158d chmu	HARD HARD	CORE 0xbf	1  R W
301# 160a prober	PROBER TN1	CORE 0x0c	3  R B  R W  A B
302# 160a probew	PROBEW TN1	CORE 0x0d	3  R B  R W  A B
303# 161a rei	HARD HARD	CORE 0x02	0
304# 163a ldpctx	HARD HARD	CORE 0x06	0
305# 163b svpctx	HARD HARD	CORE 0x07	0
306# 165a mtpr	MTPR TN1	CORE 0xda	2  R L  R L
307# 165b mfpr	MFPR TN1	CORE 0xdb	2  R L  W L
308# 168a xfc	HARD HARD	CORE 0xfc	0
309# 169a bpt	HARD HARD	CORE 0x03	0
310# 170a bugw	HARD HARD	ESCF 0xfe	1  R W
311# 170b bugl	HARD HARD	ESCF 0xfd	1  R L
312# 171a halt	HARD HARD	CORE 0x00	0
313# 179a movb	MOV TN1		CORE 0x90	2  R B  W B
314# 179b movw	MOV TN1		CORE 0xb0	2  R W  W W
315# 179c movl	MOV TN1		CORE 0xd0	2  R L  W L
316# 179d movq	MOV TN1		CORE 0x7d	2  R Q  W Q
317# 179e movo	MOV TN1		ESCD 0x7d	2  R O  W O
318# 179f movf	MOV TN1		CORE 0x50	2  R F  W F
319# 179g movd	MOV TN1		CORE 0x70	2  R D  W D
320# 179h movg	MOV TN1		ESCD 0x50	2  R G  W G
321# 179i movh	MOV TN1		ESCD 0x70	2  R H  W H
322# 180a pushl	PUSH TN1	CORE 0xdd	1  R L
323# 181a clrb	CLR TN1		CORE 0x94	1  W B
324# 181b clrw	CLR TN1		CORE 0xb4	1  W W
325# 181c clrf	CLR TN1		CORE 0xd4	1  W F
326# 181c clrl	CLR TN1		CORE 0xd4	1  W L
327# 181d clrd	CLR TN1		CORE 0x7c	1  W D
328# 181d clrg	CLR TN1		CORE 0x7c	1  W G
329# 181d clrq	CLR TN1		CORE 0x7c	1  W Q
330# 181e clrh	CLR TN1		ESCD 0x7c	1  W H
331# 181e clro	CLR TN1		ESCD 0x7c	1  W O
332# 182a mnegb	NEG TN1		CORE 0x8e	2  R B  W B
333# 182b mnegw	NEG TN1		CORE 0xae	2  R W  W W
334# 182c mnegl	NEG TN1		CORE 0xce	2  R L  W L
335# 182d mnegf	NEG TN1		CORE 0x52	2  R F  W F
336# 182e mnegg	NEG TN1		ESCD 0x52	2  R G  W G
337# 182f mnegd	NEG TN1		CORE 0x72	2  R D  W D
338# 182g mnegh	NEG TN1		ESCD 0x72	2  R H  W H
339# 183a mcomb	COM TN1		CORE 0x92	2  R B  W B
340# 183b mcomw	COM TN1		CORE 0xb2	2  R W  W W
341# 183c mcoml	COM TN1		CORE 0xd2	2  R L  W L
342# 184A cvtbw	CVT TNX2	CORE 0x99	2  R B  W W
343# 184B cvtbl	CVT TNX2	CORE 0x98	2  R B  W L
344# 184C cvtwb	CVT TNX2	CORE 0x33	2  R W  W B
345# 184D cvtwl	CVT TNX2	CORE 0x32	2  R W  W L
346# 184E cvtlb	CVT TNX2	CORE 0xf6	2  R L  W B
347# 184F cvtlw	CVT TNX2	CORE 0xf7	2  R L  W W
348# 184G cvtbf	CVT TNX2	CORE 0x4c	2  R B  W F
349# 184H cvtbd	CVT TNX2	CORE 0x6c	2  R B  W D
350# 184I cvtbg	CVT TNX2	ESCD 0x4c	2  R B  W G
351# 184J cvtbh	CVT TNX2	ESCD 0x6c	2  R B  W H
352# 184K cvtwf	CVT TNX2	CORE 0x4d	2  R W  W F
353# 184L cvtwd	CVT TNX2	CORE 0x6d	2  R W  W D
354# 184M cvtwg	CVT TNX2	ESCD 0x4d	2  R W  W G
355# 184N cvtwh	CVT TNX2	ESCD 0x6d	2  R W  W H
356# 184O cvtlf	CVT TNX2	CORE 0x4e	2  R L  W F
357# 184P cvtld	CVT TNX2	CORE 0x6e	2  R L  W D
358# 184Q cvtlg	CVT TNX2	ESCD 0x4e	2  R L  W G
359# 184R cvtlh	CVT TNX2	ESCD 0x6e	2  R L  W H
360# 184S cvtfb	CVT TNX2	CORE 0x48	2  R F  W B
361# 184T cvtdb	CVT TNX2	CORE 0x68	2  R D  W B
362# 184U cvtgb	CVT TNX2	ESCD 0x48	2  R G  W B
363# 184V cvthb	CVT TNX2	ESCD 0x68	2  R H  W B
364# 184W cvtfw	CVT TNX2	CORE 0x49	2  R F  W W
365# 184X cvtdw	CVT TNX2	CORE 0x69	2  R D  W W
366# 184Y cvtgw	CVT TNX2	ESCD 0x49	2  R G  W W
367# 184Z cvthw	CVT TNX2	ESCD 0x69	2  R H  W W
368# 184a cvtfl	CVT TNX2	CORE 0x4a	2  R F  W L
369# 184b cvtrfl	CVT TNX2	CORE 0x4b	2  R F  W L
370# 184c cvtdl	CVT TNX2	CORE 0x6a	2  R D  W L
371# 184d cvtrdl	CVT TNX2	CORE 0x6b	2  R D  W L
372# 184e cvtgl	CVT TNX2	ESCD 0x4a	2  R G  W L
373# 184f cvtrgl	CVT TNX2	ESCD 0x4b	2  R G  W L
374# 184g cvthl	CVT TNX2	ESCD 0x6a	2  R H  W L
375# 184h cvtrhl	CVT TNX2	ESCD 0x6b	2  R H  W L
376# 184i cvtfd	CVT TNX2	CORE 0x56	2  R F  W D
377# 184j cvtfg	CVT TNX2	ESCD 0x99	2  R F  W G
378# 184k cvtfh	CVT TNX2	ESCD 0x98	2  R F  W H
379# 184l cvtdf	CVT TNX2	CORE 0x76	2  R D  W F
380# 184m cvtdh	CVT TNX2	ESCD 0x32	2  R D  W H
381# 184n cvtgf	CVT TNX2	ESCD 0x33	2  R G  W F
382# 184o cvtgh	CVT TNX2	ESCD 0x56	2  R G  W H
383# 184p cvthf	CVT TNX2	ESCD 0xf6	2  R H  W F
384# 184q cvthd	CVT TNX2	ESCD 0xf7	2  R H  W D
385# 184r cvthg	CVT TNX2	ESCD 0x76	2  R H  W G
386# 187a movzbw	MOVZ TNX2	CORE 0x9b	2  R B  W W
387# 187b movzbl	MOVZ TNX2	CORE 0x9a	2  R B  W L
388# 187c movzwl	MOVZ TNX2	CORE 0x3c	2  R W  W L
389# 188a cmpb	CMP TN1		CORE 0x91	2  R B  R B
390# 188b cmpw	CMP TN1		CORE 0xb1	2  R W  R W
391# 188c cmpl	CMP TN1		CORE 0xd1	2  R L  R L
392# 188d cmpf	CMP TN1		CORE 0x51	2  R F  R F
393# 188e cmpd	CMP TN1		CORE 0x71	2  R D  R D
394# 188f cmpg	CMP TN1		ESCD 0x51	2  R G  R G
395# 188g cmph	CMP TN1		ESCD 0x71	2  R H  R H
396# 189a incb	INC TN1		CORE 0x96	1  M B
397# 189b incw	INC TN1		CORE 0xb6	1  M W
398# 189c incl	INC TN1		CORE 0xd6	1  M L
399# 190a tstb	TST TN1		CORE 0x95	1  R B
400# 190b tstw	TST TN1		CORE 0xb5	1  R W
401# 190c tstl	TST TN1		CORE 0xd5	1  R L
402# 190d tstf	TST TN1		CORE 0x53	1  R F
403# 190e tstd	TST TN1		CORE 0x73	1  R D
404# 190g tstg	TST TN1		ESCD 0x53	1  R G
405# 190h tsth	TST TN1		ESCD 0x73	1  R H
406# 191a addb2	ADD OP		CORE 0x80	2  R B  M B
407# 191a addh2	ADD OP		ESCD 0x60	2  R H  M H
408# 191b addb3	ADD OP		CORE 0x81	3  R B  R B  W B
409# 191b addh3	ADD OP		ESCD 0x61	3  R H  R H  W H
410# 191c addw2	ADD OP		CORE 0xa0	2  R W  M W
411# 191d addw3	ADD OP		CORE 0xa1	3  R W  R W  W W
412# 191e addl2	ADD OP		CORE 0xc0	2  R L  M L
413# 191f addl3	ADD OP		CORE 0xc1	3  R L  R L  W L
414# 191g addf2	ADD OP		CORE 0x40	2  R F  M F
415# 191h addf3	ADD OP		CORE 0x41	3  R F  R F  W F
416# 191i addd2	ADD OP		CORE 0x60	2  R D  M D
417# 191j addd3	ADD OP		CORE 0x61	3  R D  R D  W D
418# 191k addg2	ADD OP		ESCD 0x40	2  R G  M G
419# 191l addg3	ADD OP		ESCD 0x41	3  R G  R G  W G
420# 193a adwc	HARD HARD	CORE 0xd8	2  R L  M L
421# 194a adawi	HARD HARD	CORE 0x58	2  R W  M W
422# 195c subb2	SUB OP		CORE 0x82	2  R B  M B
423# 195d subb3	SUB OP		CORE 0x83	3  R B  R B  W B
424# 195e subw2	SUB OP		CORE 0xa2	2  R W  M W
425# 195f subw3	SUB OP		CORE 0xa3	3  R W  R W  W W
426# 195g subl2	SUB OP		CORE 0xc2	2  R L  M L
427# 195h subl3	SUB OP		CORE 0xc3	3  R L  R L  W L
428# 195i subf2	SUB OP		CORE 0x42	2  R F  M F
429# 195j subf3	SUB OP		CORE 0x43	3  R F  R F  W F
430# 195k subd2	SUB OP		CORE 0x62	2  R D  M D
431# 195l subd3	SUB OP		CORE 0x63	3  R D  R D  W D
432# 195m subg2	SUB OP		ESCD 0x42	2  R G  M G
433# 195n subg3	SUB OP		ESCD 0x43	3  R G  R G  W G
434# 195o subh2	SUB OP		ESCD 0x62	2  R H  M H
435# 195p subh3	SUB OP		ESCD 0x63	3  R H  R H  W H
436# 197a decb	DEC TN1		CORE 0x97	1  M B
437# 197b decw	DEC TN1		CORE 0xb7	1  M W
438# 197c decl	DEC TN1		CORE 0xd7	1  M L
439# 198a sbwc	HARD HARD	CORE 0xd9	2  R L  M L
440# 199a mulb2	MUL OP		CORE 0x84	2  R B  M B
441# 199b mulb3	MUL OP		CORE 0x85	3  R B  R B  W B
442# 199c mulw2	MUL OP		CORE 0xa4	2  R W  M W
443# 199d mulw3	MUL OP		CORE 0xa5	3  R W  R W  W W
444# 199e mull2	MUL OP		CORE 0xc4	2  R L  M L
445# 199f mull3	MUL OP		CORE 0xc5	3  R L  R L  W L
446# 199g mulf2	MUL OP		CORE 0x44	2  R F  M F
447# 199h mulf3	MUL OP		CORE 0x45	3  R F  R F  W F
448# 199i muld2	MUL OP		CORE 0x64	2  R D  M D
449# 199j muld3	MUL OP		CORE 0x65	3  R D  R D  W D
450# 199k mulg2	MUL OP		ESCD 0x44	2  R G  M G
451# 199l mulg3	MUL OP		ESCD 0x45	3  R G  R G  W G
452# 199m mulh2	MUL OP		ESCD 0x64	2  R H  M H
453# 199n mulh3	MUL OP		ESCD 0x65	3  R H  R H  W H
454# 201a emodf	HARD HARD	CORE 0x54	5  R F  R B  R F  W L  W F
455# 201a emul	HARD HARD	CORE 0x7a	4  R L  R L  R L  W Q
456# 201b emodd	HARD HARD	CORE 0x74	5  R D  R B  R D  W L  W D
457# 201c emodg	HARD HARD	ESCD 0x54	5  R G  R W  R G  W L  W G
458# 201d emodh	HARD HARD	ESCD 0x74	5  R H  R W  R H  W L  W H
459# 204a divb2	DIV OP		CORE 0x86	2  R B  M B
460# 204b divb3	DIV OP		CORE 0x87	3  R B  R B  W B
461# 204c divw2	DIV OP		CORE 0xa6	2  R W  M W
462# 204d divw3	DIV OP		CORE 0xa7	3  R W  R W  W W
463# 204e divl2	DIV OP		CORE 0xc6	2  R L  M L
464# 204f divl3	DIV OP		CORE 0xc7	3  R L  R L  W L
465# 204g divf2	DIV OP		CORE 0x46	2  R F  M F
466# 204h divf3	DIV OP		CORE 0x47	3  R F  R F  W F
467# 204i divd2	DIV OP		CORE 0x66	2  R D  M D
468# 204j divd3	DIV OP		CORE 0x67	3  R D  R D  R D
469# 204k divg2	DIV OP		ESCD 0x46	2  R G  M G
470# 204l divg3	DIV OP		ESCD 0x47	3  R G  R G  W G
471# 204m divh2	DIV OP		ESCD 0x66	2  R H  M H
472# 204n divh3	DIV OP		ESCD 0x67	3  R H  R H  R H
473# 205a ediv	HARD HARD	CORE 0x7b	4  R L  R Q  W L  W L
474# 207a bitb	BIT TN1		CORE 0x93	2  R B  R B
475# 207a bitl	BIT TN1		CORE 0xd3	2  R L  R L
476# 207a bitw	BIT TN1		CORE 0xb3	2  R W  R W
477# 208a bisb2	BIS OP		CORE 0x88	2  R B  M B
478# 208b bisb3	BIS OP		CORE 0x89	3  R B  R B  W B
479# 208c bisw2	BIS OP		CORE 0xa8	2  R W  M W
480# 208d bisw3	BIS OP		CORE 0xa9	3  R W  R W  W W
481# 208e bisl2	BIS OP		CORE 0xc8	2  R L  M L
482# 208f bisl3	BIS OP		CORE 0xc9	3  R L  R L  W L
483# 209a bicb2	BIC OP		CORE 0x8a	2  R B  M B
484# 209b bicb3	BIC OP		CORE 0x8b	3  R B  R B  W B
485# 209c bicw2	BIC OP		CORE 0xaa	2  R W  M W
486# 209d bicw3	BIC OP		CORE 0xab	3  R W  R W  W W
487# 209e bicl2	BIC OP		CORE 0xca	2  R L  M L
488# 209f bicl3	BIC OP		CORE 0xcb	3  R L  R L  W L
489# 210a xorb2	XOR OP		CORE 0x8c	2  R B  M B
490# 210b xorb3	XOR OP		CORE 0x8d	3  R B  R B  W B
491# 210c xorw2	XOR OP		CORE 0xac	2  R W  M W
492# 210d xorw3	XOR OP		CORE 0xad	3  R W  R W  W W
493# 210e xorl2	XOR OP		CORE 0xcc	2  R L  M L
494# 210f xorl3	XOR OP		CORE 0xcd	3  R L  R L  W L
495# 211a ashl	ASH TN3		CORE 0x78	3  R B  R L  W L
496# 211b ashq	ASH TN3		CORE 0x79	3  R B  R Q  W Q
497# 212a rotl	HARD HARD	CORE 0x9c	3  R B  R L  W L
498# 214a polyf	HARD HARD	CORE 0x55	3  R F  R W  A B
499# 214b polyd	HARD HARD	CORE 0x75	3  R D  R W  A B
500# 214c polyg	HARD HARD	ESCD 0x55	3  R G  R W  A B
501# 214d polyh	HARD HARD	ESCD 0x75	3  R H  R W  A B
502# 220a pushr	HARD HARD	CORE 0xbb	1  R W
503# 221a popr	HARD HARD	CORE 0xba	1  R W
504# 222a movpsl	HARD HARD	CORE 0xdc	1  W L
505# 223a bispsw	HARD HARD	CORE 0xb8	1  R W
506# 223b bicpsw	HARD HARD	CORE 0xb9	1  R W
507# 224a movab	MOVA TN1	CORE 0x9e	2  A B  W L
508# 224a pushab	PUSHA TN1	CORE 0x9f	1  A B
509# 224b movaw	MOVA TN1	CORE 0x3e	2  A W  W L
510# 224b pushaw	PUSHA TN1	CORE 0x3f	1  A W
511# 224c movaf	MOVA TN1	CORE 0xde	2  A F  W L
512# 224c moval	MOVA TN1	CORE 0xde	2  A L  W L
513# 224c pushaf	PUSHA TN1	CORE 0xdf	1  A F
514# 224c pushal	PUSHA TN1	CORE 0xdf	1  A L
515# 224d pushad	PUSHA TN1	CORE 0x7f	1  A D
516# 224d pushag	PUSHA TN1	CORE 0x7f	1  A G
517# 224d pushaq	PUSHA TN1	CORE 0x7f	1  A Q
518# 224e pushah	PUSHA TN1	ESCD 0x7f	1  A H
519# 224e pushao	PUSHA TN1	ESCD 0x7f	1  A O
520# 224f movad	MOVA TN1	CORE 0x7e	2  A D  W L
521# 224f movag	MOVA TN1	CORE 0x7e	2  A G  W L
522# 224f movaq	MOVA TN1	CORE 0x7e	2  A Q  W L
523# 224g movah	MOVA TN1	ESCD 0x7e	2  A H  W L
524# 224g movao	MOVA TN1	ESCD 0x7e	2  A O  W L
525# 226a index	HARD HARD	CORE 0x0a	6  R L  R L  R L  R L  R L  W L
526# 232a insque	HARD HARD	CORE 0x0e	2  A B  A B
527# 234a remque	HARD HARD	CORE 0x0f	2  A B  W L
528# 240a insqhi	HARD HARD	NEW  0x5c	2  A B  A Q
529# 241a insqti	HARD HARD	NEW  0x5d	2  A B  A Q
530# 245a remqhi	HARD HARD	NEW  0x5e	2  A Q  W L
531# 248a remqti	HARD HARD	NEW  0x5f	2  A Q  W L
532# 251a ffc	HARD HARD	CORE 0xeb	4  R L  R B  V B  W L
533# 251b ffs	HARD HARD	CORE 0xea	4  R L  R B  V B  W L
534# 253a extv	EXTV TN1	CORE 0xee	4  R L  R B  V B  W L
535# 253b extzv	EXTZV TN1	CORE 0xef	4  R L  R B  V B  W L
536# 255a cmpv	HARD HARD	CORE 0xec	4  R L  R B  V B  R L
537# 255b cmpzv	HARD HARD	CORE 0xed	4  R L  R B  V B  R L
538# 257a insv	INSV -1		CORE 0xf0	4  R L  R L  R B  V B
539# 261a bneq	CBR JNE		CORE 0x12	1  B B
540# 261b bnequ	CBR JNE		CORE 0x12	1  B B
541# 261c beql	CBR JEQ		CORE 0x13	1  B B
542# 261d beqlu	CBR JEQ		CORE 0x13	1  B B
543# 261e bgtr	CBR JGT		CORE 0x14	1  B B
544# 261f bleq	CBR JLE		CORE 0x15	1  B B
545# 261g bgeq	CBR JGE		CORE 0x18	1  B B
546# 261h blss	CBR JLT		CORE 0x19	1  B B
547# 261i bgtru	CBR JHI		CORE 0x1a	1  B B
548# 261j blequ	CBR JLOS	CORE 0x1b	1  B B
549# 261k bvc	CBR 0		CORE 0x1c	1  B B
550# 261l bvs	CBR 0		CORE 0x1d	1  B B
551# 261m bgequ	CBR JHIS	CORE 0x1e	1  B B
552# 261n bcc	CBR JHIS	CORE 0x1e	1  B B
553# 261o blssu	CBR JLO		CORE 0x1f	1  B B
554# 261p bcs	CBR JLO		CORE 0x1f	1  B B
555# 263a brb	JBR S		CORE 0x11	1  B B
556# 263b brw	JBR S		CORE 0x31	1  B W
557# 263c jmp	JMP S		CORE 0x17	1  A B
558# 264a bbs	CBR JBS		CORE 0xe0	3  R L  V B  B B
559# 264b bbc	CBR JBC		CORE 0xe1	3  R L  V B  B B
560# 265a bbss	CBR JBSS	CORE 0xe2	3  R L  V B  B B
561# 265b bbcs	CBR JBCS	CORE 0xe3	3  R L  V B  B B
562# 265c bbsc	CBR JBSC	CORE 0xe4	3  R L  V B  B B
563# 265d bbcc	CBR JBCC	CORE 0xe5	3  R L  V B  B B
564# 266a bbssi	CBR JBSS	CORE 0xe6	3  R L  V B  B B
565# 266b bbcci	CBR JBCC	CORE 0xe7	3  R L  V B  B B
566# 267a blbs	CBR JLBS	CORE 0xe8	2  R L  B B
567# 267b blbc	CBR JLBC	CORE 0xe9	2  R L  B B
568# 268a acbb	ACB TN1		CORE 0x9d	4  R B  R B  M B  B W
569# 268b acbw	ACB TN1		CORE 0x3d	4  R W  R W  M W  B W
570# 268c acbl	ACB TN1		CORE 0xf1	4  R L  R L  M L  B W
571# 268d acbf	ACB TN1		CORE 0x4f	4  R F  R F  M F  B W
572# 268e acbd	ACB TN1		CORE 0x6f	4  R D  R D  M D  B W
573# 268f acbg	ACB TN1		ESCD 0x4f	4  R G  R G  M G  B W
574# 268g acbh	ACB TN1		ESCD 0x6f	4  R H  R H  M H  B W
575# 270a aoblss	AOBLSS S	CORE 0xf2	3  R L  M L  B B
576# 270b aobleq	AOBLEQ S	CORE 0xf3	3  R L  M L  B B
577# 271a sobgeq	SOBGEQ S	CORE 0xf4	2  M L  B B
578# 271b sobgtr	SOBGTR S	CORE 0xf5	2  M L  B B
579# 273a caseb	CASE TN1	CORE 0x8f	3  R B  R B  R B
580# 273b casew	CASE TN1	CORE 0xaf	3  R W  R W  R W
581# 273c casel	CASE TN1	CORE 0xcf	3  R L  R L  R L
582# 275a bsbb	HARD HARD	CORE 0x10	1  B B
583# 275b bsbw	HARD HARD	CORE 0x30	1  B W
584# 275c jsb	JSB S		CORE 0x16	1  A B
585# 276a rsb	JBR RSB		CORE 0x05	0
586# 280a callg	CALLS S		CORE 0xfa	2  A B  A B
587# 282a calls	CALLS S		CORE 0xfb	2  R L  A B
588# 284a ret	JBR RET		CORE 0x04	0
589# 288a movc3	MOVC3 S		CORE 0x28	3  R W  A B  A B
590# 288b movc5	HARD HARD	CORE 0x2c	5  R W  A B  R B  R W  A B
591# 290a movtc	HARD HARD	CORE 0x2e	6  R W  A B  R B  A B  R W  A B
592# 292a movtuc	HARD HARD	CORE 0x2f	6  R W  A B  R B  A B  R W  A B
593# 294a cmpc3	HARD HARD	CORE 0x29	3  R W  A B  A B
594# 294b cmpc5	HARD HARD	CORE 0x2d	5  R W  A B  R B  R W  A B
595# 297a scanc	HARD HARD	CORE 0x2a	4  R W  A B  A B  R B
596# 297b spanc	HARD HARD	CORE 0x2b	4  R W  A B  A B  R B
597# 299a locc	HARD HARD	CORE 0x3a	3  R B  R W  A B
598# 299b skpc	HARD HARD	CORE 0x3b	3  R B  R W  A B
599# 301a matchc	HARD HARD	CORE 0x39	4  R W  A B  R W  A B
600# 304a crc	HARD HARD	CORE 0x0b	4  A B  R L  R W  A B
601# 312a movp	HARD HARD	CORE 0x34	3  R W  A B  A B
602# 313a cmpp3	HARD HARD	CORE 0x35	3  R W  A B  A B
603# 313b cmpp4	HARD HARD	CORE 0x37	4  R W  A B  R W  A B
604# 314a addp4	HARD HARD	CORE 0x20	4  R W  A B  R W  A B
605# 314b addp6	HARD HARD	CORE 0x21	6  R W  A B  R W  A B  R W  A B
606# 316a subp4	HARD HARD	CORE 0x22	4  R W  A B  R W  A B
607# 316b subp6	HARD HARD	CORE 0x23	6  R W  A B  R W  A B  R W  A B
608# 318a mulp	HARD HARD	CORE 0x25	6  R W  A B  R W  A B  R W  A B
609# 319a divp	HARD HARD	CORE 0x27	6  R W  A B  R W  A B  R W  A B
610# 321a cvtlp	HARD HARD	CORE 0xf9	3  R L  R W  A B
611# 322a cvtpl	HARD HARD	CORE 0x36	3  R W  A B  W L
612# 323a cvtpt	HARD HARD	CORE 0x24	5  R W  A B  A B  R W  A B
613# 325a cvttp	HARD HARD	CORE 0x26	5  R W  A B  A B  R W  A B
614# 327a cvtps	HARD HARD	CORE 0x08	4  R W  A B  R W  A B
615# 329a cvtsp	HARD HARD	CORE 0x09	4  R W  A B  R W  A B
616# 330a ashp	HARD HARD	CORE 0xf8	6  R B  R W  A B  R B  R W  A B
617# 335a editpc	HARD HARD	CORE 0x38	4  R W  A B  A B  A B
618# 385a nop	HARD HARD	CORE 0x01	0
619# 392a escd	HARD HARD	CORE 0xfd	0
620# 392b esce	HARD HARD	CORE 0xfe	0
621# 393c escf	HARD HARD	CORE 0xff	0
622