public class org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest extends org.graalvm.compiler.core.test.GraalCompilerTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest
  super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
  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.HotSpotMonitorValueTest this
         0: .line 49
            aload 0 /* this */
            invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotMonitorValueTest;

  protected jdk.vm.ci.code.InstalledCode addMethod(org.graalvm.compiler.debug.DebugContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.code.CompilationResult);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/code/CompilationResult;)Ljdk/vm/ci/code/InstalledCode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
         0: .line 61
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe method assertNotNull(BytecodeFrame) is undefined for the type HotSpotMonitorValueTest\n\tThe method assertNull(BytecodeFrame) is undefined for the type HotSpotMonitorValueTest\n\tThe method not(Value) is undefined for the type HotSpotMonitorValueTest\n\tThe method not(JavaValue) is undefined for the type HotSpotMonitorValueTest\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotMonitorValueTest;
    MethodParameters:
            Name  Flags
      debug       
      method      
      compResult  

  private jdk.vm.ci.meta.ResolvedJavaMethod lookupObjectWait();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
         0: .line 91
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            ldc Ljava/lang/Object;
            ldc "wait"
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aastore
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaMethod:(Ljava/lang/reflect/Executable;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
         1: areturn
         2: .line 92
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 93
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "Could not find Object.wait(long): %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* e */
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 1 // java.lang.Exception e
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotMonitorValueTest;
            3    4     1     e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception

  public void test();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
         0: .line 97
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/HotSpotMonitorValueTest;
    RuntimeInvisibleAnnotations: 
      Test()

  private static void locks2(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // java.lang.Object a
        start local 1 // java.lang.Object b
         0: .line 103
            aload 0 /* a */
            dup
            astore 2
            monitorenter
         1: .line 104
            aload 1 /* b */
            dup
            astore 3
            monitorenter
         2: .line 105
            aload 0 /* a */
            ldc 5
            invokevirtual java.lang.Object.wait:(J)V
         3: .line 104
            aload 3
            monitorexit
         4: goto 7
      StackMap locals: java.lang.Object java.lang.Object java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
         5: aload 3
            monitorexit
         6: athrow
         7: .line 103
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 108
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object b
        end local 0 // java.lang.Object a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0     a  Ljava/lang/Object;
            0   12     1     b  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
           1     8       9  any
           9    10       9  any
    Exceptions:
      throws java.lang.InterruptedException
    MethodParameters:
      Name  Flags
      a     
      b     

  public static void testSnippet(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // java.lang.Object a
        start local 1 // java.lang.Object b
         0: .line 111
            aload 0 /* a */
            dup
            astore 2
            monitorenter
         1: .line 112
            aload 0 /* a */
            dup
            astore 3
            monitorenter
         2: .line 113
            aload 0 /* a */
            aload 1 /* b */
            invokestatic org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest.locks2:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 112
            aload 3
            monitorexit
         4: goto 7
      StackMap locals: java.lang.Object java.lang.Object java.lang.Object java.lang.Object
      StackMap stack: java.lang.Throwable
         5: aload 3
            monitorexit
         6: athrow
         7: .line 111
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 116
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object b
        end local 0 // java.lang.Object a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0     a  Ljava/lang/Object;
            0   12     1     b  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
           1     8       9  any
           9    10       9  any
    Exceptions:
      throws java.lang.InterruptedException
    MethodParameters:
      Name  Flags
      a     
      b     
}
SourceFile: "HotSpotMonitorValueTest.java"