* Copyright (c) 1994-2000.
*
* $RCSfile: Interpreter.c,v $
- * $Revision: 1.31 $
- * $Date: 2001/11/08 12:46:31 $
+ * $Revision: 1.34 $
+ * $Date: 2002/02/15 22:15:08 $
* ---------------------------------------------------------------------------*/
+#if !defined(SMP)
#include "PosixSource.h"
+#else
+/* Hack and slash.. */
+#include "Stg.h"
+#endif
#include "Rts.h"
#include "RtsAPI.h"
#include "RtsUtils.h"
int o_itbl = BCO_NEXT;
void(*marshall_fn)(void*) = (void (*)(void*))BCO_LIT(o_itbl);
SAVE_STACK_POINTERS;
- tok = suspendThread(cap);
+ tok = suspendThread(&cap->r,rtsFalse);
marshall_fn ( (void*)(& StackWord(0) ) );
- cap = resumeThread(tok);
+ cap = (Capability *)((void *)resumeThread(tok,rtsFalse) - sizeof(StgFunTable));
LOAD_STACK_POINTERS;
goto nextInsn;
}