diff options
author | Andreas Sandberg <Andreas.Sandberg@arm.com> | 2012-09-25 11:49:40 -0500 |
---|---|---|
committer | Andreas Sandberg <Andreas.Sandberg@arm.com> | 2012-09-25 11:49:40 -0500 |
commit | 5f32eceeda92f45d253a0835c6643e786a91ba49 (patch) | |
tree | e407bf938291dc1d8ea2cf4feb81c4adb01553d4 | |
parent | d060a28a2938aff5446e2b800176208c72b698da (diff) | |
download | gem5-5f32eceeda92f45d253a0835c6643e786a91ba49.tar.xz |
sim: Remove SimObject::setMemoryMode
Remove SimObject::setMemoryMode from the main SimObject class since it
is only valid for the System class. In addition to removing the method
from the C++ sources, this patch also removes getMemoryMode and
changeTiming from SimObject.py and updates the simulation code to call
the (get|set)MemoryMode method on the System object instead.
-rw-r--r-- | src/python/m5/SimObject.py | 13 | ||||
-rw-r--r-- | src/python/m5/simulate.py | 6 | ||||
-rw-r--r-- | src/sim/sim_object.cc | 6 | ||||
-rw-r--r-- | src/sim/sim_object.hh | 7 |
4 files changed, 2 insertions, 30 deletions
diff --git a/src/python/m5/SimObject.py b/src/python/m5/SimObject.py index ae6b2035e..c8227c067 100644 --- a/src/python/m5/SimObject.py +++ b/src/python/m5/SimObject.py @@ -1050,19 +1050,6 @@ class SimObject(object): for portRef in self._port_refs.itervalues(): portRef.ccConnect() - def getMemoryMode(self): - if not isinstance(self, m5.objects.System): - return None - - return self._ccObject.getMemoryMode() - - def changeTiming(self, mode): - if isinstance(self, m5.objects.System): - # i don't know if there's a better way to do this - calling - # setMemoryMode directly from self._ccObject results in calling - # SimObject::setMemoryMode, not the System::setMemoryMode - self._ccObject.setMemoryMode(mode) - def takeOverFrom(self, old_cpu): self._ccObject.takeOverFrom(old_cpu._ccObject) diff --git a/src/python/m5/simulate.py b/src/python/m5/simulate.py index 0f2a546c1..17150cd4f 100644 --- a/src/python/m5/simulate.py +++ b/src/python/m5/simulate.py @@ -194,8 +194,7 @@ def changeToAtomic(system): if system.getMemoryMode() != objects.params.atomic: doDrain(system) print "Changing memory mode to atomic" - for obj in system.descendants(): - obj.changeTiming(objects.params.atomic) + system.setMemoryMode(objects.params.atomic) def changeToTiming(system): if not isinstance(system, (objects.Root, objects.System)): @@ -204,8 +203,7 @@ def changeToTiming(system): if system.getMemoryMode() != objects.params.timing: print "Changing memory mode to timing" - for obj in system.descendants(): - obj.changeTiming(objects.params.timing) + system.setMemoryMode(objects.params.timing) def switchCpus(cpuList): print "switching cpus" diff --git a/src/sim/sim_object.cc b/src/sim/sim_object.cc index 571989b02..866ce0ce2 100644 --- a/src/sim/sim_object.cc +++ b/src/sim/sim_object.cc @@ -164,12 +164,6 @@ SimObject::resume() } void -SimObject::setMemoryMode(Enums::MemoryMode new_mode) -{ - panic("setMemoryMode() should only be called on systems"); -} - -void SimObject::switchOut() { panic("Unimplemented!"); diff --git a/src/sim/sim_object.hh b/src/sim/sim_object.hh index 1640be404..4fa2b7f05 100644 --- a/src/sim/sim_object.hh +++ b/src/sim/sim_object.hh @@ -256,13 +256,6 @@ class SimObject : public EventManager, public Serializable virtual void resume(); /** - * Change the memory mode the simulator operates in. - * - * @note Should only be implemented in the System object. - */ - virtual void setMemoryMode(Enums::MemoryMode new_mode); - - /** * Prepare a CPU model to be switched out, invoked on active CPUs * that are about to be replaced. * |