[concurrency-interest] x86 NOOP memory barriers

Michael Barker mikeb01 at gmail.com
Fri Aug 2 18:33:33 EDT 2013


> So because a putOrdered is a write to memory it cannot be reordered with
> other writes, as per "8.2.3.2 Neither Loads Nor Stores Are Reordered with
> Like Operations".

Yes in combination with the compiler reordering restrictions.  In
Hotspot this is implemented within the
LibraryCall::inline_unsafe_ordered_store (library_call.cpp) call.
Look for:

insert_mem_bar(Op_MemBarRelease);
insert_mem_bar(Op_MemBarCPUOrder);

Mike.


More information about the Concurrency-interest mailing list