--- a/src/hotspot/share/oops/constantPool.cpp Mon Oct 16 20:22:41 2017 +0000
+++ b/src/hotspot/share/oops/constantPool.cpp Mon Oct 16 22:36:06 2017 -0400
@@ -226,7 +226,7 @@
symbol_at_put(name_index, name);
name->increment_refcount();
Klass** adr = resolved_klasses()->adr_at(resolved_klass_index);
- OrderAccess::release_store_ptr((Klass* volatile *)adr, k);
+ OrderAccess::release_store(adr, k);
// The interpreter assumes when the tag is stored, the klass is resolved
// and the Klass* non-NULL, so we need hardware store ordering here.
@@ -243,7 +243,7 @@
CPKlassSlot kslot = klass_slot_at(class_index);
int resolved_klass_index = kslot.resolved_klass_index();
Klass** adr = resolved_klasses()->adr_at(resolved_klass_index);
- OrderAccess::release_store_ptr((Klass* volatile *)adr, k);
+ OrderAccess::release_store(adr, k);
// The interpreter assumes when the tag is stored, the klass is resolved
// and the Klass* non-NULL, so we need hardware store ordering here.
@@ -511,7 +511,7 @@
trace_class_resolution(this_cp, k);
}
Klass** adr = this_cp->resolved_klasses()->adr_at(resolved_klass_index);
- OrderAccess::release_store_ptr((Klass* volatile *)adr, k);
+ OrderAccess::release_store(adr, k);
// The interpreter assumes when the tag is stored, the klass is resolved
// and the Klass* stored in _resolved_klasses is non-NULL, so we need
// hardware store ordering here.