Commit dad78475 authored by Simon Marlow's avatar Simon Marlow
Browse files

small interpreter fix

parent 301afae5
...@@ -550,8 +550,6 @@ schedule (Capability *initialCapability, Task *task) ...@@ -550,8 +550,6 @@ schedule (Capability *initialCapability, Task *task)
} }
#endif #endif
cap->r.rCurrentTSO = t;
/* context switches are initiated by the timer signal, unless /* context switches are initiated by the timer signal, unless
* the user specified "context switch as often as possible", with * the user specified "context switch as often as possible", with
* +RTS -C0 * +RTS -C0
...@@ -563,6 +561,11 @@ schedule (Capability *initialCapability, Task *task) ...@@ -563,6 +561,11 @@ schedule (Capability *initialCapability, Task *task)
run_thread: run_thread:
// CurrentTSO is the thread to run. t might be different if we
// loop back to run_thread, so make sure to set CurrentTSO after
// that.
cap->r.rCurrentTSO = t;
debugTrace(DEBUG_sched, "-->> running thread %ld %s ...", debugTrace(DEBUG_sched, "-->> running thread %ld %s ...",
(long)t->id, whatNext_strs[t->what_next]); (long)t->id, whatNext_strs[t->what_next]);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment