diff options
author | Mike Frysinger <vapier@gentoo.org> | 2016-08-12 22:12:41 +0800 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2021-04-12 00:14:32 -0400 |
commit | d5a71b1131778cf2a023855966831eb2457d50d6 (patch) | |
tree | 77243d6b326ca6dfa0ebb60446a9bc518b11617e /sim/common/sim-cpu.c | |
parent | 32d715691aa037f2838b41fa257c2e239d67c134 (diff) | |
download | gdb-d5a71b1131778cf2a023855966831eb2457d50d6.zip gdb-d5a71b1131778cf2a023855966831eb2457d50d6.tar.gz gdb-d5a71b1131778cf2a023855966831eb2457d50d6.tar.bz2 |
sim: cgen: move cgen_cpu_max_extra_bytes logic into the common code
Every arch handles this the same way, so move it to the common code.
This will also make unifying the sim_cpu structure easier.
Diffstat (limited to 'sim/common/sim-cpu.c')
-rw-r--r-- | sim/common/sim-cpu.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sim/common/sim-cpu.c b/sim/common/sim-cpu.c index a00846c..552e48c 100644 --- a/sim/common/sim-cpu.c +++ b/sim/common/sim-cpu.c @@ -23,17 +23,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include "bfd.h" /* Allocate space for all cpus in the simulator. - Space for the cpu must currently exist prior to parsing ARGV. - EXTRA_BYTES is additional space to allocate for the sim_cpu struct. */ + Space for the cpu must currently exist prior to parsing ARGV. */ /* ??? wip. better solution must wait. */ SIM_RC -sim_cpu_alloc_all (SIM_DESC sd, int ncpus, int extra_bytes) +sim_cpu_alloc_all (SIM_DESC sd, int ncpus) { int c; for (c = 0; c < ncpus; ++c) - STATE_CPU (sd, c) = sim_cpu_alloc (sd, extra_bytes); + STATE_CPU (sd, c) = sim_cpu_alloc (sd); return SIM_RC_OK; } @@ -41,8 +40,14 @@ sim_cpu_alloc_all (SIM_DESC sd, int ncpus, int extra_bytes) EXTRA_BYTES is additional space to allocate for the sim_cpu struct. */ sim_cpu * -sim_cpu_alloc (SIM_DESC sd, int extra_bytes) +sim_cpu_alloc (SIM_DESC sd) { + int extra_bytes = 0; + +#ifdef CGEN_ARCH + extra_bytes += cgen_cpu_max_extra_bytes (); +#endif + return zalloc (sizeof (sim_cpu) + extra_bytes); } |