X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FThreads.h;h=dfe879e7bb03d050dc0b4840bd698185cae3f69e;hb=07308413a4b20e70c294b657006327b09b65cfc0;hp=e331c50dae9ccc33e7687d99800f0cf0125a4795;hpb=b1953bbb1ed3cb16497e5447db7487f0c2d9e41a;p=ghc-hetmet.git diff --git a/rts/Threads.h b/rts/Threads.h index e331c50..dfe879e 100644 --- a/rts/Threads.h +++ b/rts/Threads.h @@ -9,23 +9,18 @@ #ifndef THREADS_H #define THREADS_H -#if defined(GRAN) || defined(PARALLEL_HASKELL) -StgBlockingQueueElement * unblockOne (StgBlockingQueueElement *bqe, - StgClosure *node); -#else +BEGIN_RTS_PRIVATE + +#define END_BLOCKED_EXCEPTIONS_QUEUE ((MessageThrowTo*)END_TSO_QUEUE) + StgTSO * unblockOne (Capability *cap, StgTSO *tso); StgTSO * unblockOne_ (Capability *cap, StgTSO *tso, rtsBool allow_migrate); -#endif -#if defined(GRAN) || defined(PARALLEL_HASKELL) -void awakenBlockedQueue(StgBlockingQueueElement *q, StgClosure *node); -#else void awakenBlockedQueue (Capability *cap, StgTSO *tso); -#endif -void removeThreadFromMVarQueue (StgMVar *mvar, StgTSO *tso); -void removeThreadFromQueue (StgTSO **queue, StgTSO *tso); -void removeThreadFromDeQueue (StgTSO **head, StgTSO **tail, StgTSO *tso); +void removeThreadFromMVarQueue (Capability *cap, StgMVar *mvar, StgTSO *tso); +void removeThreadFromQueue (Capability *cap, StgTSO **queue, StgTSO *tso); +void removeThreadFromDeQueue (Capability *cap, StgTSO **head, StgTSO **tail, StgTSO *tso); StgBool isThreadBound (StgTSO* tso); @@ -34,13 +29,8 @@ void printThreadBlockage (StgTSO *tso); void printThreadStatus (StgTSO *t); void printAllThreads (void); void printThreadQueue (StgTSO *t); -# if defined(PARALLEL_HASKELL) -void print_bq (StgClosure *node); -void print_bqe (StgBlockingQueueElement *bqe); -nat run_queue_len (void); -# elif defined(GRAN) -void print_bq (StgClosure *node); -# endif #endif +END_RTS_PRIVATE + #endif /* THREADS_H */