RFR(M): 8232896: ZGC: Enable C2 clone intrinsic

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Oct 31 16:52:54 UTC 2019


Looks good.

Thanks
Vladimir

> On Oct 31, 2019, at 9:37 AM, Nils Eliasson <nils.eliasson at oracle.com> wrote:
> 
> Hi,
> 
> This patch fixes and enables the clone intrinsic for C2 with ZGC.
> 
> The main thing added is an implementation of the ZBarrierSetC2::clone_at_expansion method. This method handles clone expansion for regular objects and primitive arrays that hasn't already been reduced by optimizations. (Oop array clones doesn't go through this path.)
> 
> The code switches on the type of the source to either make a leaf call to a runtime clone for regular objects, or delegate to BarrierSetC2::clone_at_expansion for primitive arrays.
> 
> Updated micro benchmark shows great gains, especially for small objects that now will be reduced to inlined move-store sequences.
> 
> Bug: https://bugs.openjdk.java.net/browse/JDK-8232896
> 
> Webrev: http://cr.openjdk.java.net/~neliasso/8232896/webrev.02/
> 
> 
> Please review,
> 
> Nils Eliasson
> 



More information about the hotspot-compiler-dev mailing list