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>
diff --git a/src/systemc/core/sc_process_handle.cc b/src/systemc/core/sc_process_handle.cc
index 07a07ad..06fd0b3 100644
--- a/src/systemc/core/sc_process_handle.cc
+++ b/src/systemc/core/sc_process_handle.cc
@@ -278,4 +278,6 @@
     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 a8f977b..55fa2b7 100644
--- a/src/systemc/ext/core/sc_process_handle.hh
+++ b/src/systemc/ext/core/sc_process_handle.hh
@@ -150,6 +150,12 @@
 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__