summaryrefslogtreecommitdiff
path: root/rts/Threads.c
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2011-02-02 15:49:55 +0000
committerSimon Marlow <marlowsd@gmail.com>2011-02-02 15:49:55 +0000
commit18896fa2b06844407fd1e0d3f85cd3db97a96ff4 (patch)
treeecea68990c0891e25a21bf25a26435e70e8e42fa /rts/Threads.c
parent8d809e0a8354e00078529eecb00db843c1602abe (diff)
downloadhaskell-18896fa2b06844407fd1e0d3f85cd3db97a96ff4.tar.gz
GC refactoring and cleanup
Now we keep any partially-full blocks in the gc_thread[] structs after each GC, rather than moving them to the generation. This should give us slightly better locality (though I wasn't able to measure any difference). Also in this patch: better sanity checking with THREADED.
Diffstat (limited to 'rts/Threads.c')
-rw-r--r--rts/Threads.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/Threads.c b/rts/Threads.c
index dcb916a92b..3e1c5cff0b 100644
--- a/rts/Threads.c
+++ b/rts/Threads.c
@@ -628,7 +628,7 @@ threadStackOverflow (Capability *cap, StgTSO *tso)
// will be discarded after the first overflow, being replaced by a
// non-moving 32k chunk.
if (old_stack->sp == old_stack->stack + old_stack->stack_size) {
- frame->next_chunk = new_stack;
+ frame->next_chunk = (StgStack*)END_TSO_QUEUE; // dummy
}
tso->stackobj = new_stack;