public class org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
super_class: java.lang.Object
{
private static final double IMPLICIT_NULL_CHECK_OPPORTUNITY_PROBABILITY_FACTOR;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2.0
protected org.graalvm.compiler.nodes.cfg.ControlFlowGraph cfg;
descriptor: Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
flags: (0x0004) ACC_PROTECTED
protected org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>> blockToNodesMap;
descriptor: Lorg/graalvm/compiler/core/common/cfg/BlockMap;
flags: (0x0004) ACC_PROTECTED
Signature: Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
protected org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block> nodeToBlockMap;
descriptor: Lorg/graalvm/compiler/graph/NodeMap;
flags: (0x0004) ACC_PROTECTED
Signature: Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/phases/schedule/SchedulePhase;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.<init>:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
public void <init>(org.graalvm.compiler.nodes.cfg.ControlFlowGraph);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 3 1 cfg Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
MethodParameters:
Name Flags
cfg
public void run(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
ifnonnull 2
1: aload 0
aload 1
iconst_1
iconst_1
iconst_1
iconst_0
invokestatic org.graalvm.compiler.nodes.cfg.ControlFlowGraph.compute:(Lorg/graalvm/compiler/nodes/StructuredGraph;ZZZZ)Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeMap:()Lorg/graalvm/compiler/graph/NodeMap;
astore 4
start local 4 3: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeBitMap:()Lorg/graalvm/compiler/graph/NodeBitMap;
astore 5
start local 5 4: new org.graalvm.compiler.core.common.cfg.BlockMap
dup
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
astore 6
start local 6 5: aload 0
aload 4
putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodeToBlockMap:Lorg/graalvm/compiler/graph/NodeMap;
6: aload 0
aload 6
putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
7: aload 0
aload 6
aload 4
aload 5
aload 1
iload 3
aload 2
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.EARLIEST_WITH_GUARD_ORDER:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
if_acmpne 8
iconst_1
goto 9
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap
StackMap stack: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int
8: iconst_0
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap
StackMap stack: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int
9: invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.scheduleEarliestIterative:(Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;ZZ)V
10: aload 2
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.isEarliest:()Z
ifne 23
11: new org.graalvm.compiler.core.common.cfg.BlockMap
dup
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
astore 7
start local 7 12: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 16
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
13: aload 11
iload 9
aaload
astore 8
start local 8 14: aload 7
aload 8
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
end local 8 15: iinc 9 1
StackMap locals:
StackMap stack:
16: iload 9
iload 10
if_icmplt 13
17: aload 0
aload 2
aload 4
aload 6
aload 5
aload 7
iload 3
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlocks:(Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap;
astore 8
start local 8 18: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 6
aload 7
aload 4
aload 8
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortNodesLatestWithinBlock:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
19: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 20
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 7
aload 4
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.verifySchedule:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
ifne 20
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
20: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 22
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
ifeq 22
21: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
aload 7
aload 4
invokestatic org.graalvm.compiler.phases.schedule.ScheduleVerification.check:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
ifne 22
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
22: StackMap locals:
StackMap stack:
aload 0
aload 7
putfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
end local 8 end local 7 23: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 4
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.setNodeToBlock:(Lorg/graalvm/compiler/graph/NodeMap;)V
24: aload 1
new org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
dup
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodeToBlockMap:Lorg/graalvm/compiler/graph/NodeMap;
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
invokespecial org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.<init>:(Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.setLastSchedule:(Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;)V
25: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 26 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 26 2 selectedStrategy Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
0 26 3 immutableGraph Z
3 26 4 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
4 26 5 visited Lorg/graalvm/compiler/graph/NodeBitMap;
5 26 6 earliestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
12 23 7 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
14 15 8 b Lorg/graalvm/compiler/nodes/cfg/Block;
18 23 8 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
MethodParameters:
Name Flags
graph
selectedStrategy
immutableGraph
private org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>> calcLatestBlocks(org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, boolean);
descriptor: (Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap;
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=20, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: new org.graalvm.compiler.core.common.cfg.BlockMap
dup
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokespecial org.graalvm.compiler.core.common.cfg.BlockMap.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;)V
astore 7
start local 7 1: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
astore 8
start local 8 2: aload 8
arraylength
iconst_1
isub
istore 9
start local 9 3: goto 39
4: StackMap locals: org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int
StackMap stack:
aload 8
iload 9
aaload
astore 10
start local 10 5: aload 3
aload 10
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
astore 11
start local 11 6: aconst_null
astore 12
start local 12 7: aload 11
invokeinterface java.util.List.size:()I
istore 13
start local 13 8: aload 11
invokeinterface java.util.List.size:()I
iconst_1
isub
istore 14
start local 14 9: goto 37
10: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap int org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.LocationSet int int
StackMap stack:
aload 11
iload 14
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 15
start local 15 11: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 12
aload 2
aload 15
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 10
if_acmpeq 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals: org.graalvm.compiler.graph.Node
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 14
aload 15
instanceof org.graalvm.compiler.nodes.PhiNode
ifne 13
aload 15
instanceof org.graalvm.compiler.nodes.ProxyNode
ifeq 14
StackMap locals:
StackMap stack:
13: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 15
aload 4
aload 15
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifne 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
15: StackMap locals:
StackMap stack:
aload 15
instanceof org.graalvm.compiler.nodes.FixedNode
ifne 36
16: aconst_null
astore 16
start local 16 17: aload 10
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getFirstDominated:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
ifnonnull 19
aload 15
instanceof org.graalvm.compiler.nodes.VirtualState
ifne 19
18: aload 10
astore 16
19: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aconst_null
astore 17
start local 17 20: aload 16
ifnonnull 32
aload 15
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 32
21: aload 15
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 18
start local 18 22: aload 18
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 19
start local 19 23: aload 19
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isMutable:()Z
ifeq 32
24: aload 19
astore 17
25: aload 10
aload 19
invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 32
26: aload 12
ifnonnull 28
27: new org.graalvm.compiler.nodes.cfg.LocationSet
dup
invokespecial org.graalvm.compiler.nodes.cfg.LocationSet.<init>:()V
astore 12
28: StackMap locals: jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.memory.FloatingReadNode jdk.internal.vm.compiler.word.LocationIdentity
StackMap stack:
aload 12
aload 11
iload 14
iconst_1
iadd
iload 13
invokeinterface java.util.List.subList:(II)Ljava/util/List;
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.fillKillSet:(Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List;)V
29: iload 14
istore 13
30: aload 12
aload 19
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.contains:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 32
31: aload 10
astore 16
end local 19 end local 18 32: StackMap locals:
StackMap stack:
aload 16
ifnonnull 35
33: aload 0
aload 10
aload 1
aload 15
aload 2
aload 17
aload 7
aload 5
aload 4
iload 6
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcLatestBlock:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
34: goto 36
35: StackMap locals:
StackMap stack:
aload 15
aload 10
aload 16
aload 2
aload 7
aload 17
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.selectLatestBlock:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
end local 17 end local 16 end local 15 36: StackMap locals:
StackMap stack:
iinc 14 -1
StackMap locals:
StackMap stack:
37: iload 14
ifge 10
end local 14 end local 13 end local 12 end local 11 end local 10 38: iinc 9 -1
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.core.common.cfg.BlockMap int org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.nodes.cfg.Block[] int
StackMap stack:
39: iload 9
ifge 4
end local 9 40: aload 7
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 41 1 strategy Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
0 41 2 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 41 3 earliestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 41 4 visited Lorg/graalvm/compiler/graph/NodeBitMap;
0 41 5 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 41 6 immutableGraph Z
1 41 7 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
2 41 8 reversePostOrder [Lorg/graalvm/compiler/nodes/cfg/Block;
3 40 9 j I
5 38 10 currentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
6 38 11 blockToNodes Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
7 38 12 killed Lorg/graalvm/compiler/nodes/cfg/LocationSet;
8 38 13 previousIndex I
9 38 14 i I
11 36 15 currentNode Lorg/graalvm/compiler/graph/Node;
17 36 16 latestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
20 36 17 constrainingLocation Ljdk/internal/vm/compiler/word/LocationIdentity;
22 32 18 floatingReadNode Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
23 32 19 location Ljdk/internal/vm/compiler/word/LocationIdentity;
Signature: (Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Z)Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
RuntimeInvisibleAnnotations:
org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE"}, justification = "false positive found by findbugs")
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE"}, justification = "false positive found by findbugs")
MethodParameters:
Name Flags
strategy
currentNodeMap
earliestBlockToNodesMap
visited
latestBlockToNodesMap
immutableGraph
protected static void selectLatestBlock(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, jdk.internal.vm.compiler.word.LocationIdentity, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 1
aload 0
aload 1
aload 2
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkLatestEarliestRelation:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 2
if_acmpeq 7
2: aload 3
aload 0
aload 2
invokevirtual org.graalvm.compiler.graph.NodeMap.setAndGrow:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
3: aload 5
ifnull 7
aload 2
aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 7
4: aload 4
aload 2
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
ifnonnull 6
5: aload 4
aload 2
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
6: StackMap locals:
StackMap stack:
aload 4
aload 2
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.ArrayList
aload 0
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
7: StackMap locals:
StackMap stack:
aload 6
aload 2
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
aload 0
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 currentNode Lorg/graalvm/compiler/graph/Node;
0 9 1 currentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 9 2 latestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 9 3 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 9 4 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
0 9 5 constrainingLocation Ljdk/internal/vm/compiler/word/LocationIdentity;
0 9 6 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;)V
MethodParameters:
Name Flags
currentNode
currentBlock
latestBlock
currentNodeMap
watchListMap
constrainingLocation
latestBlockToNodesMap
private static boolean checkLatestEarliestRelation(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 4
aload 1
aload 2
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.dominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
ifne 4
aload 0
instanceof org.graalvm.compiler.nodes.VirtualState
ifeq 1
aload 2
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
if_acmpeq 4
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
2: ldc "%s %s (%s) %s (%s)"
iconst_5
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 1
aastore
dup
iconst_2
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
aastore
dup
iconst_3
aload 2
aastore
dup
iconst_4
aload 2
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
aastore
3: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 currentNode Lorg/graalvm/compiler/graph/Node;
0 5 1 earliestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 5 2 latestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
MethodParameters:
Name Flags
currentNode
earliestBlock
latestBlock
private static boolean verifySchedule(org.graalvm.compiler.nodes.cfg.ControlFlowGraph, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 12
StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
1: aload 6
iload 4
aaload
astore 3
start local 3 2: aload 1
aload 3
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
astore 7
start local 7 3: aload 7
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 10
StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List top java.util.Iterator
StackMap stack:
4: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 8
start local 8 5: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 6
aload 8
invokevirtual org.graalvm.compiler.graph.Node.isAlive:()Z
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 7
aload 2
aload 8
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 3
if_acmpeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.graalvm.compiler.graph.Node.graph:()Lorg/graalvm/compiler/graph/Graph;
checkcast org.graalvm.compiler.nodes.StructuredGraph
astore 10
start local 10 8: aload 10
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasLoops:()Z
ifeq 10
aload 10
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.AFTER_FSA:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
if_acmpne 10
aload 8
instanceof org.graalvm.compiler.nodes.DeoptimizeNode
ifeq 10
9: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 10
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
ifeq 10
new java.lang.AssertionError
dup
aload 8
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 10 end local 8 10: StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] java.util.List top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 7 end local 3 11: iinc 4 1
StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
12: iload 4
iload 5
if_icmplt 1
13: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 cfg Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
0 14 1 blockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 14 2 nodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
2 11 3 b Lorg/graalvm/compiler/nodes/cfg/Block;
3 11 7 nodes Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
5 10 8 n Lorg/graalvm/compiler/graph/Node;
8 10 10 g Lorg/graalvm/compiler/nodes/StructuredGraph;
Signature: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;)Z
MethodParameters:
Name Flags
cfg
blockToNodesMap
nodeMap
public static org.graalvm.compiler.nodes.cfg.Block checkKillsBetween(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.nodes.cfg.Block, jdk.internal.vm.compiler.word.LocationIdentity);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/nodes/cfg/Block;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 1
aload 0
aload 1
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 3
start local 3 2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 3: aload 4
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: goto 11
5: StackMap locals: org.graalvm.compiler.nodes.cfg.Block java.util.List
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 7
aload 0
aload 3
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
ifeq 6
aload 3
aload 1
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.strictlyDominates:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Z
ifne 7
StackMap locals:
StackMap stack:
6: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
aload 3
aload 2
invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 9
8: aload 4
invokeinterface java.util.List.clear:()V
9: StackMap locals:
StackMap stack:
aload 4
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 3
11: StackMap locals:
StackMap stack:
aload 3
aload 0
if_acmpne 5
12: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 13
aload 4
invokeinterface java.util.List.size:()I
iconst_1
if_icmpge 13
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 14
aload 4
aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
aload 0
if_acmpeq 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
aload 0
astore 5
start local 5 15: aload 4
invokeinterface java.util.List.size:()I
iconst_1
isub
istore 6
start local 6 16: goto 25
17: StackMap locals: org.graalvm.compiler.nodes.cfg.Block int
StackMap stack:
aload 4
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 7
start local 7 18: aload 7
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
if_icmple 21
19: aload 7
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
ifnull 21
aload 7
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoop:()Lorg/graalvm/compiler/core/common/cfg/Loop;
checkcast org.graalvm.compiler.nodes.cfg.HIRLoop
aload 2
invokevirtual org.graalvm.compiler.nodes.cfg.HIRLoop.canKill:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 21
20: goto 26
21: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 7
aload 2
invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKillBetweenThisAndDominator:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 23
22: goto 26
23: StackMap locals:
StackMap stack:
aload 7
astore 5
end local 7 24: iinc 6 -1
StackMap locals:
StackMap stack:
25: iload 6
ifge 17
end local 6 26: StackMap locals:
StackMap stack:
aload 5
aload 0
if_acmpeq 43
27: iconst_0
istore 6
start local 6 28: aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
instanceof org.graalvm.compiler.nodes.KillingBeginNode
ifeq 33
29: aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
checkcast org.graalvm.compiler.nodes.KillingBeginNode
invokevirtual org.graalvm.compiler.nodes.KillingBeginNode.getKilledLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 7
start local 7 30: aload 7
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isAny:()Z
ifne 31
aload 7
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 41
31: StackMap locals: int jdk.internal.vm.compiler.word.LocationIdentity
StackMap stack:
iconst_1
istore 6
end local 7 32: goto 41
StackMap locals:
StackMap stack:
33: aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
instanceof org.graalvm.compiler.nodes.MultiKillingBeginNode
ifeq 41
34: aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
checkcast org.graalvm.compiler.nodes.MultiKillingBeginNode
invokevirtual org.graalvm.compiler.nodes.MultiKillingBeginNode.getKilledLocationIdentities:()[Ljdk/internal/vm/compiler/word/LocationIdentity;
dup
astore 10
arraylength
istore 9
iconst_0
istore 8
goto 40
StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.Block int top int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
35: aload 10
iload 8
aaload
astore 7
start local 7 36: aload 7
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isAny:()Z
ifne 37
aload 7
aload 2
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 39
37: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.Block int jdk.internal.vm.compiler.word.LocationIdentity int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
iconst_1
istore 6
38: goto 41
end local 7 39: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.Block int top int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
40: iload 8
iload 9
if_icmplt 35
41: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.cfg.Block jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.List org.graalvm.compiler.nodes.cfg.Block int
StackMap stack:
iload 6
ifeq 43
42: aload 5
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 5
end local 6 43: StackMap locals:
StackMap stack:
aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 earliestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 44 1 latestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 44 2 location Ljdk/internal/vm/compiler/word/LocationIdentity;
2 44 3 current Lorg/graalvm/compiler/nodes/cfg/Block;
3 44 4 dominatorChain Ljava/util/List<Lorg/graalvm/compiler/nodes/cfg/Block;>;
15 44 5 lastBlock Lorg/graalvm/compiler/nodes/cfg/Block;
16 26 6 i I
18 24 7 currentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
28 43 6 foundKill Z
30 32 7 locationIdentity Ljdk/internal/vm/compiler/word/LocationIdentity;
36 39 7 locationIdentity Ljdk/internal/vm/compiler/word/LocationIdentity;
MethodParameters:
Name Flags
earliestBlock
latestBlock
location
private static void fillKillSet(org.graalvm.compiler.nodes.cfg.LocationSet, java.util.List<org.graalvm.compiler.graph.Node>);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
ifne 17
1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 16
StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 2
start local 2 3: aload 2
instanceof org.graalvm.compiler.nodes.memory.SingleMemoryKill
ifeq 8
4: aload 2
checkcast org.graalvm.compiler.nodes.memory.SingleMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.SingleMemoryKill.getKilledLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 4
start local 4 5: aload 0
aload 4
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.add:(Ljdk/internal/vm/compiler/word/LocationIdentity;)V
6: aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
ifeq 16
7: return
end local 4 8: StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
aload 2
instanceof org.graalvm.compiler.nodes.memory.MultiMemoryKill
ifeq 16
9: aload 2
checkcast org.graalvm.compiler.nodes.memory.MultiMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.MultiMemoryKill.getKilledLocationIdentities:()[Ljdk/internal/vm/compiler/word/LocationIdentity;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 15
StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List org.graalvm.compiler.graph.Node java.util.Iterator top int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
10: aload 7
iload 5
aaload
astore 4
start local 4 11: aload 0
aload 4
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.add:(Ljdk/internal/vm/compiler/word/LocationIdentity;)V
12: aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isAny:()Z
ifeq 14
13: return
end local 4 14: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
15: iload 5
iload 6
if_icmplt 10
end local 2 16: StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
17: StackMap locals: org.graalvm.compiler.nodes.cfg.LocationSet java.util.List
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 killed Lorg/graalvm/compiler/nodes/cfg/LocationSet;
0 18 1 subList Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
3 16 2 n Lorg/graalvm/compiler/graph/Node;
5 8 4 identity Ljdk/internal/vm/compiler/word/LocationIdentity;
11 14 4 identity Ljdk/internal/vm/compiler/word/LocationIdentity;
Signature: (Lorg/graalvm/compiler/nodes/cfg/LocationSet;Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;)V
MethodParameters:
Name Flags
killed
subList
private static void sortNodesLatestWithinBlock(org.graalvm.compiler.nodes.cfg.ControlFlowGraph, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.graph.NodeBitMap);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 4
StackMap locals: org.graalvm.compiler.nodes.cfg.ControlFlowGraph org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
1: aload 9
iload 7
aaload
astore 6
start local 6 2: aload 6
aload 1
aload 2
aload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortNodesLatestWithinBlock:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
end local 6 3: iinc 7 1
StackMap locals:
StackMap stack:
4: iload 7
iload 8
if_icmplt 1
5: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 cfg Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
0 6 1 earliestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 6 2 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 6 3 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 6 4 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
0 6 5 visited Lorg/graalvm/compiler/graph/NodeBitMap;
2 3 6 b Lorg/graalvm/compiler/nodes/cfg/Block;
Signature: (Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
MethodParameters:
Name Flags
cfg
earliestBlockToNodesMap
latestBlockToNodesMap
currentNodeMap
watchListMap
visited
private static void sortNodesLatestWithinBlock(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.graph.NodeBitMap);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=16, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
aload 0
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
astore 6
start local 6 1: new java.util.ArrayList
dup
aload 6
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 7
start local 7 2: aconst_null
astore 8
start local 8 3: aload 4
ifnull 6
4: aload 4
aload 0
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.ArrayList
astore 8
5: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 6
aload 8
ifnull 6
aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getKillLocations:()Lorg/graalvm/compiler/nodes/cfg/LocationSet;
invokevirtual org.graalvm.compiler.nodes.cfg.LocationSet.isEmpty:()Z
ifeq 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals: java.util.List java.util.ArrayList java.util.ArrayList
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 9
start local 9 7: aload 9
instanceof org.graalvm.compiler.nodes.LoopExitNode
ifeq 16
8: aload 9
checkcast org.graalvm.compiler.nodes.LoopExitNode
astore 10
start local 10 9: aload 10
invokevirtual org.graalvm.compiler.nodes.LoopExitNode.proxies:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 12
goto 15
StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.LoopExitNode top java.util.Iterator
StackMap stack:
10: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ProxyNode
astore 11
start local 11 11: aload 5
aload 11
invokevirtual org.graalvm.compiler.graph.NodeBitMap.clear:(Lorg/graalvm/compiler/graph/Node;)V
12: aload 11
invokevirtual org.graalvm.compiler.nodes.ProxyNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 13
start local 13 13: aload 13
ifnull 15
aload 3
aload 13
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 0
if_acmpne 15
aload 5
aload 13
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 15
14: aload 13
aload 0
aload 7
aload 3
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
end local 13 end local 11 15: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
end local 10 16: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 10
start local 10 17: aconst_null
astore 11
start local 11 18: aload 10
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isFixedEnd:(Lorg/graalvm/compiler/nodes/FixedNode;)Z
ifeq 20
19: aload 10
astore 11
20: StackMap locals: org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 38
StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
StackMap stack:
21: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 12
start local 12 22: aload 12
aload 11
if_acmpeq 38
23: aload 12
instanceof org.graalvm.compiler.nodes.FixedNode
ifeq 28
24: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 25
aload 3
aload 12
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 0
if_acmpeq 25
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
25: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
aload 0
aload 3
aload 5
aload 7
aload 8
aload 12
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/Node;)V
26: aload 12
aload 0
aload 7
aload 3
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
27: goto 38
StackMap locals:
StackMap stack:
28: aload 3
aload 12
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 0
if_acmpne 38
aload 12
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 38
29: aload 12
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 14
start local 14 30: aload 14
aload 0
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isImplicitNullOpportunity:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
ifeq 33
31: aload 14
aload 0
aload 7
aload 3
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
32: goto 38
33: StackMap locals: org.graalvm.compiler.nodes.memory.FloatingReadNode
StackMap stack:
aload 14
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 15
start local 15 34: aload 0
aload 15
invokevirtual org.graalvm.compiler.nodes.cfg.Block.canKill:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 38
35: aload 8
ifnonnull 37
36: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
37: StackMap locals: jdk.internal.vm.compiler.word.LocationIdentity
StackMap stack:
aload 8
aload 14
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 15 end local 14 end local 12 38: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
39: aload 2
aload 0
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 45
StackMap locals:
StackMap stack:
40: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 12
start local 12 41: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 42
aload 3
aload 12
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 0
if_acmpeq 42
new java.lang.AssertionError
dup
aload 12
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
42: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 43
aload 12
instanceof org.graalvm.compiler.nodes.FixedNode
ifeq 43
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
43: StackMap locals:
StackMap stack:
aload 5
aload 12
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 45
44: aload 12
aload 0
aload 7
aload 3
aload 5
aload 11
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
end local 12 45: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
46: aload 10
ifnull 48
aload 5
aload 10
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 48
47: aload 10
aload 0
aload 7
aload 3
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
48: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap java.util.List java.util.ArrayList java.util.ArrayList org.graalvm.compiler.nodes.AbstractBeginNode org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 2
aload 0
aload 7
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
49: return
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 b Lorg/graalvm/compiler/nodes/cfg/Block;
0 50 1 earliestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 50 2 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 50 3 nodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 50 4 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
0 50 5 unprocessed Lorg/graalvm/compiler/graph/NodeBitMap;
1 50 6 earliestSorting Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
2 50 7 result Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
3 50 8 watchList Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
7 50 9 beginNode Lorg/graalvm/compiler/nodes/AbstractBeginNode;
9 16 10 loopExitNode Lorg/graalvm/compiler/nodes/LoopExitNode;
11 15 11 proxy Lorg/graalvm/compiler/nodes/ProxyNode;
13 15 13 value Lorg/graalvm/compiler/nodes/ValueNode;
17 50 10 endNode Lorg/graalvm/compiler/nodes/FixedNode;
18 50 11 fixedEndNode Lorg/graalvm/compiler/nodes/FixedNode;
22 38 12 n Lorg/graalvm/compiler/graph/Node;
30 38 14 floatingReadNode Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
34 38 15 location Ljdk/internal/vm/compiler/word/LocationIdentity;
41 45 12 n Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
MethodParameters:
Name Flags
b
earliestBlockToNodesMap
latestBlockToNodesMap
nodeMap
watchListMap
unprocessed
private static void checkWatchList(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, java.util.ArrayList<org.graalvm.compiler.graph.Node>, java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/Node;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 4
ifnull 11
aload 4
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 11
1: aload 5
instanceof org.graalvm.compiler.nodes.memory.SingleMemoryKill
ifeq 5
2: aload 5
checkcast org.graalvm.compiler.nodes.memory.SingleMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.SingleMemoryKill.getKilledLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 6
start local 6 3: aload 4
aload 6
aload 0
aload 3
aload 1
aload 2
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Ljava/util/ArrayList;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
end local 6 4: goto 11
StackMap locals:
StackMap stack:
5: aload 5
instanceof org.graalvm.compiler.nodes.memory.MultiMemoryKill
ifeq 11
6: aload 5
checkcast org.graalvm.compiler.nodes.memory.MultiMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.MultiMemoryKill.getKilledLocationIdentities:()[Ljdk/internal/vm/compiler/word/LocationIdentity;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 10
StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap java.util.ArrayList java.util.ArrayList org.graalvm.compiler.graph.Node top int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
7: aload 9
iload 7
aaload
astore 6
start local 6 8: aload 4
aload 6
aload 0
aload 3
aload 1
aload 2
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkWatchList:(Ljava/util/ArrayList;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
end local 6 9: iinc 7 1
StackMap locals:
StackMap stack:
10: iload 7
iload 8
if_icmplt 7
11: StackMap locals: org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap java.util.ArrayList java.util.ArrayList org.graalvm.compiler.graph.Node
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 b Lorg/graalvm/compiler/nodes/cfg/Block;
0 12 1 nodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 12 2 unprocessed Lorg/graalvm/compiler/graph/NodeBitMap;
0 12 3 result Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
0 12 4 watchList Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
0 12 5 n Lorg/graalvm/compiler/graph/Node;
3 4 6 identity Ljdk/internal/vm/compiler/word/LocationIdentity;
8 9 6 identity Ljdk/internal/vm/compiler/word/LocationIdentity;
Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;Lorg/graalvm/compiler/graph/Node;)V
MethodParameters:
Name Flags
b
nodeMap
unprocessed
result
watchList
n
private static void checkWatchList(java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>, jdk.internal.vm.compiler.word.LocationIdentity, org.graalvm.compiler.nodes.cfg.Block, java.util.ArrayList<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap);
descriptor: (Ljava/util/ArrayList;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isImmutable:()Z
ifne 24
1: aload 1
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isAny:()Z
ifeq 9
2: aload 0
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 7
goto 6
StackMap locals: java.util.ArrayList jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap top java.util.Iterator
StackMap stack:
3: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 6
start local 6 4: aload 5
aload 6
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 6
5: aload 6
aload 2
aload 3
aload 4
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
end local 6 6: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 0
invokevirtual java.util.ArrayList.clear:()V
8: goto 24
9: StackMap locals: java.util.ArrayList jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap
StackMap stack:
iconst_0
istore 6
start local 6 10: goto 23
11: StackMap locals: int
StackMap stack:
aload 0
iload 6
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 7
start local 7 12: aload 7
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
astore 8
start local 8 13: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 14
aload 8
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.isMutable:()Z
ifne 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals: org.graalvm.compiler.nodes.memory.FloatingReadNode jdk.internal.vm.compiler.word.LocationIdentity
StackMap stack:
aload 5
aload 7
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 20
15: aload 1
aload 8
invokevirtual jdk.internal.vm.compiler.word.LocationIdentity.overlaps:(Ljdk/internal/vm/compiler/word/LocationIdentity;)Z
ifeq 18
16: aload 7
aload 2
aload 3
aload 4
aload 5
aconst_null
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
17: goto 20
18: StackMap locals:
StackMap stack:
iinc 6 1
19: goto 23
20: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.ArrayList.size:()I
iconst_1
isub
istore 9
start local 9 21: aload 0
iload 6
aload 0
iload 9
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
22: aload 0
iload 9
invokevirtual java.util.ArrayList.remove:(I)Ljava/lang/Object;
pop
end local 9 end local 8 end local 7 23: StackMap locals:
StackMap stack:
iload 6
aload 0
invokevirtual java.util.ArrayList.size:()I
if_icmplt 11
end local 6 24: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 watchList Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;
0 25 1 identity Ljdk/internal/vm/compiler/word/LocationIdentity;
0 25 2 b Lorg/graalvm/compiler/nodes/cfg/Block;
0 25 3 result Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
0 25 4 nodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 25 5 unprocessed Lorg/graalvm/compiler/graph/NodeBitMap;
4 6 6 r Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
10 24 6 index I
12 23 7 r Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
13 23 8 locationIdentity Ljdk/internal/vm/compiler/word/LocationIdentity;
21 23 9 lastIndex I
Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
MethodParameters:
Name Flags
watchList
identity
b
result
nodeMap
unprocessed
private static void sortIntoList(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, java.util.ArrayList<org.graalvm.compiler.graph.Node>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 1
aload 4
aload 0
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifne 1
new java.lang.AssertionError
dup
aload 0
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 1
if_acmpeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
instanceof org.graalvm.compiler.nodes.PhiNode
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
aload 4
aload 0
invokevirtual org.graalvm.compiler.graph.NodeBitMap.clear:(Lorg/graalvm/compiler/graph/Node;)V
5: aload 0
invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 7
goto 9
StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.graph.Node top java.util.Iterator
StackMap stack:
6: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 6
start local 6 7: aload 3
aload 6
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
aload 1
if_acmpne 9
aload 4
aload 6
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 9
aload 6
aload 5
if_acmpeq 9
8: aload 6
aload 1
aload 2
aload 3
aload 4
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.sortIntoList:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
end local 6 9: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 0
instanceof org.graalvm.compiler.nodes.ProxyNode
ifne 12
11: aload 2
aload 0
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
12: StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block java.util.ArrayList org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.graph.Node
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 n Lorg/graalvm/compiler/graph/Node;
0 13 1 b Lorg/graalvm/compiler/nodes/cfg/Block;
0 13 2 result Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
0 13 3 nodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 13 4 unprocessed Lorg/graalvm/compiler/graph/NodeBitMap;
0 13 5 excludeNode Lorg/graalvm/compiler/graph/Node;
7 9 6 input Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/Node;)V
MethodParameters:
Name Flags
n
b
result
nodeMap
unprocessed
excludeNode
protected void calcLatestBlock(org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy, org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, jdk.internal.vm.compiler.word.LocationIdentity, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.ArrayList<org.graalvm.compiler.nodes.memory.FloatingReadNode>>, org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeBitMap, );
descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=13, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aconst_null
astore 10
start local 10 1: aload 3
invokevirtual org.graalvm.compiler.graph.Node.hasUsages:()Z
ifne 5
2: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 3
aload 3
instanceof org.graalvm.compiler.nodes.GuardNode
ifne 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 1
astore 10
4: goto 24
5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 6
aload 3
invokevirtual org.graalvm.compiler.graph.Node.hasUsages:()Z
ifne 6
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.graph.Node.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 12
goto 11
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
StackMap stack:
7: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 11
start local 11 8: iload 9
ifeq 10
aload 8
aload 11
invokevirtual org.graalvm.compiler.graph.NodeBitMap.contains:(Lorg/graalvm/compiler/graph/Node;)Z
ifne 10
9: goto 11
10: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
aload 3
aload 11
aload 10
aload 4
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.calcBlockForUsage:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;)Lorg/graalvm/compiler/nodes/cfg/Block;
astore 10
end local 11 11: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
12: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 13
aload 10
ifnonnull 13
new java.lang.AssertionError
dup
aload 3
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
13: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.NodeMap jdk.internal.vm.compiler.word.LocationIdentity org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeBitMap int org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.scheduleOutOfLoops:()Z
ifeq 22
14: aload 10
astore 11
start local 11 15: goto 21
16: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 11
astore 12
start local 12 17: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 11
18: aload 12
invokevirtual org.graalvm.compiler.nodes.cfg.Block.isLoopHeader:()Z
ifeq 21
19: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getRelativeFrequency:()D
aload 10
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getRelativeFrequency:()D
dcmpg
iflt 20
aload 3
invokevirtual org.graalvm.compiler.graph.Node.graph:()Lorg/graalvm/compiler/graph/Graph;
checkcast org.graalvm.compiler.nodes.StructuredGraph
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.hasValueProxies:()Z
ifeq 21
20: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 11
astore 10
end local 12 21: StackMap locals:
StackMap stack:
aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
if_icmple 22
aload 11
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
if_acmpne 16
end local 11 22: StackMap locals:
StackMap stack:
aload 10
aload 1
if_acmpeq 24
aload 10
aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
if_acmpeq 24
aload 5
ifnull 24
23: aload 1
aload 10
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.checkKillsBetween:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Ljdk/internal/vm/compiler/word/LocationIdentity;)Lorg/graalvm/compiler/nodes/cfg/Block;
astore 10
24: StackMap locals:
StackMap stack:
aload 10
aload 1
if_acmpeq 27
aload 2
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.considerImplicitNullChecks:()Z
ifeq 27
aload 3
aload 1
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.isImplicitNullOpportunity:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
ifeq 27
25: aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getRelativeFrequency:()D
aload 10
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getRelativeFrequency:()D
ldc 2.0
dmul
dcmpg
ifge 27
26: aload 1
astore 10
27: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 10
aload 4
aload 6
aload 5
aload 7
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.selectLatestBlock:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap;)V
28: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 29 1 earliestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 29 2 strategy Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
0 29 3 currentNode Lorg/graalvm/compiler/graph/Node;
0 29 4 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 29 5 constrainingLocation Ljdk/internal/vm/compiler/word/LocationIdentity;
0 29 6 watchListMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;
0 29 7 latestBlockToNodesMap Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 29 8 visited Lorg/graalvm/compiler/graph/NodeBitMap;
0 29 9 immutableGraph Z
1 29 10 latestBlock Lorg/graalvm/compiler/nodes/cfg/Block;
8 11 11 usage Lorg/graalvm/compiler/graph/Node;
15 22 11 currentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
17 21 12 previousCurrentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Ljdk/internal/vm/compiler/word/LocationIdentity;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/ArrayList<Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;>;>;Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeBitMap;Z)V
MethodParameters:
Name Flags
earliestBlock
strategy
currentNode
currentNodeMap
constrainingLocation
watchListMap
latestBlockToNodesMap
visited
immutableGraph
protected static boolean isImplicitNullOpportunity(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;)Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 9
1: aload 0
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 2
start local 2 2: aload 1
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
astore 3
start local 3 3: aload 3
instanceof org.graalvm.compiler.nodes.IfNode
ifeq 9
4: aload 3
checkcast org.graalvm.compiler.nodes.IfNode
astore 4
start local 4 5: aload 4
invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
instanceof org.graalvm.compiler.nodes.calc.IsNullNode
ifeq 9
aload 4
invokevirtual org.graalvm.compiler.nodes.IfNode.getTrueSuccessorProbability:()D
dconst_0
dcmpl
ifne 9
6: aload 4
invokevirtual org.graalvm.compiler.nodes.IfNode.condition:()Lorg/graalvm/compiler/nodes/LogicNode;
checkcast org.graalvm.compiler.nodes.calc.IsNullNode
astore 5
start local 5 7: aload 2
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
invokevirtual org.graalvm.compiler.nodes.memory.address.AddressNode.getBase:()Lorg/graalvm/compiler/nodes/ValueNode;
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getUnproxifiedUncompressed:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
aload 5
invokevirtual org.graalvm.compiler.nodes.calc.IsNullNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getUnproxifiedUncompressed:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
if_acmpne 9
8: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 currentNode Lorg/graalvm/compiler/graph/Node;
0 10 1 block Lorg/graalvm/compiler/nodes/cfg/Block;
2 9 2 floatingReadNode Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
3 9 3 pred Lorg/graalvm/compiler/graph/Node;
5 9 4 ifNode Lorg/graalvm/compiler/nodes/IfNode;
7 9 5 isNullNode Lorg/graalvm/compiler/nodes/calc/IsNullNode;
MethodParameters:
Name Flags
currentNode
block
private static org.graalvm.compiler.graph.Node getUnproxifiedUncompressed(org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: StackMap locals: org.graalvm.compiler.graph.Node
StackMap stack:
aload 1
instanceof org.graalvm.compiler.nodes.spi.ValueProxy
ifeq 5
2: aload 1
checkcast org.graalvm.compiler.nodes.spi.ValueProxy
astore 2
start local 2 3: aload 2
invokeinterface org.graalvm.compiler.nodes.spi.ValueProxy.getOriginalNode:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 1
end local 2 4: goto 1
StackMap locals:
StackMap stack:
5: aload 1
instanceof org.graalvm.compiler.nodes.calc.ConvertNode
ifeq 10
6: aload 1
checkcast org.graalvm.compiler.nodes.calc.ConvertNode
astore 2
start local 2 7: aload 2
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.mayNullCheckSkipConversion:()Z
ifeq 10
8: aload 2
invokeinterface org.graalvm.compiler.nodes.calc.ConvertNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 1
end local 2 9: goto 1
10: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 node Lorg/graalvm/compiler/graph/Node;
1 11 1 result Lorg/graalvm/compiler/graph/Node;
3 4 2 valueProxy Lorg/graalvm/compiler/nodes/spi/ValueProxy;
7 9 2 convertNode Lorg/graalvm/compiler/nodes/calc/ConvertNode;
MethodParameters:
Name Flags
node
private static org.graalvm.compiler.nodes.cfg.Block calcBlockForUsage(org.graalvm.compiler.graph.Node, org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.cfg.Block, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap;)Lorg/graalvm/compiler/nodes/cfg/Block;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 1
aload 0
instanceof org.graalvm.compiler.nodes.PhiNode
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 2
astore 4
start local 4 2: aload 1
instanceof org.graalvm.compiler.nodes.PhiNode
ifeq 14
3: aload 1
checkcast org.graalvm.compiler.nodes.PhiNode
astore 5
start local 5 4: aload 5
invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
astore 6
start local 6 5: aload 3
aload 6
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 7
start local 7 6: iconst_0
istore 8
start local 8 7: goto 12
8: StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.nodes.PhiNode org.graalvm.compiler.nodes.AbstractMergeNode org.graalvm.compiler.nodes.cfg.Block int
StackMap stack:
aload 5
iload 8
invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
aload 0
if_acmpne 11
9: aload 7
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block[]
iload 8
aaload
astore 9
start local 9 10: aload 4
aload 9
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 4
end local 9 11: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
12: iload 8
aload 5
invokevirtual org.graalvm.compiler.nodes.PhiNode.valueCount:()I
if_icmplt 8
end local 8 end local 7 end local 6 end local 5 13: goto 27
StackMap locals: org.graalvm.compiler.graph.Node org.graalvm.compiler.graph.Node org.graalvm.compiler.nodes.cfg.Block org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
14: aload 1
instanceof org.graalvm.compiler.nodes.AbstractBeginNode
ifeq 22
15: aload 1
checkcast org.graalvm.compiler.nodes.AbstractBeginNode
astore 5
start local 5 16: aload 5
instanceof org.graalvm.compiler.nodes.StartNode
ifeq 19
17: aload 4
aload 3
aload 5
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 4
18: goto 27
19: StackMap locals: org.graalvm.compiler.nodes.AbstractBeginNode
StackMap stack:
aload 3
aload 5
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 6
start local 6 20: aload 4
aload 6
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 4
end local 6 end local 5 21: goto 27
22: StackMap locals:
StackMap stack:
aload 3
aload 1
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 5
start local 5 23: aload 1
instanceof org.graalvm.compiler.nodes.ProxyNode
ifeq 26
24: aload 1
checkcast org.graalvm.compiler.nodes.ProxyNode
astore 6
start local 6 25: aload 3
aload 6
invokevirtual org.graalvm.compiler.nodes.ProxyNode.proxyPoint:()Lorg/graalvm/compiler/nodes/LoopExitNode;
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 5
end local 6 26: StackMap locals: org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
aload 4
aload 5
invokestatic org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.commonDominatorTyped:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 4
end local 5 27: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 node Lorg/graalvm/compiler/graph/Node;
0 28 1 usage Lorg/graalvm/compiler/graph/Node;
0 28 2 startBlock Lorg/graalvm/compiler/nodes/cfg/Block;
0 28 3 currentNodeMap Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
2 28 4 currentBlock Lorg/graalvm/compiler/nodes/cfg/Block;
4 13 5 phi Lorg/graalvm/compiler/nodes/PhiNode;
5 13 6 merge Lorg/graalvm/compiler/nodes/AbstractMergeNode;
6 13 7 mergeBlock Lorg/graalvm/compiler/nodes/cfg/Block;
7 13 8 i I
10 11 9 otherBlock Lorg/graalvm/compiler/nodes/cfg/Block;
16 21 5 abstractBeginNode Lorg/graalvm/compiler/nodes/AbstractBeginNode;
20 21 6 otherBlock Lorg/graalvm/compiler/nodes/cfg/Block;
23 27 5 otherBlock Lorg/graalvm/compiler/nodes/cfg/Block;
25 26 6 proxyNode Lorg/graalvm/compiler/nodes/ProxyNode;
Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;)Lorg/graalvm/compiler/nodes/cfg/Block;
MethodParameters:
Name Flags
node
usage
startBlock
currentNodeMap
private void scheduleEarliestIterative(org.graalvm.compiler.core.common.cfg.BlockMap<java.util.List<org.graalvm.compiler.graph.Node>>, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.nodes.cfg.Block>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.nodes.StructuredGraph, boolean, );
descriptor: (Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;ZZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=22, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.createNodeMap:()Lorg/graalvm/compiler/graph/NodeMap;
astore 7
start local 7 1: new org.graalvm.compiler.graph.NodeStack
dup
invokespecial org.graalvm.compiler.graph.NodeStack.<init>:()V
astore 8
start local 8 2: aconst_null
astore 9
start local 9 3: iconst_1
istore 10
start local 10 4: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 16
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
5: aload 14
iload 12
aaload
astore 11
start local 11 6: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.getBlockNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 16
goto 14
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
7: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 15
start local 15 8: new org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
dup
iload 10
iinc 10 1
invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.<init>:(I)V
astore 17
start local 17 9: aload 7
aload 15
aload 17
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
10: aload 3
aload 15
invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
istore 18
start local 18 11: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 12
iload 18
ifne 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode java.util.Iterator org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
aload 9
ifnonnull 14
13: aload 17
astore 9
end local 18 end local 17 end local 15 14: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 11 15: iinc 12 1
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
16: iload 12
iload 13
if_icmplt 5
17: aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.allowsFloatingGuards:()Z
ifeq 32
aload 4
getstatic org.graalvm.compiler.nodes.GuardNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.isNotEmpty:()Z
ifeq 32
18: getstatic org.graalvm.compiler.core.common.GraalOptions.GuardPriorities:Lorg/graalvm/compiler/options/OptionKey;
aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.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
ifeq 30
iload 6
ifeq 30
19: new java.util.EnumMap
dup
ldc Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;
invokespecial java.util.EnumMap.<init>:(Ljava/lang/Class;)V
astore 11
start local 11 20: aload 4
getstatic org.graalvm.compiler.nodes.GuardNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 13
goto 23
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int java.util.EnumMap top java.util.Iterator
StackMap stack:
21: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.GuardNode
astore 12
start local 12 22: aload 11
aload 12
invokevirtual org.graalvm.compiler.nodes.GuardNode.computePriority:()Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/compiler/phases/schedule/SchedulePhase$Instance.lambda$0(Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;)Ljava/util/List; (6)
(Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;)Ljava/util/List;
invokevirtual java.util.EnumMap.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.List
aload 12
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 12 23: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
24: aload 11
invokevirtual java.util.EnumMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 13
goto 27
StackMap locals:
StackMap stack:
25: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.List
astore 12
start local 12 26: aload 3
aload 7
aload 8
aload 9
aload 12
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processNodes:(Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Ljava/lang/Iterable;)V
end local 12 27: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
28: aload 4
aload 7
aload 8
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$GuardOrder.resortGuards:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;)V
end local 11 29: goto 33
30: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
aload 3
aload 7
aload 8
aload 9
aload 4
getstatic org.graalvm.compiler.nodes.GuardNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processNodes:(Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Ljava/lang/Iterable;)V
31: goto 33
32: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 33
aload 4
getstatic org.graalvm.compiler.nodes.GuardNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.isEmpty:()Z
ifne 33
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
33: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 40
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
34: aload 14
iload 12
aaload
astore 11
start local 11 35: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.getBlockNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 16
goto 38
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
36: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 15
start local 15 37: aload 3
aload 7
aload 8
aload 9
aload 15
invokevirtual org.graalvm.compiler.nodes.FixedNode.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processNodes:(Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Ljava/lang/Iterable;)V
end local 15 38: StackMap locals:
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
end local 11 39: iinc 12 1
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
40: iload 12
iload 13
if_icmplt 34
41: aload 3
invokevirtual org.graalvm.compiler.graph.NodeBitMap.getCounter:()I
aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
if_icmpge 62
42: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
iconst_0
istore 11
start local 11 43: iconst_0
istore 12
start local 12 44: aload 4
getstatic org.graalvm.compiler.nodes.LoopBeginNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 14
goto 60
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int top java.util.Iterator
StackMap stack:
45: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.LoopBeginNode
astore 13
start local 13 46: aload 13
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.phis:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 16
goto 59
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator top java.util.Iterator
StackMap stack:
47: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.PhiNode
astore 15
start local 15 48: aload 3
aload 15
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 58
49: iconst_0
istore 17
start local 17 50: goto 56
51: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator org.graalvm.compiler.nodes.PhiNode java.util.Iterator int
StackMap stack:
aload 15
iload 17
aload 13
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.forwardEndCount:()I
iadd
invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
astore 18
start local 18 52: aload 18
ifnull 55
aload 7
aload 18
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
ifnonnull 55
53: iconst_1
istore 11
54: aload 18
aload 9
aload 7
aload 3
aload 8
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
end local 18 55: StackMap locals:
StackMap stack:
iinc 17 1
StackMap locals:
StackMap stack:
56: iload 17
aload 13
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.getLoopEndCount:()I
if_icmplt 51
end local 17 57: goto 59
58: StackMap locals:
StackMap stack:
iconst_1
istore 12
end local 15 59: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int org.graalvm.compiler.nodes.LoopBeginNode java.util.Iterator top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 47
end local 13 60: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int int int top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 45
61: iload 12
ifeq 62
iload 11
ifne 42
end local 12 end local 11 62: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
iload 5
ifne 69
aload 3
invokevirtual org.graalvm.compiler.graph.NodeBitMap.getCounter:()I
aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodeCount:()I
if_icmpge 69
63: aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 12
goto 68
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top java.util.Iterator
StackMap stack:
64: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 11
start local 11 65: aload 3
aload 11
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifne 68
66: aload 11
invokevirtual org.graalvm.compiler.graph.Node.clearInputs:()V
67: aload 11
invokevirtual org.graalvm.compiler.graph.Node.markDeleted:()V
end local 11 68: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 64
69: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 81
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
70: aload 14
iload 12
aaload
astore 11
start local 11 71: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getEndNode:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 15
start local 15 72: aload 15
instanceof org.graalvm.compiler.nodes.ControlSplitNode
ifeq 80
73: aload 15
checkcast org.graalvm.compiler.nodes.ControlSplitNode
astore 16
start local 16 74: aload 7
aload 15
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 17
start local 17 75: aload 16
invokevirtual org.graalvm.compiler.nodes.ControlSplitNode.getPrimarySuccessor:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 18
start local 18 76: aload 18
ifnull 79
77: aload 17
aload 7
aload 18
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.prependChildrenTo:(Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;)V
78: goto 80
79: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] org.graalvm.compiler.nodes.FixedNode org.graalvm.compiler.nodes.ControlSplitNode org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.nodes.AbstractBeginNode
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 80
aload 17
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.tail:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
ifnull 80
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 18 end local 17 end local 16 end local 15 end local 11 80: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
81: iload 12
iload 13
if_icmplt 70
82: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.reversePostOrder:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 106
StackMap locals:
StackMap stack:
83: aload 14
iload 12
aaload
astore 11
start local 11 84: iconst_0
istore 15
start local 15 85: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.getBlockNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 17
goto 89
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] int top java.util.Iterator
StackMap stack:
86: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 16
start local 16 87: aload 7
aload 16
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 18
start local 18 88: iload 15
aload 18
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getNodeCount:()I
iconst_1
iadd
iadd
istore 15
end local 18 end local 16 89: StackMap locals:
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 86
90: new java.util.ArrayList
dup
iload 15
invokespecial java.util.ArrayList.<init>:(I)V
astore 16
start local 16 91: aload 1
aload 11
aload 16
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.put:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/lang/Object;)V
92: aload 11
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.getBlockNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 18
goto 104
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] int java.util.ArrayList top java.util.Iterator
StackMap stack:
93: aload 18
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 17
start local 17 94: aload 7
aload 17
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 19
start local 19 95: aload 2
aload 17
aload 11
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
96: aload 16
aload 17
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
97: aload 19
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getFirstNode:()Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
astore 20
start local 20 98: goto 103
99: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] int java.util.ArrayList org.graalvm.compiler.nodes.FixedNode java.util.Iterator org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry
StackMap stack:
aload 20
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry.getNode:()Lorg/graalvm/compiler/graph/Node;
astore 21
start local 21 100: aload 2
aload 21
aload 11
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
101: aload 16
aload 21
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
102: aload 20
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry.getNext:()Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
astore 20
end local 21 103: StackMap locals:
StackMap stack:
aload 20
ifnonnull 99
end local 20 end local 19 end local 17 104: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] int java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 18
invokeinterface java.util.Iterator.hasNext:()Z
ifne 93
end local 16 end local 15 end local 11 105: iinc 12 1
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
106: iload 12
iload 13
if_icmplt 83
107: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 108
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
getfield org.graalvm.compiler.nodes.cfg.ControlFlowGraph.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
invokestatic org.graalvm.compiler.debug.Assertions.detailedAssertionsEnabled:(Lorg/graalvm/compiler/options/OptionValues;)Z
ifeq 108
aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
aload 1
aload 2
invokestatic org.graalvm.compiler.phases.schedule.ScheduleVerification.check:(Lorg/graalvm/compiler/nodes/cfg/Block;Lorg/graalvm/compiler/core/common/cfg/BlockMap;Lorg/graalvm/compiler/graph/NodeMap;)Z
ifne 108
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
108: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance org.graalvm.compiler.core.common.cfg.BlockMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock int
StackMap stack:
return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 109 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 109 1 blockToNodes Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;
0 109 2 nodeToBlock Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;
0 109 3 visited Lorg/graalvm/compiler/graph/NodeBitMap;
0 109 4 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 109 5 immutableGraph Z
0 109 6 withGuardOrder Z
1 109 7 entries Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
2 109 8 stack Lorg/graalvm/compiler/graph/NodeStack;
3 109 9 startBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
4 109 10 nextId I
6 15 11 b Lorg/graalvm/compiler/nodes/cfg/Block;
8 14 15 current Lorg/graalvm/compiler/nodes/FixedNode;
9 14 17 microBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
11 14 18 isNew Z
20 29 11 guardsByPriority Ljava/util/EnumMap<Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;Ljava/util/List<Lorg/graalvm/compiler/nodes/GuardNode;>;>;
22 23 12 guard Lorg/graalvm/compiler/nodes/GuardNode;
26 27 12 guards Ljava/util/List<Lorg/graalvm/compiler/nodes/GuardNode;>;
35 39 11 b Lorg/graalvm/compiler/nodes/cfg/Block;
37 38 15 current Lorg/graalvm/compiler/nodes/FixedNode;
43 62 11 changed Z
44 62 12 unmarkedPhi Z
46 60 13 loopBegin Lorg/graalvm/compiler/nodes/LoopBeginNode;
48 59 15 phi Lorg/graalvm/compiler/nodes/PhiNode;
50 57 17 i I
52 55 18 node Lorg/graalvm/compiler/graph/Node;
65 68 11 n Lorg/graalvm/compiler/graph/Node;
71 80 11 b Lorg/graalvm/compiler/nodes/cfg/Block;
72 80 15 fixedNode Lorg/graalvm/compiler/nodes/FixedNode;
74 80 16 controlSplitNode Lorg/graalvm/compiler/nodes/ControlSplitNode;
75 80 17 endBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
76 80 18 primarySuccessor Lorg/graalvm/compiler/nodes/AbstractBeginNode;
84 105 11 b Lorg/graalvm/compiler/nodes/cfg/Block;
85 105 15 totalCount I
87 89 16 current Lorg/graalvm/compiler/nodes/FixedNode;
88 89 18 microBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
91 105 16 nodes Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
94 104 17 current Lorg/graalvm/compiler/nodes/FixedNode;
95 104 19 microBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
98 104 20 next Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$NodeEntry;
100 103 21 nextNode Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/core/common/cfg/BlockMap<Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;>;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/nodes/cfg/Block;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/nodes/StructuredGraph;ZZ)V
MethodParameters:
Name Flags
blockToNodes
nodeToBlock
visited
graph
immutableGraph
withGuardOrder
private static void processNodes(org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock, java.lang.Iterable<? extends org.graalvm.compiler.graph.Node>);
descriptor: (Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Ljava/lang/Iterable;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 6
goto 4
StackMap locals: org.graalvm.compiler.graph.NodeBitMap org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock java.lang.Iterable top java.util.Iterator
StackMap stack:
1: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 5
start local 5 2: aload 1
aload 5
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
ifnonnull 4
3: aload 5
aload 3
aload 1
aload 0
aload 2
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStack:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
end local 5 4: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 visited Lorg/graalvm/compiler/graph/NodeBitMap;
0 6 1 entries Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
0 6 2 stack Lorg/graalvm/compiler/graph/NodeStack;
0 6 3 startBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
0 6 4 nodes Ljava/lang/Iterable<+Lorg/graalvm/compiler/graph/Node;>;
2 4 5 node Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Ljava/lang/Iterable<+Lorg/graalvm/compiler/graph/Node;>;)V
MethodParameters:
Name Flags
visited
entries
stack
startBlock
nodes
private static void processStackPhi(org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.nodes.PhiNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap);
descriptor: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
pop
1: aload 3
aload 1
invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 13
2: aload 2
aload 1
invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 4
start local 4 3: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 4
aload 4
ifnonnull 4
new java.lang.AssertionError
dup
aload 1
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
StackMap stack:
aload 2
aload 1
aload 4
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
5: aload 1
invokevirtual org.graalvm.compiler.nodes.PhiNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
astore 5
start local 5 6: iconst_0
istore 6
start local 6 7: goto 12
8: StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode int
StackMap stack:
aload 1
iload 6
invokevirtual org.graalvm.compiler.nodes.PhiNode.valueAt:(I)Lorg/graalvm/compiler/nodes/ValueNode;
astore 7
start local 7 9: aload 7
ifnull 11
aload 2
aload 7
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
ifnonnull 11
10: aload 0
aload 7
invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
end local 7 11: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
aload 5
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndCount:()I
if_icmplt 8
end local 6 end local 5 end local 4 13: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 stack Lorg/graalvm/compiler/graph/NodeStack;
0 14 1 phiNode Lorg/graalvm/compiler/nodes/PhiNode;
0 14 2 nodeToBlock Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
0 14 3 visited Lorg/graalvm/compiler/graph/NodeBitMap;
3 13 4 mergeBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
6 13 5 merge Lorg/graalvm/compiler/nodes/AbstractMergeNode;
7 13 6 i I
9 11 7 input Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
MethodParameters:
Name Flags
stack
phiNode
nodeToBlock
visited
private static void processStackProxy(org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.nodes.ProxyNode, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap);
descriptor: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
pop
1: aload 3
aload 1
invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 6
2: aload 2
aload 1
aload 2
aload 1
invokevirtual org.graalvm.compiler.nodes.ProxyNode.proxyPoint:()Lorg/graalvm/compiler/nodes/LoopExitNode;
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
3: aload 1
invokevirtual org.graalvm.compiler.nodes.ProxyNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
astore 4
start local 4 4: aload 4
ifnull 6
aload 2
aload 4
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
ifnonnull 6
5: aload 0
aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
end local 4 6: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 stack Lorg/graalvm/compiler/graph/NodeStack;
0 7 1 proxyNode Lorg/graalvm/compiler/nodes/ProxyNode;
0 7 2 nodeToBlock Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
0 7 3 visited Lorg/graalvm/compiler/graph/NodeBitMap;
4 6 4 input Lorg/graalvm/compiler/graph/Node;
Signature: (Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;)V
MethodParameters:
Name Flags
stack
proxyNode
nodeToBlock
visited
private static void processStack(org.graalvm.compiler.graph.Node, org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock, org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeBitMap, org.graalvm.compiler.graph.NodeStack);
descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 1
aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.isEmpty:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.$assertionsDisabled:Z
ifne 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.graph.NodeBitMap.isMarked:(Lorg/graalvm/compiler/graph/Node;)Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 4
aload 0
invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
3: aload 0
astore 5
start local 5 4: StackMap locals: org.graalvm.compiler.graph.Node
StackMap stack:
aload 5
instanceof org.graalvm.compiler.nodes.PhiNode
ifeq 7
5: aload 4
aload 5
checkcast org.graalvm.compiler.nodes.PhiNode
aload 2
aload 3
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStackPhi:(Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/PhiNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
6: goto 20
StackMap locals:
StackMap stack:
7: aload 5
instanceof org.graalvm.compiler.nodes.ProxyNode
ifeq 10
8: aload 4
aload 5
checkcast org.graalvm.compiler.nodes.ProxyNode
aload 2
aload 3
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processStackProxy:(Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/nodes/ProxyNode;Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeBitMap;)V
9: goto 20
10: StackMap locals:
StackMap stack:
aload 2
aload 5
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 6
start local 6 11: aload 6
ifnonnull 19
12: aload 2
aload 4
aload 1
aload 5
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.processInputs:(Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
astore 7
start local 7 13: aload 7
ifnull 20
14: aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
pop
15: aload 3
aload 5
invokevirtual org.graalvm.compiler.graph.NodeBitMap.checkAndMarkInc:(Lorg/graalvm/compiler/graph/Node;)Z
pop
16: aload 2
aload 5
aload 7
invokevirtual org.graalvm.compiler.graph.NodeMap.set:(Lorg/graalvm/compiler/graph/Node;Ljava/lang/Object;)V
17: aload 7
aload 5
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.add:(Lorg/graalvm/compiler/graph/Node;)V
end local 7 18: goto 20
19: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
StackMap stack:
aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.pop:()Lorg/graalvm/compiler/graph/Node;
pop
end local 6 20: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.isEmpty:()Z
ifeq 22
21: goto 24
22: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.graalvm.compiler.graph.NodeStack.peek:()Lorg/graalvm/compiler/graph/Node;
astore 5
23: goto 4
24: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 first Lorg/graalvm/compiler/graph/Node;
0 25 1 startBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
0 25 2 nodeToMicroBlock Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
0 25 3 visited Lorg/graalvm/compiler/graph/NodeBitMap;
0 25 4 stack Lorg/graalvm/compiler/graph/NodeStack;
4 25 5 current Lorg/graalvm/compiler/graph/Node;
11 20 6 currentBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
13 18 7 earliestBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
Signature: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeBitMap;Lorg/graalvm/compiler/graph/NodeStack;)V
MethodParameters:
Name Flags
first
startBlock
nodeToMicroBlock
visited
stack
private static org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock processInputs(org.graalvm.compiler.graph.NodeMap<org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock>, org.graalvm.compiler.graph.NodeStack, org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock, org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/NodeMap;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual org.graalvm.compiler.graph.Node.getNodeClass:()Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.graph.NodeClass.isLeafNode:()Z
ifeq 2
1: aload 2
areturn
2: StackMap locals:
StackMap stack:
aload 2
astore 4
start local 4 3: aload 3
invokevirtual org.graalvm.compiler.graph.Node.inputs:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 5
start local 5 5: aload 0
aload 5
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
astore 7
start local 7 6: aload 7
ifnonnull 10
7: aconst_null
astore 4
8: aload 1
aload 5
invokevirtual org.graalvm.compiler.graph.NodeStack.push:(Lorg/graalvm/compiler/graph/Node;)V
9: goto 12
StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node java.util.Iterator org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock
StackMap stack:
10: aload 4
ifnull 12
aload 7
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getId:()I
aload 4
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock.getId:()I
if_icmple 12
11: aload 7
astore 4
end local 7 end local 5 12: StackMap locals: org.graalvm.compiler.graph.NodeMap org.graalvm.compiler.graph.NodeStack org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock org.graalvm.compiler.graph.Node org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
13: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 nodeToBlock Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;
0 14 1 stack Lorg/graalvm/compiler/graph/NodeStack;
0 14 2 startBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
0 14 3 current Lorg/graalvm/compiler/graph/Node;
3 14 4 earliestBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
5 12 5 input Lorg/graalvm/compiler/graph/Node;
6 12 7 inputBlock Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
Signature: (Lorg/graalvm/compiler/graph/NodeMap<Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;>;Lorg/graalvm/compiler/graph/NodeStack;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance$MicroBlock;
MethodParameters:
Name Flags
nodeToBlock
stack
startBlock
current
private static boolean isFixedEnd(org.graalvm.compiler.nodes.FixedNode);
descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.graalvm.compiler.nodes.ControlSplitNode
ifne 1
aload 0
instanceof org.graalvm.compiler.nodes.ControlSinkNode
ifne 1
aload 0
instanceof org.graalvm.compiler.nodes.AbstractEndNode
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 endNode Lorg/graalvm/compiler/nodes/FixedNode;
MethodParameters:
Name Flags
endNode
public java.lang.String printScheduleHelper(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=2
start local 0 start local 1 0: new java.util.Formatter
dup
invokespecial java.util.Formatter.<init>:()V
astore 2
start local 2 1: aload 2
ldc "=== %s / %s ===%n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getBeginNode:()Lorg/graalvm/compiler/nodes/AbstractBeginNode;
invokevirtual org.graalvm.compiler.nodes.AbstractBeginNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
aastore
dup
iconst_1
aload 1
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
2: aload 0
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getBlocks:()[Lorg/graalvm/compiler/nodes/cfg/Block;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 19
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 2
ldc "==== b: %s (loopDepth: %s). "
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
dup
iconst_1
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getLoopDepth:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
5: aload 2
ldc "dom: %s. "
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getDominator:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
6: aload 2
ldc "preds: %s. "
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
7: aload 2
ldc "succs: %s ====%n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
8: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
aload 3
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
ifnull 14
9: aload 0
aload 3
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.nodesFor:(Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 12
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
10: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 7
start local 7 11: aload 7
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.printNode:(Lorg/graalvm/compiler/graph/Node;)V
end local 7 12: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
13: goto 18
14: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.Block.getNodes:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 8
goto 17
StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter org.graalvm.compiler.nodes.cfg.Block int int org.graalvm.compiler.nodes.cfg.Block[] top java.util.Iterator
StackMap stack:
15: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 7
start local 7 16: aload 7
invokestatic org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.printNode:(Lorg/graalvm/compiler/graph/Node;)V
end local 7 17: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
end local 3 18: StackMap locals: org.graalvm.compiler.phases.schedule.SchedulePhase$Instance java.lang.String java.util.Formatter top int int org.graalvm.compiler.nodes.cfg.Block[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
19: iload 4
iload 5
if_icmplt 3
20: aload 2
ldc "%n"
iconst_0
anewarray java.lang.Object
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
21: aload 2
invokevirtual java.util.Formatter.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 22 1 desc Ljava/lang/String;
1 22 2 buf Ljava/util/Formatter;
4 18 3 b Lorg/graalvm/compiler/nodes/cfg/Block;
11 12 7 n Lorg/graalvm/compiler/graph/Node;
16 17 7 n Lorg/graalvm/compiler/graph/Node;
MethodParameters:
Name Flags
desc
private static void printNode(org.graalvm.compiler.graph.Node);
descriptor: (Lorg/graalvm/compiler/graph/Node;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=6, args_size=1
start local 0 0: new java.util.Formatter
dup
invokespecial java.util.Formatter.<init>:()V
astore 1
start local 1 1: aload 1
ldc "%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
2: aload 0
instanceof org.graalvm.compiler.nodes.memory.SingleMemoryKill
ifeq 5
3: aload 1
ldc " // kills %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
checkcast org.graalvm.compiler.nodes.memory.SingleMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.SingleMemoryKill.getKilledLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
4: goto 21
StackMap locals: java.util.Formatter
StackMap stack:
5: aload 0
instanceof org.graalvm.compiler.nodes.memory.MultiMemoryKill
ifeq 13
6: aload 1
ldc " // kills "
iconst_0
anewarray java.lang.Object
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
7: aload 0
checkcast org.graalvm.compiler.nodes.memory.MultiMemoryKill
invokeinterface org.graalvm.compiler.nodes.memory.MultiMemoryKill.getKilledLocationIdentities:()[Ljdk/internal/vm/compiler/word/LocationIdentity;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 11
StackMap locals: org.graalvm.compiler.graph.Node java.util.Formatter top int int jdk.internal.vm.compiler.word.LocationIdentity[]
StackMap stack:
8: aload 5
iload 3
aaload
astore 2
start local 2 9: aload 1
ldc "%s, "
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
end local 2 10: iinc 3 1
StackMap locals:
StackMap stack:
11: iload 3
iload 4
if_icmplt 8
12: goto 21
StackMap locals: org.graalvm.compiler.graph.Node java.util.Formatter
StackMap stack:
13: aload 0
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 19
14: aload 0
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 2
start local 2 15: aload 1
ldc " // from %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLocationIdentity:()Ljdk/internal/vm/compiler/word/LocationIdentity;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
16: aload 1
ldc ", lastAccess: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getLastLocationAccess:()Lorg/graalvm/compiler/nodes/memory/MemoryKill;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
17: aload 1
ldc ", address: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual org.graalvm.compiler.nodes.memory.FloatingReadNode.getAddress:()Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
end local 2 18: goto 21
StackMap locals:
StackMap stack:
19: aload 0
instanceof org.graalvm.compiler.nodes.GuardNode
ifeq 21
20: aload 1
ldc ", anchor: %s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
checkcast org.graalvm.compiler.nodes.GuardNode
invokevirtual org.graalvm.compiler.nodes.GuardNode.getAnchor:()Lorg/graalvm/compiler/nodes/extended/AnchoringNode;
aastore
invokevirtual java.util.Formatter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/util/Formatter;
pop
21: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.graph.Node.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
ldc "%s"
aload 1
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
22: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 n Lorg/graalvm/compiler/graph/Node;
1 23 1 buf Ljava/util/Formatter;
9 10 2 locid Ljdk/internal/vm/compiler/word/LocationIdentity;
15 18 2 frn Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
MethodParameters:
Name Flags
n
public org.graalvm.compiler.nodes.cfg.ControlFlowGraph getCFG();
descriptor: ()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.cfg:Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
public java.util.List<org.graalvm.compiler.graph.Node> nodesFor(org.graalvm.compiler.nodes.cfg.Block);
descriptor: (Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.phases.schedule.SchedulePhase$Instance.blockToNodesMap:Lorg/graalvm/compiler/core/common/cfg/BlockMap;
aload 1
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/schedule/SchedulePhase$Instance;
0 1 1 block Lorg/graalvm/compiler/nodes/cfg/Block;
Signature: (Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List<Lorg/graalvm/compiler/graph/Node;>;
MethodParameters:
Name Flags
block
private static java.util.List lambda$0(org.graalvm.compiler.nodes.StaticDeoptimizingNode$GuardPriority);
descriptor: (Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;)Ljava/util/List;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 p Lorg/graalvm/compiler/nodes/StaticDeoptimizingNode$GuardPriority;
}
SourceFile: "SchedulePhase.java"
NestHost: org.graalvm.compiler.phases.schedule.SchedulePhase
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final GuardPriority = org.graalvm.compiler.nodes.StaticDeoptimizingNode$GuardPriority of org.graalvm.compiler.nodes.StaticDeoptimizingNode
public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph
public Instance = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance of org.graalvm.compiler.phases.schedule.SchedulePhase
private GuardOrder = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$GuardOrder of org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
private MicroBlock = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$MicroBlock of org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
private NodeEntry = org.graalvm.compiler.phases.schedule.SchedulePhase$Instance$NodeEntry of org.graalvm.compiler.phases.schedule.SchedulePhase$Instance
public final SchedulingStrategy = org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy of org.graalvm.compiler.phases.schedule.SchedulePhase