From ec20ee2f7cdaff22e63a5ae492f925d0d4839849 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sat, 28 Jan 2012 07:24:34 -0800 Subject: SE/FS: Make SE vs. FS mode a runtime parameter. --- src/sim/Root.py | 3 +++ src/sim/full_system.hh | 4 +--- src/sim/root.cc | 5 +++++ 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'src/sim') diff --git a/src/sim/Root.py b/src/sim/Root.py index e15de1554..daa0a903f 100644 --- a/src/sim/Root.py +++ b/src/sim/Root.py @@ -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") diff --git a/src/sim/full_system.hh b/src/sim/full_system.hh index 911648f3a..e67fc11a9 100644 --- a/src/sim/full_system.hh +++ b/src/sim/full_system.hh @@ -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__ diff --git a/src/sim/root.cc b/src/sim/root.cc index dd7c12077..c47ada30e 100644 --- a/src/sim/root.cc +++ b/src/sim/root.cc @@ -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); } -- cgit v1.2.3