diff options
author | Gabe Black <gabeblack@google.com> | 2018-10-01 21:58:50 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2018-10-16 00:44:52 +0000 |
commit | f93e27666f2ddc85afd618df6f2c3874ac967715 (patch) | |
tree | a567c8ccbfddeae2665ea41e434110d372f41fdf | |
parent | e16ca903f240c750f34207b4c98735f81d2312b8 (diff) | |
download | gem5-f93e27666f2ddc85afd618df6f2c3874ac967715.tar.xz |
systemc: Clear the current process when done with the eval phase.
The current process will still be set sometimes when exiting from the
yield loop in the top of runReady in the scheduler. Clear it to ensure
that we don't think a process is running when it isn't.
Change-Id: Idd44689e10fadf4a3e3ec07c60d107c80a44d39f
Reviewed-on: https://gem5-review.googlesource.com/c/13201
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r-- | src/systemc/core/scheduler.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/systemc/core/scheduler.cc b/src/systemc/core/scheduler.cc index d57505517..0071e2dd4 100644 --- a/src/systemc/core/scheduler.cc +++ b/src/systemc/core/scheduler.cc @@ -280,6 +280,7 @@ Scheduler::runReady() do { yield(); } while (getNextReady()); + _current = nullptr; if (!empty) { _numCycles++; |