xref: /original-bsd/old/adb/adb.tahoe/optab.h (revision 8dec0b47)
1*8dec0b47Sbostic /*-
2*8dec0b47Sbostic  * Copyright (c) 1980 The Regents of the University of California.
3*8dec0b47Sbostic  * All rights reserved.
4*8dec0b47Sbostic  *
5*8dec0b47Sbostic  * %sccs.include.proprietary.c%
6*8dec0b47Sbostic  *
7*8dec0b47Sbostic  *	@(#)optab.h	5.1 (Berkeley) 04/04/91
8*8dec0b47Sbostic  */
9e2edf13dSsam 
10e2edf13dSsam /*
11e2edf13dSsam  * Argument access types
12e2edf13dSsam  */
13e2edf13dSsam #define ACCA	(8<<3)		/* address only */
14e2edf13dSsam #define ACCR	(1<<3)		/* read */
15e2edf13dSsam #define ACCW	(2<<3)		/* write */
16e2edf13dSsam #define ACCM	(3<<3)		/* modify */
17e2edf13dSsam #define ACCB	(4<<3)		/* branch displacement */
18e2edf13dSsam #define ACCI	(5<<3)		/* XFC code */
19e2edf13dSsam 
20e2edf13dSsam /*
21e2edf13dSsam  * Argument data types
22e2edf13dSsam  */
23e2edf13dSsam #define TYPB	0		/* byte */
24e2edf13dSsam #define TYPW	1		/* word */
25e2edf13dSsam #define TYPL	2		/* long */
26e2edf13dSsam #define TYPQ	3		/* quad */
27e2edf13dSsam #define TYPF	4		/* float */
28e2edf13dSsam #define TYPD	5		/* double */
29e2edf13dSsam 
30fd097dbfSbostic /*
31fd097dbfSbostic  * Special instructions
32fd097dbfSbostic  */
33fd097dbfSbostic #define	KCALL	0xcf
34fd097dbfSbostic #define	CASEL	0xfc
35fd097dbfSbostic 
36fd097dbfSbostic extern struct optab {
37e2edf13dSsam 	char	*iname;
38fd097dbfSbostic 	u_char	val;
39fd097dbfSbostic 	u_char	nargs;
40fd097dbfSbostic 	u_char	argtype[6];
41e2edf13dSsam } optab[];
42fd097dbfSbostic 
43fd097dbfSbostic extern char *regname[];
44