summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2018-10-09 16:22:47 -0700
committerGabe Black <gabeblack@google.com>2018-10-16 01:16:20 +0000
commitf9596e536bbe2f1f19ad16cd7a1bfe2ff0ccd525 (patch)
tree5be88d05edef488a5c5398f9851ce1c7d97a201b
parent96a88fbeddb354cddfbbbcc905ba5bb84cf4dde1 (diff)
downloadgem5-f9596e536bbe2f1f19ad16cd7a1bfe2ff0ccd525.tar.xz
systemc: Don't include the scheduler in an external header file.
The scheduler is an internal detail and shouldn't be exposed to the headers in ext. It would transitively include more headers which are not in ext, making it not self contained. Change-Id: I8384cde9d19363953ffd0c91e7d8d27f8f79a570 Reviewed-on: https://gem5-review.googlesource.com/c/13336 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r--src/systemc/ext/channel/sc_signal_rv.hh11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/systemc/ext/channel/sc_signal_rv.hh b/src/systemc/ext/channel/sc_signal_rv.hh
index 1a47e84ad..c769f377a 100644
--- a/src/systemc/ext/channel/sc_signal_rv.hh
+++ b/src/systemc/ext/channel/sc_signal_rv.hh
@@ -31,11 +31,18 @@
#define __SYSTEMC_EXT_CHANNEL_SC_SIGNAL_RV_HH__
#include "../core/sc_module.hh" // for sc_gen_unique_name
-#include "../core/scheduler.hh"
#include "../dt/bit/sc_logic.hh"
#include "../dt/bit/sc_lv.hh"
#include "sc_signal.hh"
+namespace sc_gem5
+{
+
+class Process;
+Process *getCurrentProcess();
+
+} // namespace sc_gem5
+
namespace sc_dt
{
@@ -66,7 +73,7 @@ class sc_signal_rv : public sc_signal<sc_dt::sc_lv<W>, SC_MANY_WRITERS>
virtual void
write(const sc_dt::sc_lv<W> &l)
{
- ::sc_gem5::Process *p = ::sc_gem5::scheduler.current();
+ ::sc_gem5::Process *p = ::sc_gem5::getCurrentProcess();
auto it = inputs.find(p);
if (it == inputs.end()) {