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 589
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 590
aload 0 /* this */
aload 1 /* debug */
putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.debug:Lorg/graalvm/compiler/debug/DebugContext;
2: .line 591
aload 0 /* this */
aload 2 /* graph */
putfield org.graalvm.compiler.printer.BinaryGraphPrinter$GraphInfo.graph:Lorg/graalvm/compiler/graph/Graph;
3: .line 592
aconst_null
astore 3 /* scheduleResult */
start local 3 // org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult scheduleResult
4: .line 593
aload 2 /* graph */
instanceof org.graalvm.compiler.nodes.StructuredGraph
ifeq 14
5: .line 595
aload 2 /* graph */
checkcast org.graalvm.compiler.nodes.StructuredGraph
astore 4 /* structuredGraph */
start local 4 // org.graalvm.compiler.nodes.StructuredGraph structuredGraph
6: .line 596
aload 4 /* structuredGraph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getLastSchedule:()Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
astore 3 /* scheduleResult */
7: .line 597
aload 3 /* scheduleResult */
ifnonnull 14
8: .line 600
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 602
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 603
aload 5 /* schedule */
aload 4 /* structuredGraph */
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
11: .line 604
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 605
goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
13: pop
end local 4 // org.graalvm.compiler.nodes.StructuredGraph structuredGraph
14: .line 611
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 612
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 613
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 614
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 615
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