aboutsummaryrefslogtreecommitdiff
path: root/sim/m32r
diff options
context:
space:
mode:
Diffstat (limited to 'sim/m32r')
-rw-r--r--sim/m32r/extract.c16
-rw-r--r--sim/m32r/readx.c56
-rw-r--r--sim/m32r/sem-switch.c22
-rw-r--r--sim/m32r/sem.c24
-rw-r--r--sim/m32r/semx.c26
5 files changed, 72 insertions, 72 deletions
diff --git a/sim/m32r/extract.c b/sim/m32r/extract.c
index 129f94c..6259093 100644
--- a/sim/m32r/extract.c
+++ b/sim/m32r/extract.c
@@ -1176,7 +1176,7 @@ EX_FN_NAME (m32r,fmt_st) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBUF *
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1203,7 +1203,7 @@ EX_FN_NAME (m32r,fmt_st_d) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBUF
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1229,7 +1229,7 @@ EX_FN_NAME (m32r,fmt_stb) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBUF
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1256,7 +1256,7 @@ EX_FN_NAME (m32r,fmt_stb_d) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBU
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1282,7 +1282,7 @@ EX_FN_NAME (m32r,fmt_sth) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBUF
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1309,7 +1309,7 @@ EX_FN_NAME (m32r,fmt_sth_d) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGBU
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
@@ -1335,7 +1335,7 @@ EX_FN_NAME (m32r,fmt_st_plus) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARG
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
abuf->h_gr_set = 0 | (1 << f_r2);
}
#endif
@@ -1379,7 +1379,7 @@ EX_FN_NAME (m32r,fmt_unlock) (SIM_CPU *current_cpu, PCADDR pc, insn_t insn, ARGB
/* Record the fields for profiling. */
if (PROFILE_MODEL_P (current_cpu))
{
- abuf->h_gr_get = 0 | (1 << f_r1) | (1 << f_r2);
+ abuf->h_gr_get = 0 | (1 << f_r2) | (1 << f_r1);
}
#endif
#undef FLD
diff --git a/sim/m32r/readx.c b/sim/m32r/readx.c
index 5a4035d..b5935ff 100644
--- a/sim/m32r/readx.c
+++ b/sim/m32r/readx.c
@@ -195,8 +195,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ADD3_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (slo16) = f_simm16;
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (slo16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -260,8 +260,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ADDV3_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (simm16) = f_simm16;
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (simm16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -273,9 +273,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ADDX_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (condbit) = CPU (h_cond);
OPRND (dr) = CPU (h_gr[f_r1]);
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (condbit) = CPU (h_cond);
#undef OPRND
}
BREAK (read);
@@ -313,9 +313,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_BEQ_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (disp16) = pc + f_disp16;
OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (disp16) = pc + f_disp16;
#undef OPRND
}
BREAK (read);
@@ -327,8 +327,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_BEQZ_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (disp16) = pc + f_disp16;
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (disp16) = pc + f_disp16;
#undef OPRND
}
BREAK (read);
@@ -340,8 +340,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_BL8_CODE
/* Fetch the input operands for the semantic handler. */
- RECORD_IADDR (OPRND (disp8), (pc & -4L) + f_disp8);
OPRND (pc) = CPU (h_pc);
+ RECORD_IADDR (OPRND (disp8), (pc & -4L) + f_disp8);
#undef OPRND
}
BREAK (read);
@@ -353,8 +353,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_BL24_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (disp24) = pc + f_disp24;
OPRND (pc) = CPU (h_pc);
+ OPRND (disp24) = pc + f_disp24;
#undef OPRND
}
BREAK (read);
@@ -367,8 +367,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
/* Fetch the input operands for the semantic handler. */
OPRND (condbit) = CPU (h_cond);
- RECORD_IADDR (OPRND (disp8), (pc & -4L) + f_disp8);
OPRND (pc) = CPU (h_pc);
+ RECORD_IADDR (OPRND (disp8), (pc & -4L) + f_disp8);
#undef OPRND
}
BREAK (read);
@@ -381,8 +381,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
/* Fetch the input operands for the semantic handler. */
OPRND (condbit) = CPU (h_cond);
- OPRND (disp24) = pc + f_disp24;
OPRND (pc) = CPU (h_pc);
+ OPRND (disp24) = pc + f_disp24;
#undef OPRND
}
BREAK (read);
@@ -431,8 +431,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_CMPI_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (simm16) = f_simm16;
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (simm16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -520,9 +520,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_LD_D_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (h_memory_add_WI_sr_slo16) = GETMEMSI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
- OPRND (slo16) = f_simm16;
+ OPRND (h_memory_add__VM_sr_slo16) = GETMEMSI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (slo16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -547,9 +547,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_LDB_D_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (h_memory_add_WI_sr_slo16) = GETMEMQI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
- OPRND (slo16) = f_simm16;
+ OPRND (h_memory_add__VM_sr_slo16) = GETMEMQI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (slo16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -574,9 +574,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_LDH_D_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (h_memory_add_WI_sr_slo16) = GETMEMHI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
- OPRND (slo16) = f_simm16;
+ OPRND (h_memory_add__VM_sr_slo16) = GETMEMHI (current_cpu, ADDSI (CPU (h_gr[f_r2]), f_simm16));
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (slo16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -789,10 +789,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_RTE_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (h_bcond_0) = CPU (h_bcond);
+ OPRND (h_bsm_0) = CPU (h_bsm);
OPRND (h_bie_0) = CPU (h_bie);
+ OPRND (h_bcond_0) = CPU (h_bcond);
OPRND (h_bpc_0) = CPU (h_bpc);
- OPRND (h_bsm_0) = CPU (h_bsm);
#undef OPRND
}
BREAK (read);
@@ -816,8 +816,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_SLL3_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (simm16) = f_simm16;
OPRND (sr) = CPU (h_gr[f_r2]);
+ OPRND (simm16) = f_simm16;
#undef OPRND
}
BREAK (read);
@@ -842,8 +842,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ST_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (src1) = CPU (h_gr[f_r1]);
#undef OPRND
}
BREAK (read);
@@ -855,9 +855,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ST_D_CODE
/* Fetch the input operands for the semantic handler. */
+ OPRND (src2) = CPU (h_gr[f_r2]);
OPRND (slo16) = f_simm16;
OPRND (src1) = CPU (h_gr[f_r1]);
- OPRND (src2) = CPU (h_gr[f_r2]);
#undef OPRND
}
BREAK (read);
@@ -869,8 +869,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_STB_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (src1) = CPU (h_gr[f_r1]);
#undef OPRND
}
BREAK (read);
@@ -882,9 +882,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_STB_D_CODE
/* Fetch the input operands for the semantic handler. */
+ OPRND (src2) = CPU (h_gr[f_r2]);
OPRND (slo16) = f_simm16;
OPRND (src1) = CPU (h_gr[f_r1]);
- OPRND (src2) = CPU (h_gr[f_r2]);
#undef OPRND
}
BREAK (read);
@@ -896,8 +896,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_STH_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (src1) = CPU (h_gr[f_r1]);
#undef OPRND
}
BREAK (read);
@@ -909,9 +909,9 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_STH_D_CODE
/* Fetch the input operands for the semantic handler. */
+ OPRND (src2) = CPU (h_gr[f_r2]);
OPRND (slo16) = f_simm16;
OPRND (src1) = CPU (h_gr[f_r1]);
- OPRND (src2) = CPU (h_gr[f_r2]);
#undef OPRND
}
BREAK (read);
@@ -923,8 +923,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_ST_PLUS_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (src1) = CPU (h_gr[f_r1]);
#undef OPRND
}
BREAK (read);
@@ -951,8 +951,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
/* Fetch the input operands for the semantic handler. */
OPRND (h_lock_0) = CPU (h_lock);
- OPRND (src1) = CPU (h_gr[f_r1]);
OPRND (src2) = CPU (h_gr[f_r2]);
+ OPRND (src1) = CPU (h_gr[f_r1]);
#undef OPRND
}
BREAK (read);
@@ -989,8 +989,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
EXTRACT_FMT_SADD_CODE
/* Fetch the input operands for the semantic handler. */
- OPRND (h_accums_0) = m32rx_h_accums_get (current_cpu, 0);
OPRND (h_accums_1) = m32rx_h_accums_get (current_cpu, 1);
+ OPRND (h_accums_0) = m32rx_h_accums_get (current_cpu, 0);
#undef OPRND
}
BREAK (read);
diff --git a/sim/m32r/sem-switch.c b/sim/m32r/sem-switch.c
index b781059..38c81c8 100644
--- a/sim/m32r/sem-switch.c
+++ b/sim/m32r/sem-switch.c
@@ -287,7 +287,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (* FLD (f_r1), * FLD (f_r2));
temp1 = ADDOFSI (* FLD (f_r1), * FLD (f_r2), 0);
* FLD (f_r1) = temp0;
@@ -306,7 +306,7 @@ do {
new_pc = SEM_NEXT_PC (sem_arg, 4);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (* FLD (f_r2), FLD (f_simm16));
temp1 = ADDOFSI (* FLD (f_r2), FLD (f_simm16), 0);
* FLD (f_r1) = temp0;
@@ -325,7 +325,7 @@ do {
new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDCSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
temp1 = ADDCFSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
* FLD (f_r1) = temp0;
@@ -672,9 +672,9 @@ if (NESI (* FLD (f_r2), 0)) {
new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- SI temp1;SI temp0;
+ USI temp1;SI temp0;
temp0 = ADDSI (ANDSI (CPU (h_pc), -4), 4);
- temp1 = * FLD (f_r2);
+ temp1 = ANDSI (* FLD (f_r2), -4);
CPU (h_gr[14]) = temp0;
TRACE_RESULT (current_cpu, "gr-14", 'x', CPU (h_gr[14]));
BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, temp1));
@@ -690,7 +690,7 @@ do {
#define FLD(f) abuf->fields.fmt_jmp.f
new_pc = SEM_NEXT_PC (sem_arg, 2);
- BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, * FLD (f_r2)));
+ BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, ANDSI (* FLD (f_r2), -4)));
TRACE_RESULT (current_cpu, "pc", 'x', new_pc);
#undef FLD
@@ -1152,10 +1152,10 @@ m32r_h_accum_set (current_cpu, (GTDI (tmp_tmp1, MAKEDI (32767, 0xffff0000))) ? (
do {
DI tmp_tmp1;
tmp_tmp1 = ANDDI (m32r_h_accum_get (current_cpu), MAKEDI (16777215, 0xffffffff));
-if (ANDIFSI (GEDI (tmp_tmp1, MAKEDI (16383, 0x80000000)), LEDI (tmp_tmp1, MAKEDI (8388607, 0xffffffff)))) {
+if (ANDIF (GEDI (tmp_tmp1, MAKEDI (16383, 0x80000000)), LEDI (tmp_tmp1, MAKEDI (8388607, 0xffffffff)))) {
tmp_tmp1 = MAKEDI (16383, 0x80000000);
} else {
-if (ANDIFSI (GEDI (tmp_tmp1, MAKEDI (8388608, 0)), LEDI (tmp_tmp1, MAKEDI (16760832, 0)))) {
+if (ANDIF (GEDI (tmp_tmp1, MAKEDI (8388608, 0)), LEDI (tmp_tmp1, MAKEDI (16760832, 0)))) {
tmp_tmp1 = MAKEDI (16760832, 0);
} else {
tmp_tmp1 = ANDDI (ADDDI (m32r_h_accum_get (current_cpu), MAKEDI (0, 1073741824)), MAKEDI (0xffffffff, 0x80000000));
@@ -1436,7 +1436,7 @@ SETMEMSI (current_cpu, tmp_new_src2, * FLD (f_r1));
new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBSI (* FLD (f_r1), * FLD (f_r2));
temp1 = SUBOFSI (* FLD (f_r1), * FLD (f_r2), 0);
* FLD (f_r1) = temp0;
@@ -1455,7 +1455,7 @@ do {
new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBCSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
temp1 = SUBCFSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
* FLD (f_r1) = temp0;
@@ -1478,7 +1478,7 @@ m32r_h_cr_set (current_cpu, 6, ADDSI (CPU (h_pc), 4));
TRACE_RESULT (current_cpu, "cr-6", 'x', m32r_h_cr_get (current_cpu, 6));
m32r_h_cr_set (current_cpu, 0, ANDSI (SLLSI (m32r_h_cr_get (current_cpu, 0), 8), 65408));
TRACE_RESULT (current_cpu, "cr-0", 'x', m32r_h_cr_get (current_cpu, 0));
- BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, do_trap (current_cpu, FLD (f_uimm4))));
+ BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, a_m32r_trap (current_cpu, FLD (f_uimm4))));
TRACE_RESULT (current_cpu, "pc", 'x', new_pc);
} while (0);
diff --git a/sim/m32r/sem.c b/sim/m32r/sem.c
index 8b866ae..629a085 100644
--- a/sim/m32r/sem.c
+++ b/sim/m32r/sem.c
@@ -288,7 +288,7 @@ SEM_FN_NAME (m32r,addv) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (* FLD (f_r1), * FLD (f_r2));
temp1 = ADDOFSI (* FLD (f_r1), * FLD (f_r2), 0);
* FLD (f_r1) = temp0;
@@ -322,7 +322,7 @@ SEM_FN_NAME (m32r,addv3) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 4);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (* FLD (f_r2), FLD (f_simm16));
temp1 = ADDOFSI (* FLD (f_r2), FLD (f_simm16), 0);
* FLD (f_r1) = temp0;
@@ -356,7 +356,7 @@ SEM_FN_NAME (m32r,addx) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDCSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
temp1 = ADDCFSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
* FLD (f_r1) = temp0;
@@ -1085,9 +1085,9 @@ SEM_FN_NAME (m32r,jl) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
int taken_p = 0;
do {
- SI temp1;SI temp0;
+ USI temp1;SI temp0;
temp0 = ADDSI (ANDSI (CPU (h_pc), -4), 4);
- temp1 = * FLD (f_r2);
+ temp1 = ANDSI (* FLD (f_r2), -4);
CPU (h_gr[14]) = temp0;
TRACE_RESULT (current_cpu, "gr-14", 'x', CPU (h_gr[14]));
BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, temp1));
@@ -1120,7 +1120,7 @@ SEM_FN_NAME (m32r,jmp) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 2);
int taken_p = 0;
- BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, * FLD (f_r2)));
+ BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, ANDSI (* FLD (f_r2), -4)));
taken_p = 1;
TRACE_RESULT (current_cpu, "pc", 'x', new_pc);
@@ -2115,10 +2115,10 @@ SEM_FN_NAME (m32r,rach) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
do {
DI tmp_tmp1;
tmp_tmp1 = ANDDI (m32r_h_accum_get (current_cpu), MAKEDI (16777215, 0xffffffff));
-if (ANDIFSI (GEDI (tmp_tmp1, MAKEDI (16383, 0x80000000)), LEDI (tmp_tmp1, MAKEDI (8388607, 0xffffffff)))) {
+if (ANDIF (GEDI (tmp_tmp1, MAKEDI (16383, 0x80000000)), LEDI (tmp_tmp1, MAKEDI (8388607, 0xffffffff)))) {
tmp_tmp1 = MAKEDI (16383, 0x80000000);
} else {
-if (ANDIFSI (GEDI (tmp_tmp1, MAKEDI (8388608, 0)), LEDI (tmp_tmp1, MAKEDI (16760832, 0)))) {
+if (ANDIF (GEDI (tmp_tmp1, MAKEDI (8388608, 0)), LEDI (tmp_tmp1, MAKEDI (16760832, 0)))) {
tmp_tmp1 = MAKEDI (16760832, 0);
} else {
tmp_tmp1 = ANDDI (ADDDI (m32r_h_accum_get (current_cpu), MAKEDI (0, 1073741824)), MAKEDI (0xffffffff, 0x80000000));
@@ -2705,7 +2705,7 @@ SEM_FN_NAME (m32r,subv) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBSI (* FLD (f_r1), * FLD (f_r2));
temp1 = SUBOFSI (* FLD (f_r1), * FLD (f_r2), 0);
* FLD (f_r1) = temp0;
@@ -2739,7 +2739,7 @@ SEM_FN_NAME (m32r,subx) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
CIA new_pc = SEM_NEXT_PC (sem_arg, 2);
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBCSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
temp1 = SUBCFSI (* FLD (f_r1), * FLD (f_r2), CPU (h_cond));
* FLD (f_r1) = temp0;
@@ -2778,7 +2778,7 @@ m32r_h_cr_set (current_cpu, 6, ADDSI (CPU (h_pc), 4));
TRACE_RESULT (current_cpu, "cr-6", 'x', m32r_h_cr_get (current_cpu, 6));
m32r_h_cr_set (current_cpu, 0, ANDSI (SLLSI (m32r_h_cr_get (current_cpu, 0), 8), 65408));
TRACE_RESULT (current_cpu, "cr-0", 'x', m32r_h_cr_get (current_cpu, 0));
- BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, do_trap (current_cpu, FLD (f_uimm4))));
+ BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, a_m32r_trap (current_cpu, FLD (f_uimm4))));
taken_p = 1;
TRACE_RESULT (current_cpu, "pc", 'x', new_pc);
} while (0);
@@ -2835,4 +2835,4 @@ SEM_FN_NAME (m32r,illegal) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
return 0;
}
-#endif /* WITH_SCACHE */
+#endif /* WANT_CPU */
diff --git a/sim/m32r/semx.c b/sim/m32r/semx.c
index a16ddac..b6da4f5 100644
--- a/sim/m32r/semx.c
+++ b/sim/m32r/semx.c
@@ -318,7 +318,7 @@ SEM_FN_NAME (m32rx,addv) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_ex
EXTRACT_FMT_ADDV_CODE
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (OPRND (dr), OPRND (sr));
temp1 = ADDOFSI (OPRND (dr), OPRND (sr), 0);
CPU (h_gr[f_r1]) = temp0;
@@ -355,7 +355,7 @@ SEM_FN_NAME (m32rx,addv3) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_e
EXTRACT_FMT_ADDV3_CODE
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDSI (OPRND (sr), OPRND (simm16));
temp1 = ADDOFSI (OPRND (sr), OPRND (simm16), 0);
CPU (h_gr[f_r1]) = temp0;
@@ -392,7 +392,7 @@ SEM_FN_NAME (m32rx,addx) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_ex
EXTRACT_FMT_ADDX_CODE
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = ADDCSI (OPRND (dr), OPRND (sr), OPRND (condbit));
temp1 = ADDCFSI (OPRND (dr), OPRND (sr), OPRND (condbit));
CPU (h_gr[f_r1]) = temp0;
@@ -1500,7 +1500,7 @@ SEM_FN_NAME (m32rx,jl) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_exec
EXTRACT_FMT_JL_CODE
do {
- SI temp1;SI temp0;
+ USI temp1;SI temp0;
temp0 = ADDSI (ANDSI (OPRND (pc), -4), 4);
temp1 = ANDSI (OPRND (sr), -4);
CPU (h_gr[14]) = temp0;
@@ -1598,7 +1598,7 @@ SEM_FN_NAME (m32rx,ld_d) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_ex
EXTRACT_FMT_LD_D_VARS /* f-op1 f-r1 f-op2 f-r2 f-simm16 */
EXTRACT_FMT_LD_D_CODE
- CPU (h_gr[f_r1]) = OPRND (h_memory_add_WI_sr_slo16);
+ CPU (h_gr[f_r1]) = OPRND (h_memory_add__VM_sr_slo16);
TRACE_RESULT (current_cpu, "dr", 'x', CPU (h_gr[f_r1]));
PROFILE_COUNT_INSN (current_cpu, 0, abuf->idesc->num);
@@ -1658,7 +1658,7 @@ SEM_FN_NAME (m32rx,ldb_d) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_e
EXTRACT_FMT_LDB_D_VARS /* f-op1 f-r1 f-op2 f-r2 f-simm16 */
EXTRACT_FMT_LDB_D_CODE
- CPU (h_gr[f_r1]) = EXTQISI (OPRND (h_memory_add_WI_sr_slo16));
+ CPU (h_gr[f_r1]) = EXTQISI (OPRND (h_memory_add__VM_sr_slo16));
TRACE_RESULT (current_cpu, "dr", 'x', CPU (h_gr[f_r1]));
PROFILE_COUNT_INSN (current_cpu, 0, abuf->idesc->num);
@@ -1718,7 +1718,7 @@ SEM_FN_NAME (m32rx,ldh_d) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_e
EXTRACT_FMT_LDH_D_VARS /* f-op1 f-r1 f-op2 f-r2 f-simm16 */
EXTRACT_FMT_LDH_D_CODE
- CPU (h_gr[f_r1]) = EXTHISI (OPRND (h_memory_add_WI_sr_slo16));
+ CPU (h_gr[f_r1]) = EXTHISI (OPRND (h_memory_add__VM_sr_slo16));
TRACE_RESULT (current_cpu, "dr", 'x', CPU (h_gr[f_r1]));
PROFILE_COUNT_INSN (current_cpu, 0, abuf->idesc->num);
@@ -1778,7 +1778,7 @@ SEM_FN_NAME (m32rx,ldub_d) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_
EXTRACT_FMT_LDB_D_VARS /* f-op1 f-r1 f-op2 f-r2 f-simm16 */
EXTRACT_FMT_LDB_D_CODE
- CPU (h_gr[f_r1]) = ZEXTQISI (OPRND (h_memory_add_WI_sr_slo16));
+ CPU (h_gr[f_r1]) = ZEXTQISI (OPRND (h_memory_add__VM_sr_slo16));
TRACE_RESULT (current_cpu, "dr", 'x', CPU (h_gr[f_r1]));
PROFILE_COUNT_INSN (current_cpu, 0, abuf->idesc->num);
@@ -1838,7 +1838,7 @@ SEM_FN_NAME (m32rx,lduh_d) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_
EXTRACT_FMT_LDH_D_VARS /* f-op1 f-r1 f-op2 f-r2 f-simm16 */
EXTRACT_FMT_LDH_D_CODE
- CPU (h_gr[f_r1]) = ZEXTHISI (OPRND (h_memory_add_WI_sr_slo16));
+ CPU (h_gr[f_r1]) = ZEXTHISI (OPRND (h_memory_add__VM_sr_slo16));
TRACE_RESULT (current_cpu, "dr", 'x', CPU (h_gr[f_r1]));
PROFILE_COUNT_INSN (current_cpu, 0, abuf->idesc->num);
@@ -3288,7 +3288,7 @@ SEM_FN_NAME (m32rx,subv) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_ex
EXTRACT_FMT_ADDV_CODE
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBSI (OPRND (dr), OPRND (sr));
temp1 = SUBOFSI (OPRND (dr), OPRND (sr), 0);
CPU (h_gr[f_r1]) = temp0;
@@ -3325,7 +3325,7 @@ SEM_FN_NAME (m32rx,subx) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par_ex
EXTRACT_FMT_ADDX_CODE
do {
- BI temp1;SI temp0;
+ UBI temp1;SI temp0;
temp0 = SUBCSI (OPRND (dr), OPRND (sr), OPRND (condbit));
temp1 = SUBCFSI (OPRND (dr), OPRND (sr), OPRND (condbit));
CPU (h_gr[f_r1]) = temp0;
@@ -3367,7 +3367,7 @@ m32rx_h_cr_set (current_cpu, 6, ADDSI (OPRND (pc), 4));
TRACE_RESULT (current_cpu, "cr-6", 'x', m32rx_h_cr_get (current_cpu, 6));
m32rx_h_cr_set (current_cpu, 0, ANDSI (SLLSI (OPRND (h_cr_0), 8), 65408));
TRACE_RESULT (current_cpu, "cr-0", 'x', m32rx_h_cr_get (current_cpu, 0));
- BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, do_trap (current_cpu, OPRND (uimm4))));
+ BRANCH_NEW_PC (new_pc, SEM_BRANCH_VIA_ADDR (sem_arg, a_m32r_trap (current_cpu, OPRND (uimm4))));
taken_p = 1;
TRACE_RESULT (current_cpu, "pc", 'x', new_pc);
} while (0);
@@ -3748,4 +3748,4 @@ SEM_FN_NAME (m32rx,illegal) (SIM_CPU *current_cpu, SEM_ARG sem_arg, PAREXEC *par
return 0;
}
-#endif /* WITH_SCACHE */
+#endif /* WANT_CPU */