xref: /csrg-svn/usr.bin/gprof/vax.h (revision 21966)
1*21966Sdist /*
2*21966Sdist  * Copyright (c) 1983 Regents of the University of California.
3*21966Sdist  * All rights reserved.  The Berkeley software License Agreement
4*21966Sdist  * specifies the terms and conditions for redistribution.
5*21966Sdist  *
6*21966Sdist  *	@(#)vax.h	5.1 (Berkeley) 06/04/85
7*21966Sdist  */
811714Smckusick 
911714Smckusick     /*
1011714Smckusick      *	opcode of the `calls' instruction
1111714Smckusick      */
1211714Smckusick #define	CALLS	0xfb
1311714Smckusick 
1411714Smckusick     /*
1511714Smckusick      *	offset (in bytes) of the code from the entry address of a routine.
1611714Smckusick      *	(see asgnsamples for use and explanation.)
1711714Smckusick      */
1811714Smckusick #define OFFSET_OF_CODE	2
1911806Smckusick #define	UNITS_TO_CODE	(OFFSET_OF_CODE / sizeof(UNIT))
2011714Smckusick 
2111714Smckusick     /*
2211714Smckusick      *	register for pc relative addressing
2311714Smckusick      */
2411714Smckusick #define	PC	0xf
2511714Smckusick 
2611714Smckusick enum opermodes {
2711714Smckusick     literal, indexed, reg, regdef, autodec, autoinc, autoincdef,
2811714Smckusick     bytedisp, bytedispdef, worddisp, worddispdef, longdisp, longdispdef,
2911714Smckusick     immediate, absolute, byterel, bytereldef, wordrel, wordreldef,
3011714Smckusick     longrel, longreldef
3111714Smckusick };
3211714Smckusick typedef enum opermodes	operandenum;
3311714Smckusick 
3411714Smckusick struct modebyte {
3511714Smckusick     unsigned int	regfield:4;
3611714Smckusick     unsigned int	modefield:4;
3711714Smckusick };
3811714Smckusick 
39