summaryrefslogtreecommitdiff
path: root/mark.c
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2022-03-22 23:31:26 +0300
committerIvan Maidanski <ivmai@mail.ru>2022-03-22 23:31:26 +0300
commit22dc290703d265d042728d27924bd8142726e1bc (patch)
tree87f46cd8a75a66ad57ef081f616e9d39d51f1fc5 /mark.c
parent4bf077e7a2e04e2efbf570daed76507a046664f5 (diff)
downloadbdwgc-22dc290703d265d042728d27924bd8142726e1bc.tar.gz
Workaround TSan false positive in push_marked1 and ptr_store_and_dirty
* mark.c [USE_PUSH_MARKED_ACCELERATORS] (GC_push_marked1): Add GC_ATTR_NO_SANITIZE_THREAD attribute.
Diffstat (limited to 'mark.c')
-rw-r--r--mark.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/mark.c b/mark.c
index 6068e733..5aab28e4 100644
--- a/mark.c
+++ b/mark.c
@@ -1683,6 +1683,7 @@ GC_INNER void GC_push_all_stack(ptr_t bottom, ptr_t top)
#ifdef USE_PUSH_MARKED_ACCELERATORS
/* Push all objects reachable from marked objects in the given block */
/* containing objects of size 1 granule. */
+GC_ATTR_NO_SANITIZE_THREAD
STATIC void GC_push_marked1(struct hblk *h, hdr *hhdr)
{
word * mark_word_addr = &(hhdr->hb_marks[0]);