aboutsummaryrefslogtreecommitdiff
path: root/sim/v850/sim-main.h
diff options
context:
space:
mode:
Diffstat (limited to 'sim/v850/sim-main.h')
-rw-r--r--sim/v850/sim-main.h24
1 files changed, 15 insertions, 9 deletions
diff --git a/sim/v850/sim-main.h b/sim/v850/sim-main.h
index 95838ba..f38ef1c 100644
--- a/sim/v850/sim-main.h
+++ b/sim/v850/sim-main.h
@@ -43,11 +43,13 @@ struct sim_state {
#else
#define STATE_CPU(sd,n) (&(sd)->cpu[0])
#endif
+#if 0
SIM_ADDR rom_size;
SIM_ADDR low_end;
SIM_ADDR high_start;
SIM_ADDR high_base;
void *mem;
+#endif
sim_state_base base;
};
@@ -158,14 +160,18 @@ extern struct simops Simops[];
/* Function declarations. */
-uint32 get_word PARAMS ((uint8 *));
-uint16 get_half PARAMS ((uint8 *));
-uint8 get_byte PARAMS ((uint8 *));
-void put_word PARAMS ((uint8 *, uint32));
-void put_half PARAMS ((uint8 *, uint16));
-void put_byte PARAMS ((uint8 *, uint8));
+#define IMEM(EA) \
+sim_core_read_aligned_2 (STATE_CPU (sd, 0), \
+ PC, sim_core_execute_map, (EA))
+
+#define IMEM_IMMED(EA,N) \
+sim_core_read_aligned_2 (STATE_CPU (sd, 0), \
+ PC, sim_core_execute_map, (EA) + (N) * 4)
-extern uint32 load_mem PARAMS ((SIM_ADDR addr, int len));
-extern void store_mem PARAMS ((SIM_ADDR addr, int len, uint32 data));
+#define load_mem(ADDR,LEN) \
+sim_core_read_unaligned_##LEN (STATE_CPU (simulator, 0), \
+ PC, sim_core_read_map, (ADDR))
-extern uint8 *map PARAMS ((SIM_ADDR addr));
+#define store_mem(ADDR,LEN,DATA) \
+sim_core_write_unaligned_##LEN (STATE_CPU (simulator, 0), \
+ PC, sim_core_write_map, (ADDR), (DATA))