RFR: JDK-8210752: Remaining explicit barriers for C2
rkennke at redhat.com
Fri Sep 14 12:56:07 UTC 2018
Please review the following change:
JDK-8210187 introduced explicit barriers for C2. There've been a few
- Unsafe accesses also require explicit barriers when it's unknown if
the access is on-heap or off-heap. In this case, C2 turns the access
into a raw access, in which case the access_load/store APIs cannot
determine what to do. Emitting explicit barriers solves this for
Shenandoah: in case of raw access, base will be NULL, which gets handled
by a null-check (in this case the barrier is ignored), for on-heap
access, the null-check will fail and the barrier triggered correctly.
- One arraycopy barrier on dst erroneously emitted for ACCESS_READ where
it should be ACCESS_WRITE (my mistake)
- Object equality using CmpP requires stable oops, and thus barriers on
- vectorizedMismatch() and copyMemory() also require explicit barriers
before building the addresses and feeding them into the calls.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 836 bytes
Desc: OpenPGP digital signature
More information about the hotspot-gc-dev