xref: /csrg-svn/usr.bin/gprof/vax.h (revision 11806)
1*11806Smckusick     /* sccsid:  @(#)vax.h	1.2 (Berkeley) 03/31/83 */
211714Smckusick 
311714Smckusick     /*
411714Smckusick      *	opcode of the `calls' instruction
511714Smckusick      */
611714Smckusick #define	CALLS	0xfb
711714Smckusick 
811714Smckusick     /*
911714Smckusick      *	offset (in bytes) of the code from the entry address of a routine.
1011714Smckusick      *	(see asgnsamples for use and explanation.)
1111714Smckusick      */
1211714Smckusick #define OFFSET_OF_CODE	2
13*11806Smckusick #define	UNITS_TO_CODE	(OFFSET_OF_CODE / sizeof(UNIT))
1411714Smckusick 
1511714Smckusick     /*
1611714Smckusick      *	register for pc relative addressing
1711714Smckusick      */
1811714Smckusick #define	PC	0xf
1911714Smckusick 
2011714Smckusick enum opermodes {
2111714Smckusick     literal, indexed, reg, regdef, autodec, autoinc, autoincdef,
2211714Smckusick     bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef,
2311714Smckusick     immediate, absolute, byterel, bytereldef, wordrel, wordreldef,
2411714Smckusick     longrel, longreldef
2511714Smckusick };
2611714Smckusick typedef enum opermodes	operandenum;
2711714Smckusick 
2811714Smckusick struct modebyte {
2911714Smckusick     unsigned int	regfield:4;
3011714Smckusick     unsigned int	modefield:4;
3111714Smckusick };
3211714Smckusick 
33