Happy path

Roland Westrelin rwestrel at redhat.com
Thu Apr 26 10:55:30 UTC 2018


> There are, however, some interesting cases with barrier merging. For example, BarrierMultiplePrim
> test from gc-bench [1] indicates the back-to-back WB coalescing is broken:
>   http://cr.openjdk.java.net/~shade/shenandoah/happy-path-wb/baseline.perfasm
>   http://cr.openjdk.java.net/~shade/shenandoah/happy-path-wb/happy.perfasm

It seems there are null checks between the barriers. Even though they
are implict null checks in the final code, they are are actual control
flow constructs in the IR. That's sufficient to stop coalescing. The
other part of the patch with agressive coalescing should clone the null
checks and coalesce the barriers.

Roland.


More information about the shenandoah-dev mailing list