SE/FS: Make SE vs. FS mode a runtime parameter.

This commit is contained in:
Gabe Black
2012-01-28 07:24:34 -08:00
parent eab5c60286
commit ec20ee2f7c
47 changed files with 55 additions and 49 deletions

View File

@@ -28,6 +28,7 @@
# Authors: Nathan Binkert
from m5.SimObject import SimObject
from m5.defines import buildEnv
from m5.params import *
from m5.util import fatal
@@ -58,6 +59,8 @@ class Root(SimObject):
type = 'Root'
full_system = Param.Bool("if this is a full system simulation")
# Time syncing prevents the simulation from running faster than real time.
time_sync_enable = Param.Bool(False, "whether time syncing is enabled")
time_sync_period = Param.Clock("100ms", "how often to sync with real time")

View File

@@ -31,8 +31,6 @@
#ifndef __SIM_FULL_SYSTEM_HH__
#define __SIM_FULL_SYSTEM_HH__
#include "config/full_system.hh"
static const bool FullSystem = FULL_SYSTEM;
extern bool FullSystem;
#endif // __SIM_FULL_SYSTEM_HH__

View File

@@ -33,6 +33,7 @@
#include "base/misc.hh"
#include "debug/TimeSync.hh"
#include "sim/full_system.hh"
#include "sim/root.hh"
Root *Root::_root = NULL;
@@ -123,6 +124,8 @@ Root::loadState(Checkpoint *cp)
timeSyncEnable(params()->time_sync_enable);
}
bool FullSystem;
Root *
RootParams::create()
{
@@ -132,5 +135,7 @@ RootParams::create()
created = true;
FullSystem = full_system;
return new Root(this);
}