final class org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
  super_class: java.lang.Object
{
  final org.graalvm.compiler.debug.DebugContext debug;
    descriptor: Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0010) ACC_FINAL

  final org.graalvm.compiler.graph.Graph graph;
    descriptor: Lorg/graalvm/compiler/graph/Graph;
    flags: (0x0010) ACC_FINAL

  final org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg;
    descriptor: Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
    flags: (0x0010) ACC_FINAL

  final org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>> blockToNodes;
    descriptor: Lorg/graalvm/compiler/core/common/cfg/BlockMap;
    flags: (0x0010) ACC_FINAL
    Signature: Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;

  final org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block> nodeToBlocks;
    descriptor: Lorg/graalvm/compiler/graph/NodeMap;
    flags: (0x0010) ACC_FINAL
    Signature: Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;

  final java.util.List<org.graalvm.compiler.nodes.cfg.Block> blocks;
    descriptor: Ljava/util/List;
    flags: (0x0010) ACC_FINAL
    Signature: Ljava/util/List<Lorg/graalvm/compiler/nodes/cfg/Block;>;

  private void <init>(org.graalvm.compiler.debug.DebugContext, org.graalvm.compiler.graph.Graph);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/graph/Graph;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo this
        start local 1 // org.graalvm.compiler.debug.DebugContext debug
        start local 2 // org.graalvm.compiler.graph.Graph graph
         0: .line 595
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 596
            aload 0 /* this */
            aload 1 /* debug */
            putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.debug:Lorg/graalvm/compiler/debug/DebugContext;
         2: .line 597
            aload 0 /* this */
            aload 2 /* graph */
            putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.graph:Lorg/graalvm/compiler/graph/Graph;
         3: .line 598
            aconst_null
            astore 3 /* scheduleResult */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult scheduleResult
         4: .line 599
            aload 2 /* graph */
            instanceof org.graalvm.compiler.nodes.StructuredGraph
            ifeq 14
         5: .line 601
            aload 2 /* graph */
            checkcast org.graalvm.compiler.nodes.StructuredGraph
            astore 4 /* structuredGraph */
        start local 4 // org.graalvm.compiler.nodes.StructuredGraph structuredGraph
         6: .line 602
            aload 4 /* structuredGraph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getLastSchedule:()Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
            astore 3 /* scheduleResult */
         7: .line 603
            aload 3 /* scheduleResult */
            ifnonnull 14
         8: .line 606
            getstatic org.graalvm.compiler.debug.DebugOptions.PrintGraphWithSchedule:Lorg/graalvm/compiler/options/OptionKey;
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.graph.Graph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 9
            aload 1 /* debug */
            ldc Ljava/lang/Throwable;
            invokevirtual org.graalvm.compiler.debug.DebugContext.contextLookup:(Ljava/lang/Class;)Ljava/lang/Object;
            ifnull 14
         9: .line 608
      StackMap locals: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.graph.Graph org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            new org.graalvm.compiler.phases.schedule.SchedulePhase
            dup
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.graph.Graph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase.<init>:(Lorg/graalvm/compiler/options/OptionValues;)V
            astore 5 /* schedule */
        start local 5 // org.graalvm.compiler.phases.schedule.SchedulePhase schedule
        10: .line 609
            aload 5 /* schedule */
            aload 4 /* structuredGraph */
            invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        11: .line 610
            aload 4 /* structuredGraph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getLastSchedule:()Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
            astore 3 /* scheduleResult */
        end local 5 // org.graalvm.compiler.phases.schedule.SchedulePhase schedule
        12: .line 611
            goto 14
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: pop
        end local 4 // org.graalvm.compiler.nodes.StructuredGraph structuredGraph
        14: .line 617
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* scheduleResult */
            ifnonnull 15
            aload 1 /* debug */
            ldc Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.debug.DebugContext.contextLookup:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.cfg.ControlFlowGraph
            goto 16
      StackMap locals:
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
        15: aload 3 /* scheduleResult */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
      StackMap locals: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.graph.Graph org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.nodes.cfg.ControlFlowGraph
        16: putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
        17: .line 618
            aload 0 /* this */
            aload 3 /* scheduleResult */
            ifnonnull 18
            aconst_null
            goto 19
      StackMap locals:
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
        18: aload 3 /* scheduleResult */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getBlockToNodesMap:()Lorg/graalvm/compiler/core/common/cfg/BlockMap;
      StackMap locals: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.graph.Graph org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.core.common.cfg.BlockMap
        19: putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.blockToNodes:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
        20: .line 619
            aload 0 /* this */
            aload 3 /* scheduleResult */
            ifnonnull 21
            aconst_null
            goto 22
      StackMap locals:
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
        21: aload 3 /* scheduleResult */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getNodeToBlockMap:()Lorg/graalvm/compiler/graph/NodeMap;
      StackMap locals: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.graph.Graph org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.graph.NodeMap
        22: putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.nodeToBlocks:Lorg/graalvm/compiler/graph/NodeMap;
        23: .line 620
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            ifnonnull 24
            aconst_null
            goto 25
      StackMap locals:
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo
        24: aload 0 /* this */
            getfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
            invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
      StackMap locals: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.graph.Graph org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
      StackMap stack: org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo java.util.List
        25: putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.blocks:Ljava/util/List;
        26: .line 621
            return
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult scheduleResult
        end local 2 // org.graalvm.compiler.graph.Graph graph
        end local 1 // org.graalvm.compiler.debug.DebugContext debug
        end local 0 // org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   27     0             this  Lorg/graalvm/compiler/printer/BinaryGraphPrinter$GraphInfo;
            0   27     1            debug  Lorg/graalvm/compiler/debug/DebugContext;
            0   27     2            graph  Lorg/graalvm/compiler/graph/Graph;
            4   27     3   scheduleResult  Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
            6   14     4  structuredGraph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           10   12     5         schedule  Lorg/graalvm/compiler/phases/schedule/SchedulePhase;
      Exception table:
        from    to  target  type
           9    12      13  Class java.lang.Throwable
    MethodParameters:
       Name  Flags
      debug  
      graph  
}
SourceFile: "BinaryGraphPrinter.java"
NestHost: org.graalvm.compiler.printer.BinaryGraphPrinter
InnerClasses:
  public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph
  final GraphInfo = org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo of org.graalvm.compiler.printer.BinaryGraphPrinter