All VAX: Clarify Opcode Table decode values
the opcode table first word consists of bits: <7> = FPD is legal for this opcode. <4:6> = number of specifiers for unimplemented opcodes (VAX subsets) <3> = unused <0:2> = number of specifiers The mask used to be 0x70. The convention is that x_M_y is a mask value <right-justified>, for a macro like: #define get_foo(x) (((x) >> x_V_foo) & x_M_foo) For a subset VAX (like the 3900), the unimplemented opcodes are those
This commit is contained in:
parent
33f02ae4d7
commit
6831746400
1 changed files with 3 additions and 3 deletions
|
@ -379,9 +379,9 @@ extern jmp_buf save_env;
|
|||
#define DR_F 0x80 /* FPD ok flag */
|
||||
#define DR_NSPMASK 0x07 /* #specifiers */
|
||||
#define DR_V_USPMASK 4
|
||||
#define DR_M_USPMASK 0x07 /* #spec, sym_ */
|
||||
#define DR_GETNSP(x) ((x) & DR_NSPMASK)
|
||||
#define DR_GETUSP(x) (((x) >> DR_V_USPMASK) & DR_M_USPMASK)
|
||||
#define DR_M_USPMASK 0x7 /* #spec, sym_ */
|
||||
#define DR_GETNSP(x) ((x) & DR_NSPMASK) /* #specifiers */
|
||||
#define DR_GETUSP(x) (((x) >> DR_V_USPMASK) & DR_M_USPMASK) /* #specifiers for unimplemented instructions */
|
||||
|
||||
/* Extra bits in the opcode flag word of the Decode ROM array only for history results */
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue