class org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder
super_class: java.lang.Object
{
volatile int volatileField;
descriptor: I
flags: (0x0040) ACC_VOLATILE
int field;
descriptor: I
flags: (0x0000)
static final java.lang.invoke.VarHandle VOLATILE_FIELD;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static final java.lang.invoke.VarHandle FIELD;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: .line 59
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc Lorg/graalvm/compiler/replacements/jdk9/test/VarHandleTest$Holder;
ldc "volatileField"
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder.VOLATILE_FIELD:Ljava/lang/invoke/VarHandle;
1: .line 60
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc Lorg/graalvm/compiler/replacements/jdk9/test/VarHandleTest$Holder;
ldc "field"
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder.FIELD:Ljava/lang/invoke/VarHandle;
2: .line 61
goto 5
StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
3: astore 0 /* ex */
start local 0 // java.lang.ReflectiveOperationException ex
4: .line 62
aload 0 /* ex */
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 0 // java.lang.ReflectiveOperationException ex
5: .line 64
StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
4 5 0 ex Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 2 3 Class java.lang.ReflectiveOperationException
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 // org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder this
0: .line 47
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 49
aload 0 /* this */
bipush 42
putfield org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder.volatileField:I
2: .line 52
aload 0 /* this */
sipush 2018
putfield org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder.field:I
3: .line 47
return
end local 0 // org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/replacements/jdk9/test/VarHandleTest$Holder;
}
SourceFile: "VarHandleTest.java"
NestHost: org.graalvm.compiler.replacements.jdk9.test.VarHandleTest
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
Holder = org.graalvm.compiler.replacements.jdk9.test.VarHandleTest$Holder of org.graalvm.compiler.replacements.jdk9.test.VarHandleTest