public class org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest extends org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest
  super_class: org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest
{
  private static final java.lang.Class<?>[] classesWithInternalFields;
    descriptor: [Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: [Ljava/lang/Class<*>;

  private static final java.lang.reflect.Method createFieldMethod;
    descriptor: Ljava/lang/reflect/Method;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.reflect.Field indexField;
    descriptor: Ljava/lang/reflect/Field;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=4, args_size=0
         0: .line 55
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Class;
            aastore
            dup
            iconst_1
            ldc Ljava/lang/ClassLoader;
            aastore
            putstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.classesWithInternalFields:[Ljava/lang/Class;
         1: .line 61
            aconst_null
            astore 0 /* m */
        start local 0 // java.lang.reflect.Method m
         2: .line 62
            aconst_null
            astore 1 /* f */
        start local 1 // java.lang.reflect.Field f
         3: .line 64
            ldc "jdk.vm.ci.hotspot.HotSpotResolvedObjectTypeImpl"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 2 /* typeImpl */
        start local 2 // java.lang.Class typeImpl
         4: .line 65
            aload 2 /* typeImpl */
            ldc "createField"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljdk/vm/ci/meta/JavaType;
            aastore
            dup
            iconst_1
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_3
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 0 /* m */
         5: .line 66
            aload 0 /* m */
            iconst_1
            invokestatic org.graalvm.compiler.core.common.util.Util.setAccessible:(Ljava/lang/reflect/Executable;Z)V
         6: .line 67
            ldc "jdk.vm.ci.hotspot.HotSpotResolvedJavaFieldImpl"
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            astore 3 /* fieldImpl */
        start local 3 // java.lang.Class fieldImpl
         7: .line 68
            aload 3 /* fieldImpl */
            ldc "index"
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
            astore 1 /* f */
         8: .line 69
            aload 1 /* f */
            iconst_1
            invokestatic org.graalvm.compiler.core.common.util.Util.setAccessible:(Ljava/lang/reflect/Field;Z)V
        end local 3 // java.lang.Class fieldImpl
        end local 2 // java.lang.Class typeImpl
         9: .line 70
            goto 12
      StackMap locals: java.lang.reflect.Method java.lang.reflect.Field
      StackMap stack: java.lang.Exception
        10: astore 2 /* e */
        start local 2 // java.lang.Exception e
        11: .line 71
            new java.lang.AssertionError
            dup
            aload 2 /* e */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 2 // java.lang.Exception e
        12: .line 74
      StackMap locals:
      StackMap stack:
            aload 0 /* m */
            putstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.createFieldMethod:Ljava/lang/reflect/Method;
        13: .line 75
            aload 1 /* f */
            putstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.indexField:Ljava/lang/reflect/Field;
        end local 1 // java.lang.reflect.Field f
        end local 0 // java.lang.reflect.Method m
        14: .line 76
            return
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            2   14     0          m  Ljava/lang/reflect/Method;
            3   14     1          f  Ljava/lang/reflect/Field;
            4    9     2   typeImpl  Ljava/lang/Class<*>;
            7    9     3  fieldImpl  Ljava/lang/Class<*>;
           11   12     2          e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           3     9      10  Class java.lang.Exception

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
         0: .line 53
            aload 0 /* this */
            invokespecial org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotResolvedJavaFieldTest;

  private int jvmFieldModifiers();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
         0: .line 83
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.runtime:()Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            astore 1 /* config */
        start local 1 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
         1: .line 84
            new jdk.vm.ci.hotspot.HotSpotVMConfigAccess
            dup
            aload 1 /* config */
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getStore:()Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;
            invokespecial jdk.vm.ci.hotspot.HotSpotVMConfigAccess.<init>:(Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;)V
            astore 2 /* access */
        start local 2 // jdk.vm.ci.hotspot.HotSpotVMConfigAccess access
         2: .line 85
            aload 2 /* access */
            ldc "JVM_ACC_ENUM"
            ldc Ljava/lang/Integer;
            sipush 16384
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfigAccess.getConstant:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 3 /* accEnum */
        start local 3 // int accEnum
         3: .line 86
            aload 2 /* access */
            ldc "JVM_ACC_SYNTHETIC"
            ldc Ljava/lang/Integer;
            sipush 4096
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.vm.ci.hotspot.HotSpotVMConfigAccess.getConstant:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 4 /* accSynthetic */
        start local 4 // int accSynthetic
         4: .line 87
            sipush 223
            iload 3 /* accEnum */
            ior
            iload 4 /* accSynthetic */
            ior
            ireturn
        end local 4 // int accSynthetic
        end local 3 // int accEnum
        end local 2 // jdk.vm.ci.hotspot.HotSpotVMConfigAccess access
        end local 1 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/hotspot/test/HotSpotResolvedJavaFieldTest;
            1    5     1        config  Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            2    5     2        access  Ljdk/vm/ci/hotspot/HotSpotVMConfigAccess;
            3    5     3       accEnum  I
            4    5     4  accSynthetic  I

  public void testModifiersForInternal();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=10, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
         0: .line 97
            getstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.classesWithInternalFields:[Ljava/lang/Class;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 10
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.Class[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* c */
        start local 1 // java.lang.Class c
         2: .line 98
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 1 /* c */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 5 /* type */
        start local 5 // jdk.vm.ci.meta.ResolvedJavaType type
         3: .line 99
            aload 5 /* type */
            iconst_0
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getInstanceFields:(Z)[Ljdk/vm/ci/meta/ResolvedJavaField;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 8
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest java.lang.Class int int java.lang.Class[] jdk.vm.ci.meta.ResolvedJavaType top int int jdk.vm.ci.meta.ResolvedJavaField[]
      StackMap stack:
         4: aload 9
            iload 7
            aaload
            astore 6 /* field */
        start local 6 // jdk.vm.ci.meta.ResolvedJavaField field
         5: .line 100
            aload 6 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.isInternal:()Z
            ifeq 7
         6: .line 101
            lconst_0
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.jvmFieldModifiers:()I
            iconst_m1
            ixor
            aload 6 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getModifiers:()I
            iand
            i2l
            invokestatic org.junit.Assert.assertEquals:(JJ)V
        end local 6 // jdk.vm.ci.meta.ResolvedJavaField field
         7: .line 99
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
         8: iload 7
            iload 8
            if_icmplt 4
        end local 5 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 1 // java.lang.Class c
         9: .line 97
            iinc 2 1
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.Class[]
      StackMap stack:
        10: iload 2
            iload 3
            if_icmplt 1
        11: .line 105
            return
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Lorg/graalvm/compiler/hotspot/test/HotSpotResolvedJavaFieldTest;
            2    9     1      c  Ljava/lang/Class<*>;
            3    9     5   type  Ljdk/vm/ci/meta/ResolvedJavaType;
            5    7     6  field  Ljdk/vm/ci/meta/ResolvedJavaField;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testEquivalenceForInternalFields();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=13, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
         0: .line 118
            getstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.classesWithInternalFields:[Ljava/lang/Class;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 13
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.Class[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* c */
        start local 1 // java.lang.Class c
         2: .line 119
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 1 /* c */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 5 /* type */
        start local 5 // jdk.vm.ci.meta.ResolvedJavaType type
         3: .line 120
            aload 5 /* type */
            iconst_0
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getInstanceFields:(Z)[Ljdk/vm/ci/meta/ResolvedJavaField;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 11
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest java.lang.Class int int java.lang.Class[] jdk.vm.ci.meta.ResolvedJavaType top int int jdk.vm.ci.meta.ResolvedJavaField[]
      StackMap stack:
         4: aload 9
            iload 7
            aaload
            astore 6 /* field */
        start local 6 // jdk.vm.ci.meta.ResolvedJavaField field
         5: .line 121
            aload 6 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.isInternal:()Z
            ifeq 10
         6: .line 122
            aload 6 /* field */
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaField
            astore 10 /* expected */
        start local 10 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField expected
         7: .line 123
            getstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.indexField:Ljava/lang/reflect/Field;
            aload 10 /* expected */
            invokevirtual java.lang.reflect.Field.getInt:(Ljava/lang/Object;)I
            istore 11 /* index */
        start local 11 // int index
         8: .line 124
            getstatic org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.createFieldMethod:Ljava/lang/reflect/Method;
            aload 5 /* type */
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 10 /* expected */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getType:()Ljdk/vm/ci/meta/JavaType;
            aastore
            dup
            iconst_1
            aload 10 /* expected */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getOffset:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 10 /* expected */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getModifiers:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
            iload 11 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaField
            astore 12 /* actual */
        start local 12 // jdk.vm.ci.meta.ResolvedJavaField actual
         9: .line 125
            aload 10 /* expected */
            aload 12 /* actual */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 12 // jdk.vm.ci.meta.ResolvedJavaField actual
        end local 11 // int index
        end local 10 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField expected
        end local 6 // jdk.vm.ci.meta.ResolvedJavaField field
        10: .line 120
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        11: iload 7
            iload 8
            if_icmplt 4
        end local 5 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 1 // java.lang.Class c
        12: .line 118
            iinc 2 1
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.Class[]
      StackMap stack:
        13: iload 2
            iload 3
            if_icmplt 1
        14: .line 129
            return
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lorg/graalvm/compiler/hotspot/test/HotSpotResolvedJavaFieldTest;
            2   12     1         c  Ljava/lang/Class<*>;
            3   12     5      type  Ljdk/vm/ci/meta/ResolvedJavaType;
            5   10     6     field  Ljdk/vm/ci/meta/ResolvedJavaField;
            7   10    10  expected  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaField;
            8   10    11     index  I
            9   10    12    actual  Ljdk/vm/ci/meta/ResolvedJavaField;
    Exceptions:
      throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.reflect.InvocationTargetException
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIsInObject();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
         0: .line 133
            ldc Ljava/lang/String;
            invokevirtual java.lang.Class.getDeclaredFields:()[Ljava/lang/reflect/Field;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 7
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.reflect.Field[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* f */
        start local 1 // java.lang.reflect.Field f
         2: .line 134
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 1 /* f */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaField:(Ljava/lang/reflect/Field;)Ljdk/vm/ci/meta/ResolvedJavaField;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaField
            astore 5 /* rf */
        start local 5 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField rf
         3: .line 135
            aload 5 /* rf */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 5 /* rf */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
            ldc "a string"
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.forString:(Ljava/lang/String;)Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.isInObject:(Ljdk/vm/ci/meta/JavaConstant;)Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aload 5 /* rf */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.isStatic:()Z
            ifeq 4
            iconst_0
            goto 5
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest java.lang.reflect.Field int int java.lang.reflect.Field[] jdk.vm.ci.hotspot.HotSpotResolvedJavaField
      StackMap stack: java.lang.String java.lang.Boolean
         4: iconst_1
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest java.lang.reflect.Field int int java.lang.reflect.Field[] jdk.vm.ci.hotspot.HotSpotResolvedJavaField
      StackMap stack: java.lang.String java.lang.Boolean int
         5: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        end local 5 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField rf
        end local 1 // java.lang.reflect.Field f
         6: .line 133
            iinc 2 1
      StackMap locals: org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest top int int java.lang.reflect.Field[]
      StackMap stack:
         7: iload 2
            iload 3
            if_icmplt 1
         8: .line 137
            return
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotResolvedJavaFieldTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotResolvedJavaFieldTest;
            2    6     1     f  Ljava/lang/reflect/Field;
            3    6     5    rf  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaField;
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "HotSpotResolvedJavaFieldTest.java"