Add Coercion.lhs
[ghc-hetmet.git] / rts / Schedule.h
index 3adb70f..f82946e 100644 (file)
@@ -43,30 +43,19 @@ void awakenBlockedQueue(StgBlockingQueueElement *q, StgClosure *node);
 void awakenBlockedQueue (Capability *cap, StgTSO *tso);
 #endif
 
+/* wakeUpRts()
+ * 
+ * Causes an OS thread to wake up and run the scheduler, if necessary.
+ */
+void wakeUpRts(void);
+
 /* unblockOne()
  *
  * Put the specified thread on the run queue of the given Capability.
  * Called from STG :  yes
  * Locks assumed   :  we own the Capability.
  */
-StgTSO * unblockOne(Capability *cap, StgTSO *tso);
-
-/* raiseAsync()
- *
- * Raises an exception asynchronously in the specified thread.
- *
- * Called from STG :  yes
- * Locks assumed   :  none
- */
-void raiseAsync(Capability *cap, StgTSO *tso, StgClosure *exception);
-
-/* suspendComputation()
- *
- * A variant of raiseAsync(), this strips the stack of the specified
- * thread down to the stop_here point, leaving a current closure on
- * top of the stack at [stop_here - 1].
- */
-void suspendComputation(Capability *cap, StgTSO *tso, StgPtr stop_here);
+StgTSO * unblockOne (Capability *cap, StgTSO *tso);
 
 /* raiseExceptionHelper */
 StgWord raiseExceptionHelper (StgRegTable *reg, StgTSO *tso, StgClosure *exception);
@@ -170,8 +159,6 @@ extern rtsBool blackholes_need_checking;
 extern Mutex RTS_VAR(sched_mutex);
 #endif
 
-StgBool isThreadBound(StgTSO *tso);
-
 SchedulerStatus rts_mainLazyIO(HaskellObj p, /*out*/HaskellObj *ret);
 
 /* Called by shutdown_handler(). */
@@ -192,8 +179,6 @@ void print_bq (StgClosure *node);
 void print_bqe (StgBlockingQueueElement *bqe);
 #endif
 
-void labelThread(StgPtr tso, char *label);
-
 /* -----------------------------------------------------------------------------
  * Some convenient macros/inline functions...
  */