diff options
author | Gabe Black <gabeblack@google.com> | 2018-06-13 19:10:38 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2018-08-15 01:37:50 +0000 |
commit | a891159548ef589bc591455421e9770de50e23d4 (patch) | |
tree | 0c9f78381932d04fcfb3bb3c337ff01a1291a715 /src/systemc/ext | |
parent | a18e901b1640ac53e79e27a4eb2979ade60401b4 (diff) | |
download | gem5-a891159548ef589bc591455421e9770de50e23d4.tar.xz |
systemc: Partially implement SC_FORK and SC_JOIN.
These macros need to expand to some minimal amount of wrapping code to
make the regression tests syntactically legal and compile.
Change-Id: I0b5569704b129d9c315526fc3363ef846a1b5c65
Reviewed-on: https://gem5-review.googlesource.com/11184
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
Diffstat (limited to 'src/systemc/ext')
-rw-r--r-- | src/systemc/ext/core/sc_spawn.hh | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/systemc/ext/core/sc_spawn.hh b/src/systemc/ext/core/sc_spawn.hh index f1b110b19..0463dc133 100644 --- a/src/systemc/ext/core/sc_spawn.hh +++ b/src/systemc/ext/core/sc_spawn.hh @@ -105,8 +105,16 @@ sc_spawn(typename T::result_type *r_p, T object, const char *name_p=nullptr, #define sc_ref(r) boost::ref(r) #define sc_cref(r) boost::cref(r) -#define SC_FORK /* Implementation defined */ -#define SC_JOIN /* Implementation defined */ +#define SC_FORK \ +{ \ + ::sc_core::sc_process_handle forkees[] = { + +#define SC_JOIN \ + }; /* TODO wait for the forkees. */ \ +} + +// Non-standard +#define SC_CJOIN SC_JOIN } // namespace sc_core |