diff options
Diffstat (limited to 'sim/cris/cpuv10.h')
-rw-r--r-- | sim/cris/cpuv10.h | 42 |
1 files changed, 11 insertions, 31 deletions
diff --git a/sim/cris/cpuv10.h b/sim/cris/cpuv10.h index 52c1b74..871b3f3 100644 --- a/sim/cris/cpuv10.h +++ b/sim/cris/cpuv10.h @@ -294,6 +294,11 @@ union sem_fields { UINT f_operand2; } sfmt_bcc_b; struct { /* */ + UINT f_memmode; + unsigned char in_h_gr_SI_14; + unsigned char out_h_gr_SI_14; + } sfmt_move_m_spplus_p8; + struct { /* */ INT f_s8; UINT f_operand2; unsigned char in_Rd; @@ -302,17 +307,12 @@ union sem_fields { INT f_indir_pc__dword; UINT f_operand2; unsigned char out_Pd; - } sfmt_move_c_sprv10_p8; + } sfmt_move_c_sprv10_p9; struct { /* */ INT f_indir_pc__word; UINT f_operand2; unsigned char out_Pd; - } sfmt_move_c_sprv10_p4; - struct { /* */ - INT f_indir_pc__byte; - UINT f_operand2; - unsigned char out_Pd; - } sfmt_move_c_sprv10_p0; + } sfmt_move_c_sprv10_p5; struct { /* */ INT f_s6; UINT f_operand2; @@ -784,27 +784,7 @@ struct scache { f_size = EXTRACT_LSB0_UINT (insn, 16, 5, 2); \ f_operand1 = EXTRACT_LSB0_UINT (insn, 16, 3, 4); \ -#define EXTRACT_IFMT_MOVE_C_SPRV10_P0_VARS \ - UINT f_operand2; \ - INT f_indir_pc__byte; \ - UINT f_mode; \ - UINT f_opcode; \ - UINT f_size; \ - UINT f_operand1; \ - /* Contents of trailing part of insn. */ \ - UINT word_1; \ - unsigned int length; -#define EXTRACT_IFMT_MOVE_C_SPRV10_P0_CODE \ - length = 4; \ - word_1 = GETIMEMUSI (current_cpu, pc + 2); \ - f_operand2 = EXTRACT_LSB0_UINT (insn, 16, 15, 4); \ - f_indir_pc__byte = (0|(EXTRACT_LSB0_UINT (word_1, 32, 15, 16) << 0)); \ - f_mode = EXTRACT_LSB0_UINT (insn, 16, 11, 2); \ - f_opcode = EXTRACT_LSB0_UINT (insn, 16, 9, 4); \ - f_size = EXTRACT_LSB0_UINT (insn, 16, 5, 2); \ - f_operand1 = EXTRACT_LSB0_UINT (insn, 16, 3, 4); \ - -#define EXTRACT_IFMT_MOVE_C_SPRV10_P4_VARS \ +#define EXTRACT_IFMT_MOVE_C_SPRV10_P5_VARS \ UINT f_operand2; \ INT f_indir_pc__word; \ UINT f_mode; \ @@ -814,7 +794,7 @@ struct scache { /* Contents of trailing part of insn. */ \ UINT word_1; \ unsigned int length; -#define EXTRACT_IFMT_MOVE_C_SPRV10_P4_CODE \ +#define EXTRACT_IFMT_MOVE_C_SPRV10_P5_CODE \ length = 4; \ word_1 = GETIMEMUSI (current_cpu, pc + 2); \ f_operand2 = EXTRACT_LSB0_UINT (insn, 16, 15, 4); \ @@ -824,7 +804,7 @@ struct scache { f_size = EXTRACT_LSB0_UINT (insn, 16, 5, 2); \ f_operand1 = EXTRACT_LSB0_UINT (insn, 16, 3, 4); \ -#define EXTRACT_IFMT_MOVE_C_SPRV10_P8_VARS \ +#define EXTRACT_IFMT_MOVE_C_SPRV10_P9_VARS \ INT f_indir_pc__dword; \ UINT f_operand2; \ UINT f_mode; \ @@ -834,7 +814,7 @@ struct scache { /* Contents of trailing part of insn. */ \ UINT word_1; \ unsigned int length; -#define EXTRACT_IFMT_MOVE_C_SPRV10_P8_CODE \ +#define EXTRACT_IFMT_MOVE_C_SPRV10_P9_CODE \ length = 6; \ word_1 = GETIMEMUSI (current_cpu, pc + 2); \ f_indir_pc__dword = (0|(EXTRACT_LSB0_UINT (word_1, 32, 31, 32) << 0)); \ |