RFR: Access barriers for arraycopy
Aleksey Shipilev
shade at redhat.com
Tue Feb 20 16:54:01 UTC 2018
On 02/20/2018 05:38 PM, Roman Kennke wrote:
> This adds support for arraycopy barriers using the new Access API.
> - Add the hooks in a bunch of places where arraycopy is used
> - Fix a small issue in the actual Access API
> - Make Shenandoah Access barriers apply read- and write-barriers to
> the src and dst objects, and re-resolve the actual addresses using
> some pointer math.
>
> This should reduce upstream exposure even more.
>
> I'll upstream the changes required to shared code ASAP.
>
> Test: hotspot_gc_shenandoah
>
> http://cr.openjdk.java.net/~rkennke/arraycopy-access-barriers/webrev.00/
*) Since we are stabilizing sh/jdk*10*, I would prefer not to extend Access API here: when doing
this, we are risking unforeseen interactions with the rest of VM and other GCs. Do we actually need
the extensions to work correctly?
*) Stray whitespace before "((T*)":
87 src = ((T*) (void*) src_obj) + src_offset;
103 src = ((T*) (void*) src_obj) + src_offset;
-Aleksey
More information about the shenandoah-dev
mailing list