On Fri, 11 Sep 2020 13:54:38 GMT, Zhengyu Gu <z...@openjdk.org> wrote:
>> Thank you, we'll take a look next week. > > Hi Lin, > > 1) The patch does not compile with assertion on > @@ -1490,7 +1490,7 @@ private: > cl->do_object(obj); > obj->oop_iterate(&oops); > } > - assert(q.is_empty(), "should be empty"); > + assert(q->is_empty(), "should be empty"); > > 2) I don't like to export following methods as public. Instead, you can > declare ShenandoahParallelObjectIterator as > friend class of ShenandoahHeap. > void scan_roots_for_iteration(Stack<oop, mtGC>* oop_stack, > ObjectIterateScanRootClosure* oops); > bool prepare_aux_bitmap_for_iteration(); > void reclaim_aux_bitmap_for_iteration(); > > 3) Please rename ObjectIterateParScanClosure to > ShenandoahObjectIterateParScanClosure for code convention > > 4) There is no point to seed mark roots if prepare_aux_bitmap_for_iteration() > failed in > ShenandoahParallelObjectIterator constructor. Hi @zhengyu123 , Thanks for your comments! I have refined the code and update the PR. -Lin ------------- PR: https://git.openjdk.java.net/jdk/pull/67