< prev index next >
test/hotspot/jtreg/compiler/unsafe/UnsafeGetConstantField.java
Print this page
@@ -220,10 +220,13 @@
return "Ljava/lang/Object;";
} else {
return name();
}
}
+ String unsafeTypeName() {
+ return typeName.equals("Object") ? "Reference" : typeName;
+ }
}
static String internalName(Class cls) {
return cls.getName().replace('.', '/');
}
@@ -350,11 +353,11 @@
if (type.defaultValue != null) {
mv.visitLdcInsn(type.defaultValue);
} else {
mv.visitInsn(ACONST_NULL);
}
- String name = "put" + type.typeName + nameSuffix;
+ String name = "put" + type.unsafeTypeName() + nameSuffix;
mv.visitMethodInsn(INVOKEVIRTUAL, UNSAFE_NAME, name, "(Ljava/lang/Object;J" + type.desc()+ ")V", false);
mv.visitInsn(RETURN);
mv.visitMaxs(0, 0);
mv.visitEnd();
@@ -436,11 +439,11 @@
mv.visitFieldInsn(GETSTATIC, className, "STATIC_BASE", "Ljava/lang/Object;");
} else {
mv.visitFieldInsn(GETSTATIC, className, "t", classDesc);
}
mv.visitFieldInsn(GETSTATIC, className, "FIELD_OFFSET", "J");
- String name = "get" + type.typeName + nameSuffix;
+ String name = "get" + type.unsafeTypeName() + nameSuffix;
mv.visitMethodInsn(INVOKEVIRTUAL, UNSAFE_NAME, name, "(Ljava/lang/Object;J)" + type.desc(), false);
}
void wrapResult(MethodVisitor mv) {
if (type != JavaType.L) {
String desc = String.format("(%s)L%s;", type.desc(), type.wrapper);
< prev index next >