RFR: Unclutter ShConcurrentMark (multiple changes)
Aleksey Shipilev
shade at redhat.com
Tue Sep 25 17:16:59 UTC 2018
http://cr.openjdk.java.net/~shade/shenandoah/unclutter-scm/webrev.01/
This cleans up ShenandoahConcurrentMark interface a bit. Before doing it, there are a few cleanup
patches that reduce its API surface.
*) "Handle update_refs, class_unload, ref_proc in ShConcMark better": Inlines getters right at
uses, since ShHeap instance is accessible anyway. Also improves mark_loop signatures without
dragging these parameters along.
*) "Common liveness cache in ShHeap": both ShConcurrentMark and ShTraversalGC use parts of the
cache. Moreover, Traversal instantiates the array twice: once is ShConcurrentMark that it delegates
marking to, and the second time for itself. It seems cleaner to common this caching in ShHeap.
*) "Inline/rename confusingly named methods in ShConcurrentMark": make sure we have clear entry
points that are shared by both concurrent and Full GC cycle;
*) "Sort ShenandoahConcurrentMark methods/fields into logical groups": the final touch that
reshuffles the methods around
Testing: tier3_gc_shenandoah {fastdebug|release}
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list