From: Ivan Maidanski Date: Thu, 17 Nov 2016 07:23:53 +0000 (+0300) Subject: Fix assertion violation in mark_local checking GC_mark_stack_top X-Git-Tag: v8.0.0~1028 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a563b883dd221bf51d0df4b65c95833d33960b3d;p=platform%2Fupstream%2Flibgc.git Fix assertion violation in mark_local checking GC_mark_stack_top * mark.c (GC_mark_local): Replace AO_load with AO_load_acquire in the assertion comparing global_first_nonempty to GC_mark_stack_top. --- diff --git a/mark.c b/mark.c index f8928b3..b83ad91 100644 --- a/mark.c +++ b/mark.c @@ -1075,7 +1075,7 @@ STATIC void GC_mark_local(mse *local_mark_stack, int id) + sizeof(mse)); GC_ASSERT((word)global_first_nonempty >= (word)GC_mark_stack && (word)global_first_nonempty <= - (word)AO_load((volatile AO_t *)&GC_mark_stack_top) + (word)AO_load_acquire((volatile AO_t *)&GC_mark_stack_top) + sizeof(mse)); if ((word)my_first_nonempty < (word)global_first_nonempty) { my_first_nonempty = global_first_nonempty;