summaryrefslogtreecommitdiff
path: root/rts/Updates.h
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2009-06-02 14:02:33 +0000
committerSimon Marlow <marlowsd@gmail.com>2009-06-02 14:02:33 +0000
commitdd56e9ab4544e83d27532a8d9058140bfe81825c (patch)
tree5c5ba3eb63a02d7de3c8c514e883f7dd36e98332 /rts/Updates.h
parentcfe2fd2a36f43c1f998bb5e7c0cec15480ed3f96 (diff)
downloadhaskell-dd56e9ab4544e83d27532a8d9058140bfe81825c.tar.gz
Remove old GUM/GranSim code
Diffstat (limited to 'rts/Updates.h')
-rw-r--r--rts/Updates.h55
1 files changed, 0 insertions, 55 deletions
diff --git a/rts/Updates.h b/rts/Updates.h
index 10fa09b0e5..843be84131 100644
--- a/rts/Updates.h
+++ b/rts/Updates.h
@@ -60,61 +60,6 @@
Awaken any threads waiting on a blocking queue (BLACKHOLE_BQ).
-------------------------------------------------------------------------- */
-#if defined(PAR)
-
-/*
- In a parallel setup several types of closures might have a blocking queue:
- BLACKHOLE_BQ ... same as in the default concurrent setup; it will be
- reawakened via calling UPD_IND on that closure after
- having finished the computation of the graph
- FETCH_ME_BQ ... a global indirection (FETCH_ME) may be entered by a
- local TSO, turning it into a FETCH_ME_BQ; it will be
- reawakened via calling processResume
- RBH ... a revertible black hole may be entered by another
- local TSO, putting it onto its blocking queue; since
- RBHs only exist while the corresponding closure is in
- transit, they will be reawakened via calling
- convertToFetchMe (upon processing an ACK message)
-
- In a parallel setup a blocking queue may contain 3 types of closures:
- TSO ... as in the default concurrent setup
- BLOCKED_FETCH ... indicating that a TSO on another PE is waiting for
- the result of the current computation
- CONSTR ... an RBHSave closure (which contains data ripped out of
- the closure to make room for a blocking queue; since
- it only contains data we use the exisiting type of
- a CONSTR closure); this closure is the end of a
- blocking queue for an RBH closure; it only exists in
- this kind of blocking queue and must be at the end
- of the queue
-*/
-extern void awakenBlockedQueue(StgBlockingQueueElement *q, StgClosure *node);
-#define DO_AWAKEN_BQ(bqe, node) STGCALL2(awakenBlockedQueue, bqe, node);
-
-#define AWAKEN_BQ(info,closure) \
- if (info == &stg_BLACKHOLE_BQ_info || \
- info == &stg_FETCH_ME_BQ_info || \
- get_itbl(closure)->type == RBH) { \
- DO_AWAKEN_BQ(((StgBlockingQueue *)closure)->blocking_queue, closure); \
- }
-
-#elif defined(GRAN)
-
-extern void awakenBlockedQueue(StgBlockingQueueElement *q, StgClosure *node);
-#define DO_AWAKEN_BQ(bq, node) STGCALL2(awakenBlockedQueue, bq, node);
-
-/* In GranSim we don't have FETCH_ME or FETCH_ME_BQ closures, so they are
- not checked. The rest of the code is the same as for GUM.
-*/
-#define AWAKEN_BQ(info,closure) \
- if (info == &stg_BLACKHOLE_BQ_info || \
- get_itbl(closure)->type == RBH) { \
- DO_AWAKEN_BQ(((StgBlockingQueue *)closure)->blocking_queue, closure); \
- }
-
-#endif /* GRAN || PAR */
-
-
/* -----------------------------------------------------------------------------
Updates: lower-level macros which update a closure with an
indirection to another closure.