diff options
Diffstat (limited to 'src/sim')
-rw-r--r-- | src/sim/sim_object.cc | 27 | ||||
-rw-r--r-- | src/sim/sim_object.hh | 1 |
2 files changed, 6 insertions, 22 deletions
diff --git a/src/sim/sim_object.cc b/src/sim/sim_object.cc index 8919f3e72..9ac0b7fff 100644 --- a/src/sim/sim_object.cc +++ b/src/sim/sim_object.cc @@ -38,7 +38,7 @@ #include "base/misc.hh" #include "base/trace.hh" #include "base/types.hh" -#include "debug/Config.hh" +#include "debug/Checkpoint.hh" #include "sim/sim_object.hh" #include "sim/stats.hh" @@ -78,8 +78,12 @@ SimObject::init() void SimObject::loadState(Checkpoint *cp) { - if (cp->sectionExists(name())) + if (cp->sectionExists(name())) { + DPRINTF(Checkpoint, "unserializing\n"); unserialize(cp, name()); + } else { + DPRINTF(Checkpoint, "no checkpoint section found\n"); + } } void @@ -126,25 +130,6 @@ SimObject::serializeAll(ostream &os) } } -void -SimObject::unserializeAll(Checkpoint *cp) -{ - SimObjectList::reverse_iterator ri = simObjectList.rbegin(); - SimObjectList::reverse_iterator rend = simObjectList.rend(); - - for (; ri != rend; ++ri) { - SimObject *obj = *ri; - DPRINTFR(Config, "Unserializing '%s'\n", - obj->name()); - if(cp->sectionExists(obj->name())) - obj->unserialize(cp, obj->name()); - else - warn("Not unserializing '%s': no section found in checkpoint.\n", - obj->name()); - } -} - - #ifdef DEBUG // diff --git a/src/sim/sim_object.hh b/src/sim/sim_object.hh index d57a56ab8..995431845 100644 --- a/src/sim/sim_object.hh +++ b/src/sim/sim_object.hh @@ -138,7 +138,6 @@ class SimObject : public EventManager, public Serializable // static: call nameOut() & serialize() on all SimObjects static void serializeAll(std::ostream &); - static void unserializeAll(Checkpoint *cp); // Methods to drain objects in order to take checkpoints // Or switch from timing -> atomic memory model |