[project @ 2005-03-31 08:59:34 by simonmar]
[ghc-hetmet.git] / ghc / rts / Schedule.h
index d097a39..bd744f0 100644 (file)
@@ -63,6 +63,9 @@ void raiseAsyncWithLock(StgTSO *tso, StgClosure *exception);
 /* raiseExceptionHelper */
 StgWord raiseExceptionHelper (StgTSO *tso, StgClosure *exception);
 
+/* findRetryFrameHelper */
+StgWord findRetryFrameHelper (StgTSO *tso);
+
 /* awaitEvent(rtsBool wait)
  *
  * Checks for blocked threads that need to be woken.
@@ -79,7 +82,7 @@ void awaitEvent(rtsBool wait);  /* In Select.c */
  * Called from STG :  NO
  * Locks assumed   :  sched_mutex
  */
-rtsBool wakeUpSleepingThreads(nat);  /* In Select.c */
+rtsBool wakeUpSleepingThreads(lnat);  /* In Select.c */
 
 /* wakeBlockedWorkerThread()
  *
@@ -127,11 +130,11 @@ void    initThread(StgTSO *tso, nat stack_size);
 /* Context switch flag.
  * Locks required  : sched_mutex
  */
-extern nat RTS_VAR(context_switch);
+extern int RTS_VAR(context_switch);
 extern rtsBool RTS_VAR(interrupted);
 
 /* In Select.c */
-extern nat RTS_VAR(timestamp);
+extern lnat RTS_VAR(timestamp);
 
 /* Thread queues.
  * Locks required  : sched_mutex
@@ -156,9 +159,7 @@ extern nat         RTS_VAR(rts_n_waiting_workers);
 extern nat         RTS_VAR(rts_n_waiting_tasks);
 #endif
 
-StgBool rtsSupportsBoundThreads(void);
 StgBool isThreadBound(StgTSO *tso);
-StgInt forkProcess(HsStablePtr *entry);
 
 extern SchedulerStatus rts_mainLazyIO(HaskellObj p, /*out*/HaskellObj *ret);
 
@@ -281,17 +282,6 @@ void labelThread(StgPtr tso, char *label);
     }                                          \
     blocked_queue_tl = tso;
 
-/* Signal that a runnable thread has become available, in
- * case there are any waiting tasks to execute it.
- */
-#if defined(RTS_SUPPORTS_THREADS)
-#define THREAD_RUNNABLE()                      \
-  wakeBlockedWorkerThread();                   \
-  context_switch = 1;
-#else
-#define THREAD_RUNNABLE()  /* nothing */
-#endif
-
 /* Check whether various thread queues are empty
  */
 #define EMPTY_QUEUE(q)         (q == END_TSO_QUEUE)