summaryrefslogtreecommitdiff
path: root/rts/sm/MarkWeak.c
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-12-01 14:31:53 -0500
committerBen Gamari <ben@smart-cactus.org>2020-10-30 00:41:14 -0400
commitaad1f803471fff1f187b0a0784dc38a867379847 (patch)
treead5bdae47bd9d8d6b1bf7e015736110989814326 /rts/sm/MarkWeak.c
parent3d0f033c5109ae0131b81e6b9aaf2a04ebeba1f4 (diff)
downloadhaskell-aad1f803471fff1f187b0a0784dc38a867379847.tar.gz
rts/GC: Use atomics
Diffstat (limited to 'rts/sm/MarkWeak.c')
-rw-r--r--rts/sm/MarkWeak.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/sm/MarkWeak.c b/rts/sm/MarkWeak.c
index 3fd4ba6532..b8d120823c 100644
--- a/rts/sm/MarkWeak.c
+++ b/rts/sm/MarkWeak.c
@@ -414,7 +414,7 @@ markWeakPtrList ( void )
StgWeak *w, **last_w;
last_w = &gen->weak_ptr_list;
- for (w = gen->weak_ptr_list; w != NULL; w = w->link) {
+ for (w = gen->weak_ptr_list; w != NULL; w = RELAXED_LOAD(&w->link)) {
// w might be WEAK, EVACUATED, or DEAD_WEAK (actually CON_STATIC) here
#if defined(DEBUG)