RFR: 8234562: Move OrderAccess::release_store*/load_acquire to Atomic
stefan.karlsson at oracle.com
Thu Nov 21 10:33:28 UTC 2019
I'd like to propose that we move release_store, release_store_fence, and
load_acquire, from OrderAccess to Atomic.
Atomic already has the relaxed store and load, among other functions for
concurrent access, but release_store, release_store_fence, and
load_acquire, are located in OrderAccess.
After this change there's an inconsistency in the order of the
parameters in the store functions in the Atomic API:
void store(T store_value, volatile D* dest)
void release_store(volatile D* dest, T store_value)
void release_store_fence(volatile D* dest, T store_value)
I'd like to address that in a separate RFE, where I propose that we move
the dest parameter to the left for all the Atomic functions. See:
I've tested this patch with tier1-7. I've also built fastdebug on the
following configs: aarch64, arm32, ppc64le, s390x, shenandoah, zero,
minimal, just to minimize any disruptions.
More information about the hotspot-dev