Gabe Black has submitted this change and it was merged. (
https://gem5-review.googlesource.com/4740 )
Change subject: sim: Stop using loadState in the Root SimObject.
......................................................................
sim: Stop using loadState in the Root SimObject.
The primary difference between using loadState and letting the default
implementation of loadState call unserialize is that whether or not that
code
is called is dependent on that object being associated with a section in the
checkpoint file being unserialized. Since there's always a "root" object,
there should always be a section for it in the checkpoint and those should
be
equivalent.
This removes one custom implementation of the loadState function.
Change-Id: Ia674ccc18e141f38746e22ccfddc21475b1a0731
Reviewed-on: https://gem5-review.googlesource.com/4740
Reviewed-by: Jason Lowe-Power <[email protected]>
Reviewed-by: Andreas Sandberg <[email protected]>
Maintainer: Andreas Sandberg <[email protected]>
---
M src/sim/root.cc
M src/sim/root.hh
2 files changed, 3 insertions(+), 19 deletions(-)
Approvals:
Jason Lowe-Power: Looks good to me, approved
Andreas Sandberg: Looks good to me, approved; Looks good to me, approved
diff --git a/src/sim/root.cc b/src/sim/root.cc
index f4aabad..41adf1c 100644
--- a/src/sim/root.cc
+++ b/src/sim/root.cc
@@ -119,19 +119,12 @@
}
void
-Root::initState()
+Root::startup()
{
timeSyncEnable(params()->time_sync_enable);
}
void
-Root::loadState(CheckpointIn &cp)
-{
- SimObject::loadState(cp);
- timeSyncEnable(params()->time_sync_enable);
-}
-
-void
Root::serialize(CheckpointOut &cp) const
{
SERIALIZE_SCALAR(FullSystem);
@@ -139,10 +132,6 @@
SERIALIZE_SCALAR(isa);
}
-void
-Root::unserialize(CheckpointIn &cp)
-{}
-
bool FullSystem;
unsigned int FullSystemInt;
diff --git a/src/sim/root.hh b/src/sim/root.hh
index db207a7..c5f42b8 100644
--- a/src/sim/root.hh
+++ b/src/sim/root.hh
@@ -103,16 +103,11 @@
Root(Params *p);
- /** Schedule the timesync event at loadState() so that curTick is
correct
+ /** Schedule the timesync event at startup().
*/
- void loadState(CheckpointIn &cp) override;
-
- /** Schedule the timesync event at initState() when not unserializing
- */
- void initState() override;
+ void startup() override;
void serialize(CheckpointOut &cp) const override;
- void unserialize(CheckpointIn &cp) override;
};
#endif // __SIM_ROOT_HH__
--
To view, visit https://gem5-review.googlesource.com/4740
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Ia674ccc18e141f38746e22ccfddc21475b1a0731
Gerrit-Change-Number: 4740
Gerrit-PatchSet: 3
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-Assignee: Jason Lowe-Power <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Gabe Black <[email protected]>
Gerrit-Reviewer: Jason Lowe-Power <[email protected]>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev