final class com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode extends com.oracle.truffle.api.nodes.RootNode
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
  super_class: com.oracle.truffle.api.nodes.RootNode
{
  private com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode child;
    descriptor: Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.nodes.Node$Child()

  private final com.oracle.truffle.api.TruffleLanguage<?> language;
    descriptor: Lcom/oracle/truffle/api/TruffleLanguage;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Lcom/oracle/truffle/api/TruffleLanguage<*>;

  private final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.source.SourceSection rootSection;
    descriptor: Lcom/oracle/truffle/api/source/SourceSection;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int depth;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.truffle.api.frame.FrameSlot entryCall;
    descriptor: Lcom/oracle/truffle/api/frame/FrameSlot;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  void <init>(com.oracle.truffle.api.TruffleLanguage<?>, com.oracle.truffle.api.source.Source, );
    descriptor: (Lcom/oracle/truffle/api/TruffleLanguage;Lcom/oracle/truffle/api/source/Source;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
        start local 1 // com.oracle.truffle.api.TruffleLanguage language
        start local 2 // com.oracle.truffle.api.source.Source parsedSource
        start local 3 // int depth
         0: .line 552
            aload 0 /* this */
            aload 1 /* language */
            invokespecial com.oracle.truffle.api.nodes.RootNode.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;)V
         1: .line 549
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            ldc "entryCall"
            getstatic com.oracle.truffle.api.frame.FrameSlotKind.Boolean:Lcom/oracle/truffle/api/frame/FrameSlotKind;
            invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.findOrAddFrameSlot:(Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameSlotKind;)Lcom/oracle/truffle/api/frame/FrameSlot;
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.entryCall:Lcom/oracle/truffle/api/frame/FrameSlot;
         2: .line 553
            aload 0 /* this */
            aload 1 /* language */
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.language:Lcom/oracle/truffle/api/TruffleLanguage;
         3: .line 554
            aload 0 /* this */
            iload 3 /* depth */
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
         4: .line 555
            aload 0 /* this */
            aload 2 /* parsedSource */
            iconst_1
            invokevirtual com.oracle.truffle.api.source.Source.createSection:(I)Lcom/oracle/truffle/api/source/SourceSection;
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.rootSection:Lcom/oracle/truffle/api/source/SourceSection;
         5: .line 556
            aload 0 /* this */
            ldc "Test Stack"
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.name:Ljava/lang/String;
         6: .line 557
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.createTestNodes:()Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.child:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
         7: .line 558
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.child:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.insert:(Lcom/oracle/truffle/api/nodes/Node;)Lcom/oracle/truffle/api/nodes/Node;
            pop
         8: .line 559
            return
        end local 3 // int depth
        end local 2 // com.oracle.truffle.api.source.Source parsedSource
        end local 1 // com.oracle.truffle.api.TruffleLanguage language
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;
            0    9     1      language  Lcom/oracle/truffle/api/TruffleLanguage<*>;
            0    9     2  parsedSource  Lcom/oracle/truffle/api/source/Source;
            0    9     3         depth  I
    Signature: (Lcom/oracle/truffle/api/TruffleLanguage<*>;Lcom/oracle/truffle/api/source/Source;I)V
    MethodParameters:
              Name  Flags
      language      
      parsedSource  
      depth         

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
         0: .line 563
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.name:Ljava/lang/String;
            areturn
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;

  public com.oracle.truffle.api.source.SourceSection getSourceSection();
    descriptor: ()Lcom/oracle/truffle/api/source/SourceSection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
         0: .line 568
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.rootSection:Lcom/oracle/truffle/api/source/SourceSection;
            areturn
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;

  public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
    descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
        start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
         0: .line 573
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.entryCall:Lcom/oracle/truffle/api/frame/FrameSlot;
            iconst_5
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            if_icmpne 1
            iconst_1
            goto 2
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode com.oracle.truffle.api.frame.VirtualFrame
      StackMap stack: com.oracle.truffle.api.frame.VirtualFrame com.oracle.truffle.api.frame.FrameSlot
         1: iconst_0
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode com.oracle.truffle.api.frame.VirtualFrame
      StackMap stack: com.oracle.truffle.api.frame.VirtualFrame com.oracle.truffle.api.frame.FrameSlot int
         2: invokeinterface com.oracle.truffle.api.frame.VirtualFrame.setBoolean:(Lcom/oracle/truffle/api/frame/FrameSlot;Z)V
         3: .line 574
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.child:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
            areturn
        end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;
            0    4     1  frame  Lcom/oracle/truffle/api/frame/VirtualFrame;
    MethodParameters:
       Name  Flags
      frame  

  protected boolean isInstrumentable();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
         0: .line 579
            iconst_1
            ireturn
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;

  protected java.util.List<com.oracle.truffle.api.TruffleStackTraceElement> findAsynchronousFrames(com.oracle.truffle.api.frame.Frame);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;)Ljava/util/List;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
         0: .line 584
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            ifne 2
         1: .line 585
            aconst_null
            areturn
         2: .line 589
      StackMap locals:
      StackMap stack:
            aload 1 /* frame */
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.entryCall:Lcom/oracle/truffle/api/frame/FrameSlot;
            invokeinterface com.oracle.truffle.api.frame.Frame.getBoolean:(Lcom/oracle/truffle/api/frame/FrameSlot;)Z
            istore 2 /* isEntryCall */
        start local 2 // boolean isEntryCall
         3: .line 590
            goto 6
        end local 2 // boolean isEntryCall
      StackMap locals:
      StackMap stack: com.oracle.truffle.api.frame.FrameSlotTypeException
         4: pop
         5: .line 591
            aconst_null
            areturn
        start local 2 // boolean isEntryCall
         6: .line 593
      StackMap locals: int
      StackMap stack:
            iload 2 /* isEntryCall */
            ifne 8
         7: .line 594
            aconst_null
            areturn
         8: .line 596
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 3 /* asyncStack */
        start local 3 // java.util.List asyncStack
         9: .line 597
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.language:Lcom/oracle/truffle/api/TruffleLanguage;
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.rootSection:Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            iconst_1
            isub
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;Lcom/oracle/truffle/api/source/Source;I)V
            astore 4 /* asyncRoot */
        start local 4 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode asyncRoot
        10: .line 599
      StackMap locals: java.util.List com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
      StackMap stack:
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 4 /* asyncRoot */
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            astore 5 /* callTarget */
        start local 5 // com.oracle.truffle.api.RootCallTarget callTarget
        11: .line 600
            aload 4 /* asyncRoot */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.child:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            astore 6 /* leaf */
        start local 6 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode leaf
        12: .line 601
            goto 14
        13: .line 602
      StackMap locals: com.oracle.truffle.api.RootCallTarget com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode
      StackMap stack:
            aload 6 /* leaf */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.testChild:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            astore 6 /* leaf */
        14: .line 601
      StackMap locals:
      StackMap stack:
            aload 6 /* leaf */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.testChild:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            ifnonnull 13
        15: .line 604
            aload 6 /* leaf */
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.getCallNode:()Lcom/oracle/truffle/api/nodes/DirectCallNode;
            astore 7 /* callNode */
        start local 7 // com.oracle.truffle.api.nodes.DirectCallNode callNode
        16: .line 606
            aload 4 /* asyncRoot */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            iconst_1
            isub
            if_icmpne 20
        17: .line 607
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            iconst_0
            anewarray java.lang.Object
            aload 4 /* asyncRoot */
            invokevirtual com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createMaterializedFrame:([Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameDescriptor;)Lcom/oracle/truffle/api/frame/MaterializedFrame;
            astore 8 /* asyncFrame */
        start local 8 // com.oracle.truffle.api.frame.Frame asyncFrame
        18: .line 608
            aload 8 /* asyncFrame */
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.entryCall:Lcom/oracle/truffle/api/frame/FrameSlot;
            iconst_1
            invokeinterface com.oracle.truffle.api.frame.Frame.setBoolean:(Lcom/oracle/truffle/api/frame/FrameSlot;Z)V
        19: .line 609
            goto 21
        end local 8 // com.oracle.truffle.api.frame.Frame asyncFrame
        20: .line 610
      StackMap locals: com.oracle.truffle.api.nodes.DirectCallNode
      StackMap stack:
            aconst_null
            astore 8 /* asyncFrame */
        start local 8 // com.oracle.truffle.api.frame.Frame asyncFrame
        21: .line 612
      StackMap locals: com.oracle.truffle.api.frame.Frame
      StackMap stack:
            aload 6 /* leaf */
            aload 5 /* callTarget */
            aload 8 /* asyncFrame */
            invokestatic com.oracle.truffle.api.TruffleStackTraceElement.create:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/RootCallTarget;Lcom/oracle/truffle/api/frame/Frame;)Lcom/oracle/truffle/api/TruffleStackTraceElement;
            astore 9 /* element */
        start local 9 // com.oracle.truffle.api.TruffleStackTraceElement element
        22: .line 613
            aload 3 /* asyncStack */
            iconst_0
            aload 9 /* element */
            invokeinterface java.util.List.add:(ILjava/lang/Object;)V
        23: .line 614
            aload 7 /* callNode */
            ifnonnull 25
        24: .line 615
            goto 27
        25: .line 617
      StackMap locals: com.oracle.truffle.api.TruffleStackTraceElement
      StackMap stack:
            aload 7 /* callNode */
            invokevirtual com.oracle.truffle.api.nodes.DirectCallNode.getCallTarget:()Lcom/oracle/truffle/api/CallTarget;
            checkcast com.oracle.truffle.api.RootCallTarget
            invokeinterface com.oracle.truffle.api.RootCallTarget.getRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
            checkcast com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
            astore 4 /* asyncRoot */
        end local 9 // com.oracle.truffle.api.TruffleStackTraceElement element
        end local 8 // com.oracle.truffle.api.frame.Frame asyncFrame
        end local 7 // com.oracle.truffle.api.nodes.DirectCallNode callNode
        end local 6 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode leaf
        end local 5 // com.oracle.truffle.api.RootCallTarget callTarget
        26: .line 618
            goto 10
        27: .line 619
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode com.oracle.truffle.api.frame.Frame int java.util.List com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
      StackMap stack:
            aload 3 /* asyncStack */
            areturn
        end local 4 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode asyncRoot
        end local 3 // java.util.List asyncStack
        end local 2 // boolean isEntryCall
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   28     0         this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;
            0   28     1        frame  Lcom/oracle/truffle/api/frame/Frame;
            3    4     2  isEntryCall  Z
            6   28     2  isEntryCall  Z
            9   28     3   asyncStack  Ljava/util/List<Lcom/oracle/truffle/api/TruffleStackTraceElement;>;
           10   28     4    asyncRoot  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;
           11   26     5   callTarget  Lcom/oracle/truffle/api/RootCallTarget;
           12   26     6         leaf  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
           16   26     7     callNode  Lcom/oracle/truffle/api/nodes/DirectCallNode;
           18   20     8   asyncFrame  Lcom/oracle/truffle/api/frame/Frame;
           21   26     8   asyncFrame  Lcom/oracle/truffle/api/frame/Frame;
           22   26     9      element  Lcom/oracle/truffle/api/TruffleStackTraceElement;
      Exception table:
        from    to  target  type
           2     3       4  Class com.oracle.truffle.api.frame.FrameSlotTypeException
    Signature: (Lcom/oracle/truffle/api/frame/Frame;)Ljava/util/List<Lcom/oracle/truffle/api/TruffleStackTraceElement;>;
    MethodParameters:
       Name  Flags
      frame  

  private com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode createTestNodes();
    descriptor: ()Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
         0: .line 624
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            ifle 8
         1: .line 625
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
            dup
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.language:Lcom/oracle/truffle/api/TruffleLanguage;
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.rootSection:Lcom/oracle/truffle/api/source/SourceSection;
            invokevirtual com.oracle.truffle.api.source.SourceSection.getSource:()Lcom/oracle/truffle/api/source/Source;
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            iconst_1
            isub
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;Lcom/oracle/truffle/api/source/Source;I)V
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
            astore 2 /* callTarget */
        start local 2 // com.oracle.truffle.api.RootCallTarget callTarget
         2: .line 626
            invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
            aload 2 /* callTarget */
            invokeinterface com.oracle.truffle.api.TruffleRuntime.createDirectCallNode:(Lcom/oracle/truffle/api/CallTarget;)Lcom/oracle/truffle/api/nodes/DirectCallNode;
            astore 3 /* callNode */
        start local 3 // com.oracle.truffle.api.nodes.DirectCallNode callNode
         3: .line 627
            aload 0 /* this */
            getfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode.depth:I
            iconst_2
            irem
            ifne 6
         4: .line 628
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$1
            dup
            aload 0 /* this */
            aload 3 /* callNode */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$1.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;Lcom/oracle/truffle/api/nodes/DirectCallNode;)V
            astore 1 /* node */
        start local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
         5: .line 641
            goto 9
        end local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
         6: .line 642
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode top com.oracle.truffle.api.RootCallTarget com.oracle.truffle.api.nodes.DirectCallNode
      StackMap stack:
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$2
            dup
            aload 0 /* this */
            aload 3 /* callNode */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$2.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;Lcom/oracle/truffle/api/nodes/DirectCallNode;)V
            astore 1 /* node */
        end local 3 // com.oracle.truffle.api.nodes.DirectCallNode callNode
        end local 2 // com.oracle.truffle.api.RootCallTarget callTarget
        start local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
         7: .line 661
            goto 9
        end local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
         8: .line 662
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode
      StackMap stack:
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$3
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$3.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            astore 1 /* node */
        start local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
         9: .line 674
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* nodes */
        start local 2 // java.util.List nodes
        10: .line 676
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$4
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$4.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 683
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode
            dup
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.<init>:()V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        12: .line 686
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$5
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$5.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        13: .line 693
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$6
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$6.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        14: .line 701
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$7
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$7.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        15: .line 713
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$8
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$8.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        16: .line 720
            aload 2 /* nodes */
            new com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$9
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$9.<init>:(Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 731
            aload 1 /* node */
            astore 3 /* lastNode */
        start local 3 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode lastNode
        18: .line 732
            aload 2 /* nodes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 22
      StackMap locals: com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode java.util.List com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode top java.util.Iterator
      StackMap stack:
        19: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode
            astore 4 /* n */
        start local 4 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode n
        20: .line 733
            aload 4 /* n */
            aload 3 /* lastNode */
            putfield com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode.testChild:Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
        21: .line 734
            aload 4 /* n */
            astore 3 /* lastNode */
        end local 4 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode n
        22: .line 732
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        23: .line 736
            aload 3 /* lastNode */
            areturn
        end local 3 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode lastNode
        end local 2 // java.util.List nodes
        end local 1 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode node
        end local 0 // com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   24     0        this  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestStackRootNode;
            5    6     1        node  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            7    8     1        node  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            9   24     1        node  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
            2    7     2  callTarget  Lcom/oracle/truffle/api/RootCallTarget;
            3    7     3    callNode  Lcom/oracle/truffle/api/nodes/DirectCallNode;
           10   24     2       nodes  Ljava/util/List<Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;>;
           18   24     3    lastNode  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
           20   22     4           n  Lcom/oracle/truffle/api/debug/test/DebugStackFrameTest$TestStackLanguage$TestNode;
}
SourceFile: "DebugStackFrameTest.java"
NestHost: com.oracle.truffle.api.debug.test.DebugStackFrameTest
InnerClasses:
  final TestStackLanguage = com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage of com.oracle.truffle.api.debug.test.DebugStackFrameTest
  private TestNode = com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestNode of com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage
  private final TestStackRootNode = com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode of com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$1
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$2
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$3
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$4
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$5
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$6
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$7
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$8
  com.oracle.truffle.api.debug.test.DebugStackFrameTest$TestStackLanguage$TestStackRootNode$9
  public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node