constant IMM_OPT : integer := 0; -- no sharing
constant SUB_OPT : integer := 1;
- constant LOG_OPT : integer := 1;
+ constant ARITH_OPT : integer := 1;
constant CARRY_OPT : integer := 2;
- constant LEFT_OPT : integer := 3;
+ constant RIGHT_OPT : integer := 3;
constant NO_PSW_OPT : integer := 4;--no sharing
constant NO_DST_OPT : integer := 5; --no sharing
reg_src2_addr : std_logic_vector(REG_ADDR_WIDTH-1 downto 0);
immediate : std_logic_vector(WORD_WIDTH-1 downto 0);
+-- immediate_set : std_logic;
displacement : std_logic_vector(DISPL_WIDTH-1 downto 0);
jmptype : std_logic_vector(1 downto 0);
- carry, sreg_update, high_low, fill, signext, bp, arith, left_right : std_logic;
+ high_low, fill, signext, bp: std_logic;
- op_detail : op_pot_t;
+ op_detail : op_opt_t;
+ op_group : op_info_t;
end record;
rtw_reg1 : std_logic;
rtw_reg2 : std_logic;
immediate : gp_register_t;
+ imm_set : std_logic;
end record;