Mercurial > hg > graal-jvmci-8
diff src/share/vm/oops/oop.inline.hpp @ 24157:f4e6ddeb5b6f jvmci-0.31
race in field updates when creating ArrayKlasses can lead to crash (JDK-8182397)
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 19 Jul 2017 19:44:11 +0200 |
parents | b5f3a471e646 |
children | 0137da2b56d9 |
line wrap: on
line diff
--- a/src/share/vm/oops/oop.inline.hpp Mon Jul 10 12:38:12 2017 +0200 +++ b/src/share/vm/oops/oop.inline.hpp Wed Jul 19 19:44:11 2017 +0200 @@ -324,6 +324,12 @@ *metadata_field_addr(offset) = value; } +inline void oopDesc::metadata_field_put_volatile(int offset, Metadata* value) { + OrderAccess::release(); + *metadata_field_addr(offset) = value; + OrderAccess::fence(); +} + inline void oopDesc::obj_field_put_raw(int offset, oop value) { UseCompressedOops ? encode_store_heap_oop(obj_field_addr<narrowOop>(offset), value) :