< prev index next >
src/hotspot/os_cpu/linux_aarch64/orderAccess_linux_aarch64.inline.hpp
Print this page
@@ -50,27 +50,24 @@
FULL_MEM_BARRIER;
}
template<size_t byte_size>
struct OrderAccess::PlatformOrderedLoad<byte_size, X_ACQUIRE>
- VALUE_OBJ_CLASS_SPEC
{
template <typename T>
T operator()(const volatile T* p) const { T data; __atomic_load(p, &data, __ATOMIC_ACQUIRE); return data; }
};
template<size_t byte_size>
struct OrderAccess::PlatformOrderedStore<byte_size, RELEASE_X>
- VALUE_OBJ_CLASS_SPEC
{
template <typename T>
void operator()(T v, volatile T* p) const { __atomic_store(p, &v, __ATOMIC_RELEASE); }
};
template<size_t byte_size>
struct OrderAccess::PlatformOrderedStore<byte_size, RELEASE_X_FENCE>
- VALUE_OBJ_CLASS_SPEC
{
template <typename T>
void operator()(T v, volatile T* p) const { release_store(p, v); fence(); }
};
< prev index next >