projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Don't look through SCC in exprIsConApp_maybe
[ghc-hetmet.git]
/
rts
/
Threads.c
diff --git
a/rts/Threads.c
b/rts/Threads.c
index
5723eac
..
7344134
100644
(file)
--- a/
rts/Threads.c
+++ b/
rts/Threads.c
@@
-215,10
+215,14
@@
removeThreadFromDeQueue (Capability *cap,
------------------------------------------------------------------------- */
void
------------------------------------------------------------------------- */
void
-tryWakeupThread (Capability *cap, StgTSO *tso_)
+tryWakeupThread (Capability *cap, StgTSO *tso)
{
{
- StgTSO *tso = deRefTSO(tso_);
+ tryWakeupThread_(cap, deRefTSO(tso));
+}
+void
+tryWakeupThread_ (Capability *cap, StgTSO *tso)
+{
traceEventThreadWakeup (cap, tso, tso->cap->no);
#ifdef THREADED_RTS
traceEventThreadWakeup (cap, tso, tso->cap->no);
#ifdef THREADED_RTS
@@
-384,6
+388,7
@@
updateThunk (Capability *cap, StgTSO *tso, StgClosure *thunk, StgClosure *val)
i = thunk->header.info;
if (i != &stg_BLACKHOLE_info &&
i != &stg_CAF_BLACKHOLE_info &&
i = thunk->header.info;
if (i != &stg_BLACKHOLE_info &&
i != &stg_CAF_BLACKHOLE_info &&
+ i != &__stg_EAGER_BLACKHOLE_info &&
i != &stg_WHITEHOLE_info) {
updateWithIndirection(cap, thunk, val);
return;
i != &stg_WHITEHOLE_info) {
updateWithIndirection(cap, thunk, val);
return;
@@
-487,8
+492,8
@@
printThreadBlockage(StgTSO *tso)
case BlockedOnCCall:
debugBelch("is blocked on an external call");
break;
case BlockedOnCCall:
debugBelch("is blocked on an external call");
break;
- case BlockedOnCCall_NoUnblockExc:
- debugBelch("is blocked on an external call (exceptions were already blocked)");
+ case BlockedOnCCall_Interruptible:
+ debugBelch("is blocked on an external call (but may be interrupted)");
break;
case BlockedOnSTM:
debugBelch("is blocked on an STM operation");
break;
case BlockedOnSTM:
debugBelch("is blocked on an STM operation");