Gabe Black has uploaded this change for review. ( 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
---
M src/systemc/core/process.cc
1 file changed, 8 insertions(+), 0 deletions(-)



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: 1
Gerrit-Owner: Gabe Black <[email protected]>
Gerrit-MessageType: newchange
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to