RFR: JDK-8207169: X86: Modularize cmpxchg-oop assembler for C1 and C2

Roland Westrelin rwestrel at redhat.com
Wed Aug 29 16:08:43 UTC 2018


Hi Erik,

> An alternative that I think should be considered, is to do what ZGC 
> does: generate nodes in ZBarrierSetC2, and macro expand barrier nodes in 
> ZBarrierSetC2. That way, your changes can remain in your 
> ShenandoahBarrierSetC2 class, and not leak out into the AD files.

We need a tight loop and the surest way to get that is to have it hand
coded in assembly code (and as I remember it's especially true on
aarch64). There are other examples in the ad file where a node is
expanded to some assembly coded loop to have the best possible generated
code.

Roland.



More information about the hotspot-gc-dev mailing list