projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[project @ 2005-10-26 10:42:54 by simonmar]
[ghc-hetmet.git]
/
ghc
/
rts
/
Interpreter.c
diff --git
a/ghc/rts/Interpreter.c
b/ghc/rts/Interpreter.c
index
0ad2b6e
..
f007c4a
100644
(file)
--- a/
ghc/rts/Interpreter.c
+++ b/
ghc/rts/Interpreter.c
@@
-58,12
+58,14
@@
SAVE_STACK_POINTERS; \
cap->r.rCurrentTSO->what_next = (todo); \
threadPaused(cap->r.rCurrentTSO); \
SAVE_STACK_POINTERS; \
cap->r.rCurrentTSO->what_next = (todo); \
threadPaused(cap->r.rCurrentTSO); \
- return (retcode);
+ cap->r.rRet = (retcode); \
+ return cap;
#define RETURN_TO_SCHEDULER_NO_PAUSE(todo,retcode) \
#define RETURN_TO_SCHEDULER_NO_PAUSE(todo,retcode) \
- SAVE_STACK_POINTERS; \
- cap->r.rCurrentTSO->what_next = (todo); \
- return (retcode);
+ SAVE_STACK_POINTERS; \
+ cap->r.rCurrentTSO->what_next = (todo); \
+ cap->r.rRet = (retcode); \
+ return cap;
STATIC_INLINE StgPtr
STATIC_INLINE StgPtr
@@
-170,7
+172,7
@@
static StgWord app_ptrs_itbl[] = {
(W_)&stg_ap_pppppp_info,
};
(W_)&stg_ap_pppppp_info,
};
-StgThreadReturnCode
+Capability *
interpretBCO (Capability* cap)
{
// Use of register here is primarily to make it clear to compilers
interpretBCO (Capability* cap)
{
// Use of register here is primarily to make it clear to compilers