Change-Id: Ie0c29bb6cf918aea1c0bc719b9d37628b5b19339
Reviewed-on: https://gem5-review.googlesource.com/c/13185
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
bool hasStaticSensitivities() { return !staticSensitivities.empty(); }
bool internal() { return _internal; }
bool timedOut() { return _timedOut; }
+ bool syncReset() { return _syncReset; }
bool dontInitialize() { return _dontInitialize; }
void dontInitialize(bool di) { _dontInitialize = di; }
}
}
}
- if (_current && _current->excWrapper) {
- // Make sure this isn't a method process.
- assert(!_current->needsStart());
- auto ew = _current->excWrapper;
- _current->excWrapper = nullptr;
- ew->throw_it();
+ if (_current && !_current->needsStart()) {
+ if (_current->excWrapper) {
+ auto ew = _current->excWrapper;
+ _current->excWrapper = nullptr;
+ ew->throw_it();
+ } else if (_current->syncReset()) {
+ _current->reset(false);
+ }
}
}