< prev index next >
src/share/vm/prims/unsafe.cpp
Print this page
rev 11906 : 8165018: Missing memory barrier for PPC64 in Unsafe_GetObjectVolatile
Reviewed-by:
*** 322,331 ****
--- 322,335 ----
oop p = JNIHandles::resolve(obj);
void* addr = index_oop_from_field_offset_long(p, offset);
volatile oop v;
+ if (support_IRIW_for_not_multiple_copy_atomic_cpu) {
+ OrderAccess::fence();
+ }
+
if (UseCompressedOops) {
volatile narrowOop n = *(volatile narrowOop*) addr;
(void)const_cast<oop&>(v = oopDesc::decode_heap_oop(n));
} else {
(void)const_cast<oop&>(v = *(volatile oop*) addr);
< prev index next >