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 47
            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 59
            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 89
            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 90
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         3: .line 91
            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 95
            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 101
            aload 0 /* a */
            dup
            astore 2
            monitorenter
         1: .line 102
            aload 1 /* b */
            dup
            astore 3
            monitorenter
         2: .line 103
            aload 0 /* a */
            ldc 5
            invokevirtual java.lang.Object.wait:(J)V
         3: .line 102
            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 101
      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 106
      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 109
            aload 0 /* a */
            dup
            astore 2
            monitorenter
         1: .line 110
            aload 0 /* a */
            dup
            astore 3
            monitorenter
         2: .line 111
            aload 0 /* a */
            aload 1 /* b */
            invokestatic org.graalvm.compiler.hotspot.test.HotSpotMonitorValueTest.locks2:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 110
            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 109
      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 114
      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"