RFR: 8242130: Shenandoah: Simplify arraycopy-barrier dispatching

Roman Kennke rkennke at redhat.com
Fri Apr 3 19:13:11 UTC 2020


Currently, calling the arraycopy dispatches 3 times in a row:

1. In the asm stub (GC or no GC)
2. In arraycopy_pre (marking or evac/update)
3. In arraycopy_update (evac or update)

This can be simplified by doing only the fast-path branch in asm stub,
and the GC-phase dispatch once in the runtime.

In addition, there are various cleanups that can be done on the way.

Issue:
https://bugs.openjdk.java.net/browse/JDK-8242130
Webrev:
http://cr.openjdk.java.net/~rkennke/JDK-8242130/webrev.00/

Testing: hotspot_gc_shenandoah (x86/aarch64)

Ok?

Roman



More information about the shenandoah-dev mailing list