summaryrefslogtreecommitdiff
path: root/cpu/base_cpu.hh
diff options
context:
space:
mode:
authorNathan Binkert <binkertn@umich.edu>2004-11-03 20:46:33 -0500
committerNathan Binkert <binkertn@umich.edu>2004-11-03 20:46:33 -0500
commitd82e0d11d12cdc75ab3c7a51a36630f5bd0c0e11 (patch)
tree64a77bbf08c9bfe7e7d21a8bf3ea5d2ff2a7495c /cpu/base_cpu.hh
parent129b885abd30e72c0b3e19787da385af4af6e53e (diff)
downloadgem5-d82e0d11d12cdc75ab3c7a51a36630f5bd0c0e11.tar.xz
make activation of exec contexts happen in startup
the registration stuff all moves into BaseCPU cpu/base_cpu.cc: Move the registration stuff into the BaseCPU since all other CPUs use it. cpu/base_cpu.hh: Move the defer registration stuff into the BaseCPU since all other CPUs use it. cpu/simple_cpu/simple_cpu.cc: cpu/simple_cpu/simple_cpu.hh: registration stuff moved to base class sim/system.cc: the activation of exec contexts should happen at startup, not when they are registered. sim/system.hh: the system now has a startup function --HG-- extra : convert_revision : bb6a7c2da5a1ecf5fe7ede1078200bfe5245f8ef
Diffstat (limited to 'cpu/base_cpu.hh')
-rw-r--r--cpu/base_cpu.hh7
1 files changed, 4 insertions, 3 deletions
diff --git a/cpu/base_cpu.hh b/cpu/base_cpu.hh
index f75f00409..7e937c755 100644
--- a/cpu/base_cpu.hh
+++ b/cpu/base_cpu.hh
@@ -91,12 +91,12 @@ class BaseCPU : public SimObject
public:
#ifdef FULL_SYSTEM
- BaseCPU(const std::string &_name, int _number_of_threads,
+ BaseCPU(const std::string &_name, int _number_of_threads, bool _def_reg,
Counter max_insts_any_thread, Counter max_insts_all_threads,
Counter max_loads_any_thread, Counter max_loads_all_threads,
System *_system, Tick freq);
#else
- BaseCPU(const std::string &_name, int _number_of_threads,
+ BaseCPU(const std::string &_name, int _number_of_threads, bool _def_reg,
Counter max_insts_any_thread = 0,
Counter max_insts_all_threads = 0,
Counter max_loads_any_thread = 0,
@@ -105,8 +105,10 @@ class BaseCPU : public SimObject
virtual ~BaseCPU() {}
+ virtual void init();
virtual void regStats();
+ bool deferRegistration;
void registerExecContexts();
/// Prepare for another CPU to take over execution. Called by
@@ -140,7 +142,6 @@ class BaseCPU : public SimObject
#ifdef FULL_SYSTEM
System *system;
-
/**
* Serialize this object to the given output stream.
* @param os The stream to serialize to.