Happy path
Aleksey Shipilev
shade at redhat.com
Thu Apr 26 12:24:00 UTC 2018
On 04/26/2018 12:55 PM, Roland Westrelin wrote:
>
>> 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.
And coalescing worked before this patch, because we treated the null-checks specially?
I think the patch is fine to go in current form, plus the little "mask" fix we discussed before.
-Aleksey
More information about the shenandoah-dev
mailing list