RFR (sh/8): Backport Traversal GC

Zhengyu Gu zgu at redhat.com
Tue Nov 12 13:13:47 UTC 2019


Okay,

Thanks.

-Zhengyu

On 11/11/19 10:21 AM, Roman Kennke wrote:
> This backports the Traversal GC mode from sh/jdk11.
> 
> Some notable changes had to be made:
> - The GC interface is radically different between jdk8 and jdk11. I
> hooked up the new barriers to mostly-existing machinery for pre- or
> post-barriers for G1. This covers everything that we need for traversal GC.
> - The patch introduces ShenandoahKeepAliveBarrier, and thusly changes
> many uses of ShenandoahSATBBarrier to that.
> - We need an extra scan-all-roots-pass in init-traversal when we are
> doing class-unloading, because we need to pre-evac-and-update all weak
> roots. This is required because we don't have native LRB in 8.
> 
> Testing: hotspot_gc_shenandoah (x86_64, x86_32, aarch64 all without PCH,
> all with fastdebug and release builds), specjvm and specjbb with
> fastdebug/+ShVerify and release build
> 
> Webrev:
> http://cr.openjdk.java.net/~rkennke/shjdk8-traversal/webrev.00/
> 
> Can I please get a review?
> 
> Roman
> 



More information about the shenandoah-dev mailing list