SE/FS: Make SE vs. FS mode a runtime parameter.
This commit is contained in:
@@ -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")
|
||||
|
||||
@@ -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__
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user