systemc: Implement register_port in all the predefined channels.
authorGabe Black <gabeblack@google.com>
Mon, 1 Oct 2018 10:59:05 +0000 (03:59 -0700)
committerGabe Black <gabeblack@google.com>
Tue, 16 Oct 2018 00:44:17 +0000 (00:44 +0000)
commite16ca903f240c750f34207b4c98735f81d2312b8
treea33efdef5b37d047b40cded3d9bbf00fb0241d1d
parentb2e1f81f51e630ef4399f24024c82404601f8340
systemc: Implement register_port in all the predefined channels.

Something the Accellera implementation does which would be good to do
in the gem5 implementation is to create a base class for sc_signal
which isn't templated, and which holds the common/non-type specific
versions of the various sc_signal methods. This will reduce code
redundancy and binary size, and also let us hide more code in .cc
files so that it's less likely we'd need to recompile model code to
fix a bug.

Also, since this all uses of sc_channel_warn_unimple have now been
eliminated, remove that function.

Change-Id: Ia574647c034e7136093c2047b69de725ac34f52f
Reviewed-on: https://gem5-review.googlesource.com/c/13200
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
14 files changed:
src/systemc/channel/SConscript
src/systemc/channel/warn_unimpl.cc [deleted file]
src/systemc/ext/channel/sc_fifo.hh
src/systemc/ext/channel/sc_signal.hh
src/systemc/ext/channel/sc_signal_rv.hh
src/systemc/ext/channel/warn_unimpl.hh [deleted file]
src/systemc/tests/systemc/communication/sc_signal/check_writer/test08/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/check_writer/test09/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/check_writer/test10/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/check_writer/test11/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/check_writer/test12/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/register_port/test01/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/register_port/test02/expected_returncode [new file with mode: 0644]
src/systemc/tests/systemc/communication/sc_signal/register_port/test03/expected_returncode [new file with mode: 0644]