diff options
Diffstat (limited to 'ghc/includes/GranSim.lh')
-rw-r--r-- | ghc/includes/GranSim.lh | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/ghc/includes/GranSim.lh b/ghc/includes/GranSim.lh index e2da0d152a..ea92718c38 100644 --- a/ghc/includes/GranSim.lh +++ b/ghc/includes/GranSim.lh @@ -108,6 +108,18 @@ typedef struct event { struct event *next; } *eventq; +#if (defined(GCap) || defined(GCgn)) +typedef struct clos /* a queue of ex-RBHs (needed for gen GC only) */ +{ + struct clos *prev, *next; + P_ closure; +} *closq; + +#define CLOS_CLOSURE(clos) (clos->closure) +#define CLOS_PREV(clos) (clos->prev) +#define CLOS_NEXT(clos) (clos->next) +#endif + /* Macros for accessing components of the event structure */ #define EVENT_PROC(evt) (evt->proc) #define EVENT_CREATOR(evt) (evt->creator) @@ -122,10 +134,6 @@ typedef struct event { /* Maximum number of PEs that can be simulated */ #define MAX_PROC (BITS_IN(W_)) -#if 0 -extern W_ IdleProcs, Idlers; -#endif - /* Processor numbers to bitmasks and vice-versa */ #define MainProc 0 /* Id of main processor */ #define MAX_PRI 10000 /* max possible priority */ @@ -235,6 +243,8 @@ void newevent PROTO((PROC proc, PROC creator, TIME time, EVTTYPE evttype, P_ tso, P_ node, sparkq spark)); void prepend_event PROTO((eventq event)); eventq grab_event PROTO((STG_NO_ARGS)); +void traverse_eventq_for_gc PROTO((STG_NO_ARGS)); + void print_event PROTO((eventq event)); void print_eventq PROTO((eventq hd)); void print_spark PROTO((sparkq spark)); @@ -273,8 +283,8 @@ IF_RTS(void end_gr_simulation(STG_NO_ARGS);) simulated packet buffer size. */ -#define GRANSIM_DEFAULT_PACK_BUFFER_SIZE 200 -#define REALLOC_SZ 50 +#define GRANSIM_DEFAULT_PACK_BUFFER_SIZE 400 +#define REALLOC_SZ 200 /* extern W_ gran_mpacktime, gran_mtidytime, gran_munpacktime; */ |