systemc: Add a nonstandard sc_signal constructor.
This constructor takes an initial value to set the sc_signal to, and
is used in the tests.
Change-Id: I197218846d9a79f9237238c78b1bbd8a7f55443f
Reviewed-on: https://gem5-review.googlesource.com/11266
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
diff --git a/src/systemc/ext/channel/sc_signal.hh b/src/systemc/ext/channel/sc_signal.hh
index e1ed619..de571b2 100644
--- a/src/systemc/ext/channel/sc_signal.hh
+++ b/src/systemc/ext/channel/sc_signal.hh
@@ -53,6 +53,12 @@
explicit sc_signal(const char *name) : sc_signal_inout_if<T>(),
sc_prim_channel(name)
{}
+ explicit sc_signal(const char *name, const T &initial_value) :
+ sc_signal_inout_if<T>(), sc_prim_channel(name)
+ {
+ // Need to consume initial_value.
+ sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
+ }
virtual ~sc_signal() {}
virtual void
@@ -162,6 +168,12 @@
{
sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
}
+ explicit sc_signal(const char *name, const bool &initial_value) :
+ sc_signal_inout_if<bool>(), sc_prim_channel(name)
+ {
+ // Need to consume initial_value.
+ sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
+ }
virtual ~sc_signal()
{
sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
@@ -292,6 +304,13 @@
{
sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
}
+ explicit sc_signal(const char *name,
+ const sc_dt::sc_logic &initial_value) :
+ sc_signal_inout_if<sc_dt::sc_logic>(), sc_prim_channel(name)
+ {
+ // Need to consume initial_value.
+ sc_channel_warn_unimpl(__PRETTY_FUNCTION__);
+ }
virtual ~sc_signal()
{
sc_channel_warn_unimpl(__PRETTY_FUNCTION__);