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