summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2018-06-14 16:39:37 -0700
committerGabe Black <gabeblack@google.com>2018-08-22 00:51:43 +0000
commitd4f96ad97175e1c8cb598cdc6bd25171b1753912 (patch)
tree6d0bef46c1a6098ab62b3672ae34a2f548b30750
parente81d8bd81580f0d881b2eabbb0ccd1c3e006cdc1 (diff)
downloadgem5-d4f96ad97175e1c8cb598cdc6bd25171b1753912.tar.xz
systemc: Add the nonstandard triggered function sc_event.
The Accellera implementation of sc_event has a non-standard triggered function which returns whether or not that particular event has been triggered in the current delta cycle. The tests call it, so we probably need to have it. Change-Id: I675099b65d00e09536618d4d2d707bf3c25e3bde Reviewed-on: https://gem5-review.googlesource.com/11187 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r--src/systemc/core/sc_event.cc7
-rw-r--r--src/systemc/ext/core/sc_event.hh4
2 files changed, 11 insertions, 0 deletions
diff --git a/src/systemc/core/sc_event.cc b/src/systemc/core/sc_event.cc
index 0cdab2a50..32fdd0afb 100644
--- a/src/systemc/core/sc_event.cc
+++ b/src/systemc/core/sc_event.cc
@@ -277,6 +277,13 @@ sc_event::cancel()
warn("%s not implemented.\n", __PRETTY_FUNCTION__);
}
+bool
+sc_event::triggered() const
+{
+ warn("%s not implemented.\n", __PRETTY_FUNCTION__);
+ return false;
+}
+
sc_event_and_expr
sc_event::operator & (const sc_event &) const
{
diff --git a/src/systemc/ext/core/sc_event.hh b/src/systemc/ext/core/sc_event.hh
index d4d719b95..d110b9178 100644
--- a/src/systemc/ext/core/sc_event.hh
+++ b/src/systemc/ext/core/sc_event.hh
@@ -132,6 +132,10 @@ class sc_event
void notify(double, sc_time_unit);
void cancel();
+ // Nonstandard
+ // Returns whether this event is currently triggered.
+ bool triggered() const;
+
sc_event_and_expr operator & (const sc_event &) const;
sc_event_and_expr operator & (const sc_event_and_list &) const;
sc_event_or_expr operator | (const sc_event &) const;