On 11/12/2014 7:02 AM, Andrew Haley wrote:
On 12/05/2014 09:49 PM, Martin Buchholz wrote:
The actual implementations of storestore (see below) seem to
universally give you the stronger ::release barrier, and it seems
likely that hotspot engineers are implicitly relying on that, that
some uses of ::storestore in the hotspot sources are bugs (should be
::release instead) and that there is very little potential performance
benefit from using ::storestore instead of ::release, precisely
because the additional loadstore barrier is very close to free on all
current hardware.

That's not really true for ARM, where the additional loadstore requires
a full barrier.  There is a good use for a storestore, which is when
zeroing a newly-created object.

There are many good uses of storestore in the various lock-free algorithms inside hotspot.

David

Andrew.

Reply via email to