From: Gabe Black Date: Thu, 14 Jun 2018 02:10:38 +0000 (-0700) Subject: systemc: Partially implement SC_FORK and SC_JOIN. X-Git-Tag: v19.0.0.0~1940 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a891159548ef589bc591455421e9770de50e23d4;p=gem5.git 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 Maintainer: Gabe Black --- 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