diff options
author | Curtis Dunham <Curtis.Dunham@arm.com> | 2015-03-23 06:57:38 -0400 |
---|---|---|
committer | Curtis Dunham <Curtis.Dunham@arm.com> | 2015-03-23 06:57:38 -0400 |
commit | bcea57afc38e6ae852ffa7df9f5fcab63e92ff0d (patch) | |
tree | ac653903e69c6f8e6015918bc2ed70843ba0cf5f /configs/common/Simulation.py | |
parent | 564482c78283c749dc537cb9c1b2d788bf306a82 (diff) | |
download | gem5-bcea57afc38e6ae852ffa7df9f5fcab63e92ff0d.tar.xz |
config: Add ability to exit simulation after initialization
When using gem5 as a slave simulator, it will not advance the
clock on its own and depends on the master simulator calling
simulate(). This new option lets us use the Python scripts
to do all the configuration while stopping short of actually
simulating anything.
Diffstat (limited to 'configs/common/Simulation.py')
-rw-r--r-- | configs/common/Simulation.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/configs/common/Simulation.py b/configs/common/Simulation.py index 72d3d0e97..230701c23 100644 --- a/configs/common/Simulation.py +++ b/configs/common/Simulation.py @@ -581,6 +581,13 @@ def run(options, root, testsys, cpu_class): cpt_starttick, checkpoint_dir = findCptDir(options, cptdir, testsys) m5.instantiate(checkpoint_dir) + # Initialization is complete. If we're not in control of simulation + # (that is, if we're a slave simulator acting as a component in another + # 'master' simulator) then we're done here. The other simulator will + # call simulate() directly. --initialize-only is used to indicate this. + if options.initialize_only: + return + # Handle the max tick settings now that tick frequency was resolved # during system instantiation # NOTE: the maxtick variable here is in absolute ticks, so it must |