systemc: Update signals before initing processes.
We were supposed to do one update phase before adding all processes
which didn't have dont_initialize() called to the run queue. We were
doing that in the opposite order.
Change-Id: I6dd4108040d455dc78029da029a2eb5e7af819cb
Reviewed-on: https://gem5-review.googlesource.com/c/14915
Reviewed-by: Matthias Jung <jungma@eit.uni-kl.de>
Maintainer: Gabe Black <gabeblack@google.com>
diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc
index a2e52f0..465da55 100644
--- a/src/systemc/core/scheduler.cc
+++ b/src/systemc/core/scheduler.cc
@@ -108,6 +108,8 @@
void
Scheduler::initPhase()
{
+ runUpdate();
+
for (Process *p = initList.getNext(); p; p = initList.getNext()) {
p->popListNode();
@@ -121,7 +123,6 @@
}
}
- runUpdate();
runDelta();
for (auto ets: eventsToSchedule)