xref: /original-bsd/usr.bin/gprof/vax.h (revision e7d21e74)
11d8d0108Sdist /*
2*e7d21e74Sbostic  * Copyright (c) 1983, 1993
3*e7d21e74Sbostic  *	The Regents of the University of California.  All rights reserved.
41d8d0108Sdist  *
51808f06cSbostic  * %sccs.include.redist.c%
640159e57Sbostic  *
7*e7d21e74Sbostic  *	@(#)vax.h	8.1 (Berkeley) 06/06/93
81d8d0108Sdist  */
96e0a246cSmckusick 
106e0a246cSmckusick     /*
116e0a246cSmckusick      *	opcode of the `calls' instruction
126e0a246cSmckusick      */
136e0a246cSmckusick #define	CALLS	0xfb
146e0a246cSmckusick 
156e0a246cSmckusick     /*
166e0a246cSmckusick      *	offset (in bytes) of the code from the entry address of a routine.
176e0a246cSmckusick      *	(see asgnsamples for use and explanation.)
186e0a246cSmckusick      */
196e0a246cSmckusick #define OFFSET_OF_CODE	2
20407b5cabSmckusick #define	UNITS_TO_CODE	(OFFSET_OF_CODE / sizeof(UNIT))
216e0a246cSmckusick 
226e0a246cSmckusick     /*
236e0a246cSmckusick      *	register for pc relative addressing
246e0a246cSmckusick      */
256e0a246cSmckusick #define	PC	0xf
266e0a246cSmckusick 
276e0a246cSmckusick enum opermodes {
286e0a246cSmckusick     literal, indexed, reg, regdef, autodec, autoinc, autoincdef,
296e0a246cSmckusick     bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef,
306e0a246cSmckusick     immediate, absolute, byterel, bytereldef, wordrel, wordreldef,
316e0a246cSmckusick     longrel, longreldef
326e0a246cSmckusick };
336e0a246cSmckusick typedef enum opermodes	operandenum;
346e0a246cSmckusick 
356e0a246cSmckusick struct modebyte {
366e0a246cSmckusick     unsigned int	regfield:4;
376e0a246cSmckusick     unsigned int	modefield:4;
386e0a246cSmckusick };
396e0a246cSmckusick 
40