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