systemc: Add an sc_event_finder::find_event method.

The guts of sc_event_finder are supposed to be implementation defined,
but the tests reach in and call this particular method on that class.

Change-Id: I21c18fa68ccce7bc1a13122ee3b452ecb81b713a
Reviewed-on: https://gem5-review.googlesource.com/11274
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2018-06-15 20:17:21 -07:00
parent 663f5f6976
commit 8622fbf982

View File

@@ -40,6 +40,7 @@ namespace sc_core
class sc_event;
class sc_event_and_expr;
class sc_event_or_expr;
class sc_interface;
class sc_object;
class sc_port_base;
@@ -47,6 +48,10 @@ class sc_event_finder
{
protected:
void warn_unimpl(const char *func) const;
public:
// Should be "implementation defined" but used in the tests.
virtual const sc_event &find_event(sc_interface *if_p=NULL) const = 0;
};
template <class IF>
@@ -58,6 +63,13 @@ class sc_event_finder_t : public sc_event_finder
{
warn_unimpl(__PRETTY_FUNCTION__);
}
const sc_event &
find_event(sc_interface *if_p=NULL) const override
{
warn_unimpl(__PRETTY_FUNCTION__);
return *(const sc_event *)nullptr;
}
};
class sc_event_and_list