summaryrefslogtreecommitdiff
path: root/ghc/rts/Interpreter.c
diff options
context:
space:
mode:
authorsimonmar <unknown>2001-11-14 11:46:12 +0000
committersimonmar <unknown>2001-11-14 11:46:12 +0000
commit37ed96e43d3a02215f41a3e1a034596ba62c0702 (patch)
treef5691a0f689be88397bda5026fa386749eda52b9 /ghc/rts/Interpreter.c
parent9bd3b5f37a3eda096e575f21b3c746acf5ace7ca (diff)
downloadhaskell-37ed96e43d3a02215f41a3e1a034596ba62c0702.tar.gz
[project @ 2001-11-14 11:46:12 by simonmar]
Fix up the interpreter following the recent modifications to suspendThread/resumeThread. Someone should test that foreign imports in the interpreter still work.
Diffstat (limited to 'ghc/rts/Interpreter.c')
-rw-r--r--ghc/rts/Interpreter.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ghc/rts/Interpreter.c b/ghc/rts/Interpreter.c
index 27c3c5ca44..f56194c84d 100644
--- a/ghc/rts/Interpreter.c
+++ b/ghc/rts/Interpreter.c
@@ -5,8 +5,8 @@
* Copyright (c) 1994-2000.
*
* $RCSfile: Interpreter.c,v $
- * $Revision: 1.31 $
- * $Date: 2001/11/08 12:46:31 $
+ * $Revision: 1.32 $
+ * $Date: 2001/11/14 11:46:12 $
* ---------------------------------------------------------------------------*/
#include "PosixSource.h"
@@ -775,9 +775,9 @@ StgThreadReturnCode interpretBCO ( Capability* cap )
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);
marshall_fn ( (void*)(& StackWord(0) ) );
- cap = resumeThread(tok);
+ cap = (Capability *)((void *)resumeThread(tok) - sizeof(StgFunTable));
LOAD_STACK_POINTERS;
goto nextInsn;
}