Gabe Black has submitted this change and it was merged. (
https://gem5-review.googlesource.com/c/public/gem5/+/12050 )
Change subject: systemc: Detect a process control corner case and report an
error.
......................................................................
systemc: Detect a process control corner case and report an error.
This error reporting results in an exception being thrown, and one (or
more) of the tests depend on that behavior.
Change-Id: I858aa14fbb80b0648392179a6a8d2055c91aedf8
Reviewed-on: https://gem5-review.googlesource.com/12050
Reviewed-by: Gabe Black <[email protected]>
Maintainer: Gabe Black <[email protected]>
---
M src/systemc/core/process.cc
1 file changed, 8 insertions(+), 0 deletions(-)
Approvals:
Gabe Black: Looks good to me, approved; Looks good to me, approved
diff --git a/src/systemc/core/process.cc b/src/systemc/core/process.cc
index 6b4c427..a54d5c2 100644
--- a/src/systemc/core/process.cc
+++ b/src/systemc/core/process.cc
@@ -178,6 +178,14 @@
if (inc_kids)
forEachKid([](Process *p) { p->disable(true); });
+ if (!::sc_core::sc_allow_process_control_corners &&
+ dynamic_cast<SensitivityTimeout *>(dynamicSensitivity)) {
+ std::string message("attempt to disable a thread with timeout
wait: ");
+ message += name();
+ SC_REPORT_ERROR("Undefined process control interaction",
+ message.c_str());
+ }
+
_disabled = true;
}
--
To view, visit https://gem5-review.googlesource.com/c/public/gem5/+/12050
To unsubscribe, or for help writing mail filters, visit
https://gem5-review.googlesource.com/settings
Gerrit-Project: public/gem5
Gerrit-Branch: master
Gerrit-Change-Id: I858aa14fbb80b0648392179a6a8d2055c91aedf8
Gerrit-Change-Number: 12050
Gerrit-PatchSet: 9
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-Reviewer: Andreas Sandberg <[email protected]>
Gerrit-Reviewer: Gabe Black <[email protected]>
Gerrit-Reviewer: Jason Lowe-Power <[email protected]>
Gerrit-Reviewer: Matthias Jung <[email protected]>
Gerrit-MessageType: merged
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev