public class org.graalvm.compiler.truffle.test.TransferToInterpreterTest extends org.graalvm.compiler.truffle.test.TestWithPolyglotOptions
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.truffle.test.TransferToInterpreterTest
  super_class: org.graalvm.compiler.truffle.test.TestWithPolyglotOptions
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
         0: .line 43
            aload 0 /* this */
            invokespecial org.graalvm.compiler.truffle.test.TestWithPolyglotOptions.<init>:()V
            return
        end local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/truffle/test/TransferToInterpreterTest;

  public void setup();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
         0: .line 47
            aload 0 /* this */
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "engine.CompileImmediately"
            aastore
            dup
            iconst_1
            getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.toString:()Ljava/lang/String;
            aastore
            invokevirtual org.graalvm.compiler.truffle.test.TransferToInterpreterTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
            pop
         1: .line 48
            return
        end local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/truffle/test/TransferToInterpreterTest;
    RuntimeVisibleAnnotations: 
      org.junit.Before()

  public void test();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=11, args_size=1
        start local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
         0: .line 70
            new org.graalvm.compiler.truffle.test.TransferToInterpreterTest$TestRootNode
            dup
            aload 0 /* this */
            invokespecial org.graalvm.compiler.truffle.test.TransferToInterpreterTest$TestRootNode.<init>:(Lorg/graalvm/compiler/truffle/test/TransferToInterpreterTest;)V
            astore 1 /* rootNode */
        start local 1 // com.oracle.truffle.api.nodes.RootNode rootNode
         1: .line 71
            invokestatic org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.getRuntime:()Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
            astore 2 /* runtime */
        start local 2 // org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime runtime
         2: .line 72
            aload 2 /* runtime */
            aload 1 /* rootNode */
            invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
            astore 3 /* target */
        start local 3 // org.graalvm.compiler.truffle.runtime.OptimizedCallTarget target
         3: .line 73
            aload 3 /* target */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 74
            aload 3 /* target */
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         5: .line 75
            aload 3 /* target */
            astore 4 /* compilable */
        start local 4 // org.graalvm.compiler.truffle.runtime.OptimizedCallTarget compilable
         6: .line 76
            aload 2 /* runtime */
            aload 4 /* compilable */
            invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.getTruffleCompiler:(Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Lorg/graalvm/compiler/truffle/common/TruffleCompiler;
            astore 5 /* compiler */
        start local 5 // org.graalvm.compiler.truffle.common.TruffleCompiler compiler
         7: .line 77
            aload 3 /* target */
            invokestatic org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.getOptionsForCompiler:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)Ljava/util/Map;
            astore 6 /* options */
        start local 6 // java.util.Map options
         8: .line 78
            aconst_null
            astore 7
            aconst_null
            astore 8
         9: aload 5 /* compiler */
            aload 4 /* compilable */
            invokeinterface org.graalvm.compiler.truffle.common.TruffleCompiler.openCompilation:(Lorg/graalvm/compiler/truffle/common/CompilableTruffleAST;)Lorg/graalvm/compiler/truffle/common/TruffleCompilation;
            astore 9 /* compilation */
        start local 9 // org.graalvm.compiler.truffle.common.TruffleCompilation compilation
        10: .line 79
            aload 5 /* compiler */
            aload 6 /* options */
            aload 9 /* compilation */
            invokeinterface org.graalvm.compiler.truffle.common.TruffleCompiler.openDebugContext:(Ljava/util/Map;Lorg/graalvm/compiler/truffle/common/TruffleCompilation;)Lorg/graalvm/compiler/truffle/common/TruffleDebugContext;
            astore 10 /* debug */
        start local 10 // org.graalvm.compiler.truffle.common.TruffleDebugContext debug
        11: .line 80
            aload 5 /* compiler */
            aload 10 /* debug */
            aload 9 /* compilation */
            aload 6 /* options */
            new org.graalvm.compiler.truffle.runtime.TruffleInlining
            dup
            invokespecial org.graalvm.compiler.truffle.runtime.TruffleInlining.<init>:()V
            aconst_null
            aconst_null
            invokeinterface org.graalvm.compiler.truffle.common.TruffleCompiler.doCompile:(Lorg/graalvm/compiler/truffle/common/TruffleDebugContext;Lorg/graalvm/compiler/truffle/common/TruffleCompilation;Ljava/util/Map;Lorg/graalvm/compiler/truffle/common/TruffleMetaAccessProvider;Lorg/graalvm/compiler/truffle/common/TruffleCompilationTask;Lorg/graalvm/compiler/truffle/common/TruffleCompilerListener;)V
        end local 10 // org.graalvm.compiler.truffle.common.TruffleDebugContext debug
        12: .line 81
            aload 9 /* compilation */
            ifnull 18
            aload 9 /* compilation */
            invokeinterface org.graalvm.compiler.truffle.common.TruffleCompilation.close:()V
            goto 18
      StackMap locals: org.graalvm.compiler.truffle.test.TransferToInterpreterTest com.oracle.truffle.api.nodes.RootNode org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime org.graalvm.compiler.truffle.runtime.OptimizedCallTarget org.graalvm.compiler.truffle.runtime.OptimizedCallTarget org.graalvm.compiler.truffle.common.TruffleCompiler java.util.Map java.lang.Throwable java.lang.Throwable org.graalvm.compiler.truffle.common.TruffleCompilation
      StackMap stack: java.lang.Throwable
        13: astore 7
            aload 9 /* compilation */
            ifnull 14
            aload 9 /* compilation */
            invokeinterface org.graalvm.compiler.truffle.common.TruffleCompilation.close:()V
        end local 9 // org.graalvm.compiler.truffle.common.TruffleCompilation compilation
      StackMap locals:
      StackMap stack:
        14: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 8
            aload 7
            ifnonnull 16
            aload 8
            astore 7
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 7
            aload 8
            if_acmpeq 17
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 7
            athrow
        18: .line 82
      StackMap locals:
      StackMap stack:
            aload 3 /* target */
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        19: .line 83
            aload 3 /* target */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 84
            aload 3 /* target */
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        21: .line 85
            aload 3 /* target */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
            pop
        22: .line 86
            aload 3 /* target */
            invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        23: .line 87
            return
        end local 6 // java.util.Map options
        end local 5 // org.graalvm.compiler.truffle.common.TruffleCompiler compiler
        end local 4 // org.graalvm.compiler.truffle.runtime.OptimizedCallTarget compilable
        end local 3 // org.graalvm.compiler.truffle.runtime.OptimizedCallTarget target
        end local 2 // org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime runtime
        end local 1 // com.oracle.truffle.api.nodes.RootNode rootNode
        end local 0 // org.graalvm.compiler.truffle.test.TransferToInterpreterTest this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lorg/graalvm/compiler/truffle/test/TransferToInterpreterTest;
            1   24     1     rootNode  Lcom/oracle/truffle/api/nodes/RootNode;
            2   24     2      runtime  Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
            3   24     3       target  Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
            6   24     4   compilable  Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
            7   24     5     compiler  Lorg/graalvm/compiler/truffle/common/TruffleCompiler;
            8   24     6      options  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
           10   14     9  compilation  Lorg/graalvm/compiler/truffle/common/TruffleCompilation;
           11   12    10        debug  Lorg/graalvm/compiler/truffle/common/TruffleDebugContext;
      Exception table:
        from    to  target  type
          10    12      13  any
           9    15      15  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "TransferToInterpreterTest.java"
NestMembers:
  org.graalvm.compiler.truffle.test.TransferToInterpreterTest$TestRootNode
InnerClasses:
  private final TestRootNode = org.graalvm.compiler.truffle.test.TransferToInterpreterTest$TestRootNode of org.graalvm.compiler.truffle.test.TransferToInterpreterTest