config: Fix checkpoint restore in C++ config example
This patch fixes the checkpoint restore option in the example of C++ configuration (util/cxx_config). The fix introduces a call to config_manager->startup() (which calls startup on all SimObjects managed by that manager) to replicate the loop of SimObject::startup calls in src/python/m5/simulate.py::simulate guarded by need_startup. As util/cxx_config/main.cc is a C++ analogue of src/python/mt/simulate.py, it should make a similar set of calls.
This commit is contained in:
parent
481eb6ae80
commit
27b7b9e561
1 changed files with 2 additions and 2 deletions
|
@ -88,7 +88,7 @@ usage(const std::string &prog_name)
|
|||
" -s <dir> <ticks> -- save checkpoint to dir after"
|
||||
" the given\n"
|
||||
" number of ticks\n"
|
||||
" -r <dir> -- restore checkpoint to dir\n"
|
||||
" -r <dir> -- restore checkpoint from dir\n"
|
||||
" -c <from> <to> <ticks> -- switch from cpu 'from' to cpu"
|
||||
" 'to' after\n"
|
||||
" the given number of ticks\n"
|
||||
|
@ -226,7 +226,6 @@ main(int argc, char **argv)
|
|||
GlobalSimLoopExitEvent *exit_event = NULL;
|
||||
|
||||
if (checkpoint_save) {
|
||||
|
||||
exit_event = simulate(pre_run_time);
|
||||
|
||||
DrainManager drain_manager;
|
||||
|
@ -265,6 +264,7 @@ main(int argc, char **argv)
|
|||
|
||||
Serializable::unserializeGlobals(checkpoint);
|
||||
config_manager->loadState(checkpoint);
|
||||
config_manager->startup();
|
||||
|
||||
config_manager->drainResume();
|
||||
|
||||
|
|
Loading…
Reference in a new issue