Change-Id: I9c8026cde455070841139d02955f5c083b9e0645
Reviewed-on: https://gem5-review.googlesource.com/c/13314
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
void incref() { refCount++; }
void decref() { refCount--; }
- const ::sc_core::sc_event &resetEvent() { return _resetEvent; }
- const ::sc_core::sc_event &terminatedEvent() { return _terminatedEvent; }
+ ::sc_core::sc_event &resetEvent() { return _resetEvent; }
+ ::sc_core::sc_event &terminatedEvent() { return _terminatedEvent; }
void setStackSize(size_t size) { stackSize = size; }
// If the current process needs to be manually started, start it.
if (_current && _current->needsStart()) {
_current->needsStart(false);
+ // If a process hasn't started yet, "resetting" it just starts it
+ // and signals its reset event.
+ if (_current->inReset())
+ _current->resetEvent().notify();
try {
_current->run();
} catch (...) {