diff options
author | Nathan Binkert <binkertn@umich.edu> | 2004-01-30 16:01:26 -0500 |
---|---|---|
committer | Nathan Binkert <binkertn@umich.edu> | 2004-01-30 16:01:26 -0500 |
commit | 4ae64216c3c27e9f1e35ce93114f932f3d2c3361 (patch) | |
tree | fe3ca24667628af7c2e5a94a3bcae585fb492855 /sim/serialize.cc | |
parent | a0c3e61d320e72bbdddf4cea1413f6638e0faf45 (diff) | |
parent | 2f4f7aacf77dea16795a4052613da6092f6efc31 (diff) | |
download | gem5-4ae64216c3c27e9f1e35ce93114f932f3d2c3361.tar.xz |
Merge
--HG--
extra : convert_revision : 8690e31b64235874d74ea4a1123a408610fb115b
Diffstat (limited to 'sim/serialize.cc')
-rw-r--r-- | sim/serialize.cc | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/sim/serialize.cc b/sim/serialize.cc index 33956c6e7..281e7cfc8 100644 --- a/sim/serialize.cc +++ b/sim/serialize.cc @@ -305,10 +305,9 @@ class SerializeParamContext : public ParamContext SerializeParamContext serialParams("serialize"); -Param<string> serialize_dir(&serialParams, - "dir", +Param<string> serialize_dir(&serialParams, "dir", "dir to stick checkpoint in " - "(sprintf format with cycle #)", "m5.%012d"); + "(sprintf format with cycle #)"); Param<Counter> serialize_cycle(&serialParams, "cycle", @@ -333,11 +332,18 @@ SerializeParamContext::~SerializeParamContext() void SerializeParamContext::checkParams() { - checkpointDirBase = serialize_dir; + if (serialize_dir.isValid()) { + checkpointDirBase = serialize_dir; + } else { + if (outputDirectory.empty()) + checkpointDirBase = "m5.%012d"; + else + checkpointDirBase = outputDirectory + "cpt.%012d"; + } + // guarantee that directory ends with a '/' - if (checkpointDirBase[checkpointDirBase.size() - 1] != '/') { + if (checkpointDirBase[checkpointDirBase.size() - 1] != '/') checkpointDirBase += "/"; - } if (serialize_cycle > 0) Checkpoint::setup(serialize_cycle, serialize_period); |