summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2018-06-14 16:37:08 -0700
committerGabe Black <gabeblack@google.com>2018-08-22 00:50:50 +0000
commite81d8bd81580f0d881b2eabbb0ccd1c3e006cdc1 (patch)
treee8ae17e9037319b96077adee131e6478878092b8 /src
parent5f8af6b4eec1a2677965fa9d7818ca67b2274df7 (diff)
downloadgem5-e81d8bd81580f0d881b2eabbb0ccd1c3e006cdc1.tar.xz
systemc: Add the nonstandard variable sc_allow_process_control_corners.
This variable controls what happens in some situations which are left as undefined in the spec. It's behavior is explained in a big comment in the Accellera implementation. Since it's used in the regression tests, we need to at least have that variable so they'll compile and link properly. Change-Id: I1ac4592641be3d9dd10e7bf6144704a6fac1b2d4 Reviewed-on: https://gem5-review.googlesource.com/11186 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/systemc/core/sc_process_handle.cc2
-rw-r--r--src/systemc/ext/core/sc_process_handle.hh6
2 files changed, 8 insertions, 0 deletions
diff --git a/src/systemc/core/sc_process_handle.cc b/src/systemc/core/sc_process_handle.cc
index 07a07ad97..06fd0b30f 100644
--- a/src/systemc/core/sc_process_handle.cc
+++ b/src/systemc/core/sc_process_handle.cc
@@ -278,4 +278,6 @@ sc_is_unwinding()
return false;
}
+bool sc_allow_process_control_corners;
+
} // namespace sc_core
diff --git a/src/systemc/ext/core/sc_process_handle.hh b/src/systemc/ext/core/sc_process_handle.hh
index a8f977ba6..55fa2b7db 100644
--- a/src/systemc/ext/core/sc_process_handle.hh
+++ b/src/systemc/ext/core/sc_process_handle.hh
@@ -150,6 +150,12 @@ class sc_process_handle
sc_process_handle sc_get_current_process_handle();
bool sc_is_unwinding();
+// Nonstandard
+// See Accellera's kernel/sim_context.cpp for an explanation of what this is
+// supposed to do. It essentially selects what happens during certain
+// undefined situations.
+extern bool sc_allow_process_control_corners;
+
} // namespace sc_core
#endif //__SYSTEMC_EXT_CORE_SC_PROCESS_HANDLE_HH__