From: Gabe Black Date: Thu, 14 Feb 2019 09:42:19 +0000 (-0800) Subject: systemc: Init some values in the scheduler for running without sc_main. X-Git-Tag: v19.0.0.0~1117 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e15e12134e1149a358e9ab28b3b8affbb75f53d0;p=gem5.git systemc: Init some values in the scheduler for running without sc_main. When running without sc_main, sc_start won't be called, and therefore runToTime and maxTick won't be initialized. To avoid the scheduler getting confused and behaving erratically, those values should be initialized to something that makes sense in situations where there's no sc_main. Change-Id: I6ddd7db9ecb36d716eb5ef75e1c38bb99a386092 Reviewed-on: https://gem5-review.googlesource.com/c/16443 Reviewed-by: Andreas Sandberg Maintainer: Gabe Black --- diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc index 4b566ca20..da1dd2d03 100644 --- a/src/systemc/core/scheduler.cc +++ b/src/systemc/core/scheduler.cc @@ -50,9 +50,11 @@ Scheduler::Scheduler() : stopEvent(this, false, StopPriority), _throwUp(nullptr), starvationEvent(this, false, StarvationPriority), _elaborationDone(false), _started(false), _stopNow(false), - _status(StatusOther), maxTickEvent(this, false, MaxTickPriority), + _status(StatusOther), maxTick(::MaxTick), + maxTickEvent(this, false, MaxTickPriority), timeAdvancesEvent(this, false, TimeAdvancesPriority), _numCycles(0), - _changeStamp(0), _current(nullptr), initDone(false), runOnce(false) + _changeStamp(0), _current(nullptr), initDone(false), runToTime(true), + runOnce(false) {} Scheduler::~Scheduler()