/* defs.h 4.3 82/03/30 */
* adb - vax string table version; common definitions
* Symbol types, used internally in calls to findsym routine.
* One the VAX this all degenerates since I & D symbols are indistinct.
* Basically we get NSYM==0 for `=' command, ISYM==DSYM otherwise.
#define DSYM 1 /* Data space symbol */
#define ISYM DSYM /* Instruction space symbol == DSYM on VAX */
/* the quantities involving ctob() are located in the kernel stack. */
/* the others are in the pcb. */
#define USP (ctob(UPAGES)-5*sizeof(int))
#define R0 (ctob(UPAGES)-18*sizeof(int))
#define R1 (ctob(UPAGES)-17*sizeof(int))
#define R2 (ctob(UPAGES)-16*sizeof(int))
#define R3 (ctob(UPAGES)-15*sizeof(int))
#define R4 (ctob(UPAGES)-14*sizeof(int))
#define R5 (ctob(UPAGES)-13*sizeof(int))
#define R6 (ctob(UPAGES)-12*sizeof(int))
#define R7 (ctob(UPAGES)-11*sizeof(int))
#define R8 (ctob(UPAGES)-10*sizeof(int))
#define R9 (ctob(UPAGES)-9*sizeof(int))
#define R10 (ctob(UPAGES)-8*sizeof(int))
#define R11 (ctob(UPAGES)-7*sizeof(int))
#define AP (ctob(UPAGES)-21*sizeof(int))
#define FP (ctob(UPAGES)-20*sizeof(int))
#define PC (ctob(UPAGES)-2*sizeof(int))
#define PSL (ctob(UPAGES)-1*sizeof(int))
/* long to ints and back (puns) */
#define leng(a) ((long)((unsigned)(a)))
#define shorten(a) ((int)(a))
#define itol(a,b) (itolws.I[0]=(a), itolws.I[1]=(b), itolws.L)
#define leng(a) itol(0,a)
#define shorten(a) ((short)(a))
#define itol(a,b) (itolws.I[0]=(b), itolws.I[1]=(a), itolws.L)
/* result type declarations */