/* -----------------------------------------------------------------------------
- * $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.
*
#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)
{
/* 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! */
LoadThreadState();
CHECK_SENSIBLE_REGS();
Sp++;
- JMP_(Sp[-1]);
+ JMP_(ENTRY_CODE(Sp[-1]));
FE_
}