< prev index next >
src/java.base/share/classes/java/lang/invoke/VarHandles.java
Print this page
rev 55127 : 8223351: [lworld] Primary mirror and nullable mirror for inline type
Reviewed-by: tbd
@@ -41,11 +41,11 @@
? new VarHandleReferences.FlatValueFieldInstanceReadOnly(refc, foffset, type)
: new VarHandleReferences.FlatValueFieldInstanceReadWrite(refc, foffset, type);
} else {
return f.isFinal() && !isWriteAllowedOnFinalFields
? new VarHandleReferences.FieldInstanceReadOnly(refc, foffset, type)
- : new VarHandleReferences.FieldInstanceReadWrite(refc, foffset, type, f.isValue());
+ : new VarHandleReferences.FieldInstanceReadWrite(refc, foffset, type, f.isInlineableField());
}
}
else if (type == boolean.class) {
return f.isFinal() && !isWriteAllowedOnFinalFields
? new VarHandleBooleans.FieldInstanceReadOnly(refc, foffset)
@@ -104,11 +104,11 @@
long foffset = MethodHandleNatives.staticFieldOffset(f);
if (!type.isPrimitive()) {
assert(!f.isFlattened()); // static field is not flattened
return f.isFinal() && !isWriteAllowedOnFinalFields
? new VarHandleReferences.FieldStaticReadOnly(base, foffset, type)
- : new VarHandleReferences.FieldStaticReadWrite(base, foffset, type, f.isValue());
+ : new VarHandleReferences.FieldStaticReadWrite(base, foffset, type, f.isInlineableField());
}
else if (type == boolean.class) {
return f.isFinal() && !isWriteAllowedOnFinalFields
? new VarHandleBooleans.FieldStaticReadOnly(base, foffset)
: new VarHandleBooleans.FieldStaticReadWrite(base, foffset);
@@ -198,11 +198,11 @@
if (!componentType.isPrimitive()) {
// the redundant componentType.isValue() check is there to
// minimize the performance impact to non-value array.
// It should be removed when Unsafe::isFlattenedArray is intrinsified.
- return componentType.isValue() && UNSAFE.isFlattenedArray(arrayClass)
+ return componentType.isInlineClass() && UNSAFE.isFlattenedArray(arrayClass)
? new VarHandleReferences.ValueArray(aoffset, ashift, arrayClass)
: new VarHandleReferences.Array(aoffset, ashift, arrayClass);
}
else if (componentType == boolean.class) {
return new VarHandleBooleans.Array(aoffset, ashift);
< prev index next >