projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
MERGED: If we have hscolour then make source code links in teh haddock docs
[ghc-hetmet.git]
/
rts
/
HeapStackCheck.cmm
diff --git
a/rts/HeapStackCheck.cmm
b/rts/HeapStackCheck.cmm
index
753e671
..
333d0c0
100644
(file)
--- a/
rts/HeapStackCheck.cmm
+++ b/
rts/HeapStackCheck.cmm
@@
-15,6
+15,8
@@
#ifdef __PIC__
import pthread_mutex_unlock;
#endif
#ifdef __PIC__
import pthread_mutex_unlock;
#endif
+import EnterCriticalSection;
+import LeaveCriticalSection;
/* Stack/Heap Check Failure
* ------------------------
/* Stack/Heap Check Failure
* ------------------------
@@
-825,7
+827,9
@@
INFO_TABLE_RET( stg_block_takemvar, RET_SMALL, "ptr" W_ unused )
stg_block_takemvar_finally
{
#ifdef THREADED_RTS
stg_block_takemvar_finally
{
#ifdef THREADED_RTS
- unlockClosure(R3, stg_EMPTY_MVAR_info);
+ unlockClosure(R3, stg_MVAR_DIRTY_info);
+#else
+ SET_INFO(R3, stg_MVAR_DIRTY_info);
#endif
jump StgReturn;
}
#endif
jump StgReturn;
}
@@
-851,7
+855,9
@@
INFO_TABLE_RET( stg_block_putmvar, RET_SMALL, "ptr" W_ unused1, "ptr" W_ unused2
stg_block_putmvar_finally
{
#ifdef THREADED_RTS
stg_block_putmvar_finally
{
#ifdef THREADED_RTS
- unlockClosure(R3, stg_FULL_MVAR_info);
+ unlockClosure(R3, stg_MVAR_DIRTY_info);
+#else
+ SET_INFO(R3, stg_MVAR_DIRTY_info);
#endif
jump StgReturn;
}
#endif
jump StgReturn;
}