diff options
author | Mike Frysinger <vapier@gentoo.org> | 2016-08-12 23:43:27 +0800 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2022-12-21 00:00:00 -0500 |
commit | 6adb1071134b5ca69d512dcfaf564774096d32dd (patch) | |
tree | 7247dd2686d9ee39905ba5ae69a501670969d001 /sim | |
parent | ffeb72b44c8c5060465005178dd3a4a304117a58 (diff) | |
download | gdb-6adb1071134b5ca69d512dcfaf564774096d32dd.zip gdb-6adb1071134b5ca69d512dcfaf564774096d32dd.tar.gz gdb-6adb1071134b5ca69d512dcfaf564774096d32dd.tar.bz2 |
sim: bfin: invert sim_cpu storage
Diffstat (limited to 'sim')
-rw-r--r-- | sim/bfin/interp.c | 5 | ||||
-rw-r--r-- | sim/bfin/sim-main.h | 10 |
2 files changed, 5 insertions, 10 deletions
diff --git a/sim/bfin/interp.c b/sim/bfin/interp.c index f63690c..f4071ce 100644 --- a/sim/bfin/interp.c +++ b/sim/bfin/interp.c @@ -643,8 +643,6 @@ free_state (SIM_DESC sd) static void bfin_initialize_cpu (SIM_DESC sd, SIM_CPU *cpu) { - memset (&cpu->state, 0, sizeof (cpu->state)); - PROFILE_TOTAL_INSN_COUNT (CPU_PROFILE_DATA (cpu)) = 0; bfin_model_cpu_init (sd, cpu); @@ -674,7 +672,8 @@ sim_open (SIM_OPEN_KIND kind, host_callback *callback, current_target_byte_order = BFD_ENDIAN_LITTLE; /* The cpu data is kept in a separately allocated chunk of memory. */ - if (sim_cpu_alloc_all (sd, 1) != SIM_RC_OK) + if (sim_cpu_alloc_all_extra (sd, 1, sizeof (struct bfin_cpu_state)) + != SIM_RC_OK) { free_state (sd); return 0; diff --git a/sim/bfin/sim-main.h b/sim/bfin/sim-main.h index 42dfd54..48e54c8 100644 --- a/sim/bfin/sim-main.h +++ b/sim/bfin/sim-main.h @@ -21,6 +21,8 @@ #ifndef _BFIN_MAIN_SIM_H_ #define _BFIN_MAIN_SIM_H_ +#define SIM_HAVE_COMMON_SIM_CPU + #include "sim-basics.h" #include "arch.h" #include "sim-base.h" @@ -29,13 +31,7 @@ #include "machs.h" -struct _sim_cpu { - /* ... simulator specific members ... */ - struct bfin_cpu_state state; - sim_cpu_base base; -}; -#define BFIN_CPU_STATE ((cpu)->state) - +#define BFIN_CPU_STATE (*(struct bfin_cpu_state *) CPU_ARCH_DATA (cpu)) #define STATE_BOARD_DATA(sd) ((struct bfin_board_data *) STATE_ARCH_DATA (sd)) #include "sim-config.h" |