summaryrefslogtreecommitdiff
path: root/rts/Schedule.c
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2022-04-28 15:24:50 +0100
committerMatthew Pickering <matthewtpickering@gmail.com>2022-04-28 15:24:50 +0100
commit23bceada811683f229c3c19c083066fda5d9f653 (patch)
treef18917ac6244c3b1dd0cc740a7818df05df975d1 /rts/Schedule.c
parent81cf52bb301592ff3d043d03eb9a0d547891a3e1 (diff)
downloadhaskell-wip/try-revert.tar.gz
Revert "rts: Refactor handling of dead threads' stacks"wip/try-revert
This reverts commit e09afbf2a998beea7783e3de5dce5dd3c6ff23db.
Diffstat (limited to 'rts/Schedule.c')
-rw-r--r--rts/Schedule.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/rts/Schedule.c b/rts/Schedule.c
index 9b1e98ea17..fa48bef1a7 100644
--- a/rts/Schedule.c
+++ b/rts/Schedule.c
@@ -1315,9 +1315,7 @@ scheduleHandleThreadFinished (Capability *cap, Task *task, StgTSO *t)
if (t->what_next == ThreadComplete) {
if (task->incall->ret) {
// NOTE: return val is stack->sp[1] (see StgStartup.cmm)
- StgDeadThreadFrame *dead = (StgDeadThreadFrame *) &task->incall->tso->stackobj->sp[0];
- ASSERT(dead->header.info == &stg_dead_thread_info);
- *(task->incall->ret) = (StgClosure *) dead->result;
+ *(task->incall->ret) = (StgClosure *)task->incall->tso->stackobj->sp[1];
}
task->incall->rstat = Success;
} else {