From 4992680ea28928b165e9fe16d19f4630c66af173 Mon Sep 17 00:00:00 2001 From: Nathan Binkert Date: Fri, 5 Mar 2004 05:44:11 -0500 Subject: add ticks per picosecond --HG-- extra : convert_revision : 1585e7f89340b941e699db6b81080af58500a7c2 --- sim/universe.cc | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sim') diff --git a/sim/universe.cc b/sim/universe.cc index feede514e..d6c849ac7 100644 --- a/sim/universe.cc +++ b/sim/universe.cc @@ -47,6 +47,7 @@ Tick ticksPerSecond; double __ticksPerMS; double __ticksPerUS; double __ticksPerNS; +double __ticksPerPS; string outputDirectory; ostream *outputStream; @@ -79,6 +80,7 @@ UniverseParamContext::checkParams() __ticksPerMS = freq / 1.0e3; __ticksPerUS = freq / 1.0e6; __ticksPerNS = freq / 1.0e9; + __ticksPerPS = freq / 1.0e12; if (universe_output_dir.isValid()) { outputDirectory = universe_output_dir; -- cgit v1.2.3 From ec6265b044b131fbd9b2b8b97788646c29293d1e Mon Sep 17 00:00:00 2001 From: Nathan Binkert Date: Fri, 5 Mar 2004 05:45:45 -0500 Subject: constructor option to make the wrapped event autodelete --HG-- extra : convert_revision : 8663c874c533685adf21eea968b08b40b7d7b665 --- sim/eventq.hh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'sim') diff --git a/sim/eventq.hh b/sim/eventq.hh index 60a61fa29..ed37fd4f4 100644 --- a/sim/eventq.hh +++ b/sim/eventq.hh @@ -243,10 +243,13 @@ class EventWrapper : public Event T *object; public: - EventWrapper(T *obj, EventQueue *q = &mainEventQueue, + EventWrapper(T *obj, bool del = false, EventQueue *q = &mainEventQueue, Priority p = Default_Pri) : Event(q, p), object(obj) - {} + { + if (del) + setFlags(AutoDelete); + } void process() { (object->*F)(); } }; @@ -324,6 +327,8 @@ inline void Event::schedule(Tick t) { assert(!scheduled()); + assert(t >= curTick); + setFlags(Scheduled); #if TRACING_ON when_scheduled = curTick; -- cgit v1.2.3