systemc: Remove references to internal constants from the tests.

The tests were referring to constants defined in the Accellera systemc
implementation which identified various log message types. This change
replaces those (sometimes quite long) string constants with their
actual value. This doesn't make that interface any more fragile since
the constant value won't track between the Accellera version and this
one, but it does make its fragility more explicit by using the value
directly.

If in the future we decide to hide the magical nature of those
particular string constants, we could make them into our own constants
in the implementation. Regardless, the tests shouldn't refer to
internal details of the implementation.

Change-Id: I116a7407fcac49367649b250683117f3ccf4f9ed
Reviewed-on: https://gem5-review.googlesource.com/11181
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2018-06-13 18:41:27 -07:00
parent d8a149bb7d
commit a51eb91659
6 changed files with 11 additions and 8 deletions

View File

@@ -72,7 +72,7 @@ SC_MODULE(X)
{
SC_CTOR(X)
{
SC_REPORT_ERROR(SC_ID_SET_TIME_RESOLUTION_,"");
SC_REPORT_ERROR("set time resolution failed","");
}
};

View File

@@ -73,8 +73,9 @@ SC_MODULE(print_edge)
int sc_main(int, char*[])
{
sc_report_handler::set_actions( SC_ID_DISABLE_WILL_ORPHAN_PROCESS_
, SC_DO_NOTHING );
sc_report_handler::set_actions( "disable() or dont_initialize() "
"called on process with no static sensitivity, it will be "
"orphaned", SC_DO_NOTHING );
sc_signal<int> sig_int;

View File

@@ -147,7 +147,7 @@ int sc_main( int, char*[] )
// report multiple writer errors as warnings
sc_core::sc_report_handler::set_actions(
sc_core::SC_ID_MORE_THAN_ONE_SIGNAL_DRIVER_
"sc_signal<T> cannot have more than one driver"
, sc_core::SC_DEFAULT_WARNING_ACTIONS
);

View File

@@ -212,7 +212,7 @@ private:
int sc_main(int, char*[])
{
// don't run without callbacks enabled
sc_report_handler::set_actions( SC_ID_PHASE_CALLBACKS_UNSUPPORTED_
sc_report_handler::set_actions( "simulation phase callbacks not enabled"
, SC_DEFAULT_ERROR_ACTIONS );
phase_tracer pt;

View File

@@ -93,7 +93,9 @@ protected:
int sc_main (int, char*[])
{
sc_report_handler::set_actions( SC_ID_DISABLE_WILL_ORPHAN_PROCESS_, SC_DO_NOTHING );
sc_report_handler::set_actions( "disable() or dont_initialize() "
"called on process with no static sensitivity, it will be orphaned",
SC_DO_NOTHING );
sctop top1("Top1");
sc_start(10, SC_NS);
return 0;

View File

@@ -59,8 +59,8 @@ void check_time( const sc_time& t, sc_time_unit tu, const std::string & str )
int sc_main( int, char*[] )
{
sc_report_handler::set_actions( SC_ID_SET_TIME_RESOLUTION_, SC_DO_NOTHING );
sc_report_handler::set_actions( SC_ID_TIME_CONVERSION_FAILED_, SC_DISPLAY );
sc_report_handler::set_actions( "set time resolution failed", SC_DO_NOTHING );
sc_report_handler::set_actions( "sc_time conversion failed", SC_DISPLAY );
unsigned resolutions[] = { 100, 10, 1 };
sc_time_unit resunit = SC_FS;