⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vaxregdef.h

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 H
📖 第 1 页 / 共 4 页
字号:
 #  #      31               23               15               07            00 #     +----------------+----------------+----------------+----------------+ #     |    delta-pc    |      xxxx      |             objlen              | : r0 #     +----------------+----------------+----------------+----------------+ #     |                              objaddr                              | : r1 #     +----------------+----------------+----------------+----------------+ #     |              xxxxx              |             srclen              | : r2 #     +----------------+----------------+----------------+----------------+ #     |                              srcaddr                              | : r3 #     +----------------+----------------+----------------+----------------+# define matchc_s_matchc 16 # define matchc 0# define matchc_w_objlen 0                 					#  objlen.rw# define matchc_b_delta_pc 3# define matchc_a_objaddr 4                					#  objaddr.ab# define matchc_w_srclen 8                 					#  srclen.rw# define matchc_a_srcaddr 12               					#  srcaddr.ab #	.endm  #	.macro	crc_def,..equ=<=>,..col=<:> #  define register usage for the crc instruction #  #      31               23               15               07            00 #     +----------------+----------------+----------------+----------------+ #     |                              inicrc                               | : r0 #     +----------------+----------------+----------------+----------------+ #     |                                tbl                                | : r1 #     +----------------+----------------+----------------+----------------+ #     |    delta-pc    |      xxxx      |             strlen              | : r2 #     +----------------+----------------+----------------+----------------+ #     |                              stream                               | : r3 #     +----------------+----------------+----------------+----------------+# define crc_s_crc 16 # define crc 0# define crc_l_inicrc 0                    					#  inicrc.rl# define crc_a_tbl 4                       					#  tbl.ab# define crc_w_strlen 8                    					#  strlen.rw# define crc_b_delta_pc 11# define crc_a_stream 12                   					#  stream.ab #	.endm  #	.macro	stack_def,..equ=<=>,..col=<:> #	Define exception parameters for vax$_opcdec exception, the exception #	that occurs when an unimplemented instructions on a microvax processor. #  #      31           23           15           07        00 #     +------------+------------+------------+------------+ #     |             opcode of reserved instruction        | : 00(sp) #     +------------+------------+------------+------------+ #     |             pc of reserved instruction (old pc)   | : 04(sp) #     +------------+------------+------------+------------+ #     |             first operand specifier               | : 08(sp) #     +------------+------------+------------+------------+ #     |             second operand specifier              | : 12(sp) #     +------------+------------+------------+------------+ #     |             third operand specifier               | : 16(sp) #     +------------+------------+------------+------------+ #     |             fourth operand specifier              | : 20(sp) #     +------------+------------+------------+------------+ #     |             fifth operand specifier               | : 24(sp) #     +------------+------------+------------+------------+ #     |             sixth operand specifier               | : 28(sp) #     +------------+------------+------------+------------+ #     |             seventh operand specifier             | : 32(sp) #     +------------+------------+------------+------------+ #     |             eighth operand specifier              | : 36(sp) #     +------------+------------+------------+------------+ #     |             pc of next instruction (new pc)       | : 40(sp) #     +------------+------------+------------+------------+ #     |             psl at time of exception              | : 44(sp) #     +------------+------------+------------+------------+# define s_stack 48# define stack 0# define opcode 0                          					#  opcode of reserved instruction# define old_pc 4                          					#  pc of reserved instruction (old pc)# define operand_1 8                       					#  first operand specifier# define operand_2 12                      					#  second operand specifier# define operand_3 16                      					#  third operand specifier# define operand_4 20                      					#  fourth operand specifier# define operand_5 24                      					#  fifth operand specifier# define operand_6 28                      					#  sixth operand specifier# define operand_7 32                      					#  seventh operand specifier # define operand_8 36                      					#  eight operand specifier # define new_pc 40                         					#  pc of instruction following  #   reserved instruction (new pc)# define exception_psl 44                  					#  psl at time of exception #	.endm  #	.macro	pack_def,..equ=<=>,..col=<:> #  define stack usage when packing registers to back up instruction #  #      31           23           15           07        00 #     +------------+------------+------------+------------+ #     |                     saved r0                      | : 00(sp) #     +------------+------------+------------+------------+ #     |                     saved r1                      | : 04(sp) #     +------------+------------+------------+------------+ #     |                     saved r2                      | : 08(sp) #     +------------+------------+------------+------------+ #     |                     saved r3                      | : 12(sp) #     +------------+------------+------------+------------+ #  #  the next longword after the saved r3 depends on the context.  #  #  in the case of software generated exceptions, a signal array sits #  immediately underneath the saved register array.  #  #     +------------+------------+------------+------------+ #     |           first longword of signal array          | : 16(sp) #     +------------+------------+------------+------------+ #  #  in the case of an access  #  violation, there is a return pc followed by an argument list. #  #     +------------+------------+------------+------------+ #     |                     return pc                     | : 16(sp) #     +------------+------------+------------+------------+ #     |             argument count (always 2)             | : 20(sp) #     +------------+------------+------------+------------+ #     |              pointer to signal array              | : 24(sp) #     +------------+------------+------------+------------+ #     |             pointer to mechanism array            | : 28(sp) #     +------------+------------+------------+------------+ #  #  after the stack has been modified, a new value of sp is inserted here. #  #     +------------+------------+------------+------------+ #     |                     saved sp                      | : 16(sp) #     +------------+------------+------------+------------+#define pack_m_fpd 256#define pack_m_accvio 512#define pack_s_pack 36 #define pack 0#define pack_l_saved_r0 0#define pack_l_saved_r1 4#define pack_l_saved_r2 8#define pack_l_saved_r3 12#define pack_l_return_pc 16#define pack_l_signal_array 16#define pack_l_saved_sp 16#define pack_l_argument_count 20#define pack_l_signal_array_pointer 24#define pack_l_mechanism_array_pointer 28#define pack_s_delta_pc 8#define pack_v_delta_pc 0#define pack_v_fpd 8	                      #  set fpd bit in psl#define pack_v_accvio 9 		              #  stack contains extra data #	.endm  #	.macro	addp4_def,..equ=<=>,..col=<:> #  define register usage for the addp4 instruction #  #      31               23               15               07            00 #     +----------------+----------------+----------------+----------------+ #     |    delta-pc    |      xxxx      |             addlen              | : r0 #     +----------------+----------------+----------------+----------------+ #     |                              addaddr                              | : r1 #     +----------------+----------------+----------------+----------------+ #     |              xxxxx              |             sumlen              | : r2 #     +----------------+----------------+----------------+----------------+ #     |                              sumaddr                              | : r3 #     +----------------+----------------+----------------+----------------+# define addp4_s_addp4 16 # define addp4 0# define addp4_w_addlen 0# define addp4_s_addlen 5# define addp4_v_addlen 0# define addp4_b_delta_pc 3# define addp4_a_addaddr 4                 					#  addaddr.ab# define addp4_w_sumlen 8# define addp4_s_sumlen 5# define addp4_v_sumlen 0# define addp4_a_sumaddr 12                					#  sumaddr.ab #	.endm  #	.macro	addp6_def,..equ=<=>,..col=<:> #  define register usage for the addp6 instruction #  #      31               23               15               07            00 #     +----------------+----------------+----------------+----------------+ #     |    delta-pc    |      xxxx      |             add1len             | : r0 #     +----------------+----------------+----------------+----------------+ #     |                             add1addr                              | : r1 #     +----------------+----------------+----------------+----------------+ #     |              xxxxx              |             add2len             | : r2 #     +----------------+----------------+----------------+----------------+ #     |                             add2addr                              | : r3 #     +----------------+----------------+----------------+----------------+ #     |              xxxxx              |             sumlen              | : r4 #     +----------------+----------------+----------------+----------------+ #     |                              sumaddr                              | : r5 #     +----------------+----------------+----------------+----------------+# define addp6_s_addp6 24 # define addp6 0# define addp6_w_add1len 0# define addp6_s_add1len 5# define addp6_v_add1len 0# define addp6_b_delta_pc 3# define addp6_a_add1addr 4                					#  add1addr.ab# define addp6_w_add2len 8# define addp6_s_add2len 5# define addp6_v_add2len 0# define addp6_a_add2addr 12               					#  add2addr.ab# define addp6_w_sumlen 16# define addp6_s_sumlen 5# define addp6_v_sumlen 0# define addp6_a_sumaddr 20                					#  sumaddr.ab #	.endm  #	.macro	ashp_def,..equ=<=>,..col=<:> #  define register usage for the ashp instruction #  #      31               23               15               07            00 #     +----------------+----------------+----------------+----------------+ #     |    delta-pc    |      cnt       |             srclen              | : r0 #     +----------------+----------------+----------------+----------------+ #     |                              srcaddr                              | : r1 #     +----------------+----------------+----------------+----------------+ #     |      xxxx      |     round      |             dstlen              | : r2 #     +----------------+----------------+----------------+----------------+ #     |                              dstaddr                              | : r3 #     +----------------+----------------+----------------+----------------+# define ashp_s_ashp 16 # define ashp 0# define ashp_w_srclen 0# define ashp_s_srclen 5# define ashp_v_srclen 0# define ashp_b_cnt 2					#  cnt.rb# define ashp_b_delta_pc 3# define ashp_a_srcaddr 4 					#  srcaddr.ab# define ashp_w_dstlen 8

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -