diff options
Diffstat (limited to 'sim/h8300/sim-main.h')
-rw-r--r-- | sim/h8300/sim-main.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/sim/h8300/sim-main.h b/sim/h8300/sim-main.h index 964388a..7126fa3 100644 --- a/sim/h8300/sim-main.h +++ b/sim/h8300/sim-main.h @@ -138,7 +138,7 @@ struct _sim_cpu { /* The sim_state struct. */ struct sim_state { - struct _sim_cpu *cpu; + sim_cpu *cpu[MAX_NR_PROCESSORS]; unsigned int sim_cache_size; decoded_inst *sim_cache; unsigned short *cache_idx; @@ -155,7 +155,11 @@ struct sim_state { #define CIA_GET(CPU) (cpu_get_pc (CPU)) #define CIA_SET(CPU, VAL) (cpu_set_pc ((CPU), (VAL))) -#define STATE_CPU(SD, N) ((SD)->cpu) /* Single Processor. */ +#if (WITH_SMP) +#define STATE_CPU(sd,n) ((sd)->cpu[n]) +#else +#define STATE_CPU(sd,n) ((sd)->cpu[0]) +#endif #define cpu_set_pc(CPU, VAL) (((CPU)->pc) = (VAL)) #define cpu_get_pc(CPU) (((CPU)->pc)) |