xref: /csrg-svn/usr.bin/f77/libF77/operand.h (revision 47940)
1*47940Sbostic /*-
2*47940Sbostic  * Copyright (c) 1980 The Regents of the University of California.
3*47940Sbostic  * All rights reserved.
422801Skre  *
5*47940Sbostic  * %sccs.include.proprietary.c%
622801Skre  *
7*47940Sbostic  *	@(#)operand.h	5.2 (Berkeley) 04/12/91
8*47940Sbostic  */
9*47940Sbostic 
10*47940Sbostic /*
1113570Sdlw  * operand.h  --  definitions useful to VAX operand decoding
1213570Sdlw  */
1313570Sdlw 
1413570Sdlw #define	opmode(op)	(op & 0xf0)
1513570Sdlw #define	opregn(op)	(op & 0xf)
1613570Sdlw 
1713570Sdlw /*
1813570Sdlw  * operand modes
1913570Sdlw  */
2013570Sdlw #define	LITERAL0	0x00
2113570Sdlw #define	LITERAL1	0x10
2213570Sdlw #define	LITERAL2	0x20
2313570Sdlw #define	LITERAL3	0x30
2413570Sdlw #define	INDEXED		0x40
2513570Sdlw #define	REGISTER	0x50
2613570Sdlw #define	REGDEFERED	0x60
2713570Sdlw #define	AUTODEC		0x70
2813570Sdlw #define	AUTOINC		0x80
2913570Sdlw #define	AUTOINCDEF	0x90
3013570Sdlw #define	BYTEDISP	0xa0
3113570Sdlw #define	BYTEDISPDEF	0xb0
3213570Sdlw #define	WORDDISP	0xc0
3313570Sdlw #define	WORDDISPDEF	0xd0
3413570Sdlw #define	LONGDISP	0xe0
3513570Sdlw #define	LONGDISPDEF	0xf0
3613570Sdlw /*
3713570Sdlw  * Modes where R is PC
3813570Sdlw  */
3913570Sdlw #define	IMMEDIATE	0x8f
4013570Sdlw #define	ABSOLUTE	0x9f
4113570Sdlw #define	BYTEREL		0xaf
4213570Sdlw #define	BYTERELDEF	0xbf
4313570Sdlw #define	WORDREL		0xcf
4413570Sdlw #define	WORDRELDEF	0xdf
4513570Sdlw #define	LONGREL		0xef
4613570Sdlw #define	LONGRELDEF	0xff
4713570Sdlw 
4813570Sdlw /*
4913570Sdlw  * register definitions
5013570Sdlw  */
5113570Sdlw #define	R0	0
5213570Sdlw #define	R1	1
5313570Sdlw #define	R2	2
5413570Sdlw #define	R3	3
5513570Sdlw #define	R4	4
5613570Sdlw #define	R5	5
5713570Sdlw #define	R6	6
5813570Sdlw #define	R7	7
5913570Sdlw #define	R8	8
6013570Sdlw #define	R9	9
6113570Sdlw #define	R10	10
6213570Sdlw #define	R11	11
6313570Sdlw #define	AP	12
6413570Sdlw #define	FP	13
6513570Sdlw #define	SP	14
6613570Sdlw #define	PC	15
67