[project @ 1999-11-25 10:33:20 by simonpj]
[ghc-hetmet.git] / ghc / rts / StgStartup.hc
index b92fb09..b3591d1 100644 (file)
@@ -1,5 +1,7 @@
 /* -----------------------------------------------------------------------------
- * $Id: StgStartup.hc,v 1.2 1998/12/02 13:28:55 simonm Exp $
+ * $Id: StgStartup.hc,v 1.5 1999/05/13 17:31:13 simonm Exp $
+ *
+ * (c) The GHC Team, 1998-1999
  *
  * Code for starting, stopping and restarting threads.
  *
@@ -58,7 +60,7 @@ EXTFUN(stg_stop_thread_entry);
 #define stg_stop_thread_6_entry stg_stop_thread_entry 
 #define stg_stop_thread_7_entry stg_stop_thread_entry 
 
-VEC_POLY_INFO_TABLE(stg_stop_thread,STOP_THREAD_BITMAP,0,0,0,STOP_FRAME);
+VEC_POLY_INFO_TABLE(stg_stop_thread,STOP_THREAD_BITMAP,0,0,0,STOP_FRAME,,EF_);
 
 STGFUN(stg_stop_thread_entry)
 {
@@ -77,8 +79,8 @@ STGFUN(stg_stop_thread_entry)
     /* Move Su just off the end of the stack, we're about to spam the
      * STOP_FRAME with the return value.
      */
-    Su = stgCast(StgUpdateFrame*,Sp+1);  
-    *stgCast(StgClosure**,Sp) = R1.cl;
+    Su = (StgUpdateFrame *)(Sp+1);  
+    Sp[0] = R1.w;
 
     SaveThreadState(); /* inline! */
 
@@ -103,7 +105,7 @@ STGFUN(stg_returnToStackTop)
   LoadThreadState();
   CHECK_SENSIBLE_REGS();
   Sp++;
-  JMP_(Sp[-1]);
+  JMP_(ENTRY_CODE(Sp[-1]));
   FE_
 }