summaryrefslogtreecommitdiff
path: root/rts/Schedule.c
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-08-06 11:51:35 -0400
committerBen Gamari <ben@smart-cactus.org>2022-08-06 11:51:35 -0400
commit6d1700b6dca6defb8768c493a1059c4215749b53 (patch)
tree80dc3968bb4073cd6f06e39a040f32a5a5360e31 /rts/Schedule.c
parentaa818a9f83308d0742e8f8c91cb9878182dacce5 (diff)
downloadhaskell-6d1700b6dca6defb8768c493a1059c4215749b53.tar.gz
rts: Move thread labels into TSO
This eliminates the thread label HashTable and instead tracks this information in the TSO, allowing us to use proper StgArrBytes arrays for backing the label and greatly simplifying management of object lifetimes when we expose them to the user with the coming `threadLabel#` primop.
Diffstat (limited to 'rts/Schedule.c')
-rw-r--r--rts/Schedule.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/rts/Schedule.c b/rts/Schedule.c
index fa0fc8c63e..bc0e7d3acf 100644
--- a/rts/Schedule.c
+++ b/rts/Schedule.c
@@ -21,7 +21,6 @@
#include "Stats.h"
#include "STM.h"
#include "Prelude.h"
-#include "ThreadLabels.h"
#include "Updates.h"
#include "Proftimer.h"
#include "ProfHeap.h"
@@ -1335,8 +1334,6 @@ scheduleHandleThreadFinished (Capability *cap, Task *task, StgTSO *t)
}
}
- removeThreadLabel(task->incall->tso->id);
-
// We no longer consider this thread and task to be bound to
// each other. The TSO lives on until it is GC'd, but the
// task is about to be released by the caller, and we don't