summaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
Diffstat (limited to 'sim')
-rw-r--r--sim/eventq.hh6
-rw-r--r--sim/process.cc4
-rw-r--r--sim/system.hh8
-rw-r--r--sim/universe.cc2
4 files changed, 11 insertions, 9 deletions
diff --git a/sim/eventq.hh b/sim/eventq.hh
index d62e7df10..a0bb851c0 100644
--- a/sim/eventq.hh
+++ b/sim/eventq.hh
@@ -305,7 +305,11 @@ class EventQueue : public Serializable
if (nextTick() > when)
break;
- assert(head->when() >= when && "event scheduled in the past");
+ /**
+ * @todo this assert is a good bug catcher. I need to
+ * make it true again.
+ */
+ //assert(head->when() >= when && "event scheduled in the past");
serviceOne();
}
}
diff --git a/sim/process.cc b/sim/process.cc
index c18b31da7..3541fd040 100644
--- a/sim/process.cc
+++ b/sim/process.cc
@@ -162,9 +162,7 @@ Process::startup()
// first exec context for this process... initialize & enable
ExecContext *xc = execContexts[0];
- // mark this context as active.
- // activate with zero delay so that we start ticking right
- // away on cycle 0
+ // mark this context as active so it will start ticking.
xc->activate(0);
}
diff --git a/sim/system.hh b/sim/system.hh
index 07881ff01..4f003f282 100644
--- a/sim/system.hh
+++ b/sim/system.hh
@@ -37,14 +37,15 @@
#include "kern/system_events.hh"
#include "sim/sim_object.hh"
+class BaseCPU;
+class ExecContext;
+class GDBListener;
class MemoryController;
+class ObjectFile;
class PhysicalMemory;
class Platform;
class RemoteGDB;
-class GDBListener;
class SymbolTable;
-class ObjectFile;
-class ExecContext;
namespace Kernel { class Binning; }
class System : public SimObject
@@ -101,6 +102,7 @@ class System : public SimObject
struct Params
{
std::string name;
+ Tick boot_cpu_frequency;
MemoryController *memctrl;
PhysicalMemory *physmem;
uint64_t init_param;
diff --git a/sim/universe.cc b/sim/universe.cc
index 5ae41eefd..ecf54c2e7 100644
--- a/sim/universe.cc
+++ b/sim/universe.cc
@@ -108,8 +108,6 @@ CREATE_SIM_OBJECT(Root)
outputStream = simout.find(output_file);
Root *root = new Root(getInstanceName());
- ticksPerSecond = frequency;
-
using namespace Clock;
Frequency = frequency;
Float::s = static_cast<double>(Frequency);