< prev index next >
src/hotspot/share/prims/jvm.cpp
Print this page
rev 59083 : DRAFT 8236522: NonTearable marker interface for inline classes to enforce atomicity
@@ -2330,14 +2330,11 @@
oop o = JNIHandles::resolve(array);
Klass* k = o->klass();
if ((o == NULL) || (!k->is_array_klass())) {
THROW_0(vmSymbols::java_lang_IllegalArgumentException());
}
- if (k->is_valueArray_klass()) {
- return ValueArrayKlass::cast(k)->is_atomic();
- }
- return true;
+ return ArrayKlass::cast(k)->element_access_is_atomic();
JVM_END
JVM_ENTRY(jobject, JVM_ArrayEnsureAccessAtomic(JNIEnv *env, jclass unused, jobject array))
JVMWrapper("JVM_ArrayEnsureAccessAtomic");
oop o = JNIHandles::resolve(array);
@@ -2345,11 +2342,11 @@
if ((o == NULL) || (!k->is_array_klass())) {
THROW_0(vmSymbols::java_lang_IllegalArgumentException());
}
if (k->is_valueArray_klass()) {
ValueArrayKlass* vk = ValueArrayKlass::cast(k);
- if (!vk->is_atomic()) {
+ if (!vk->element_access_is_atomic()) {
/**
* Need to decide how to implement:
*
* 1) Change to objArrayOop layout, therefore oop->klass() differs so
* then "<atomic>[Qfoo;" klass needs to subclass "[Qfoo;" to pass through
< prev index next >