public final class org.graalvm.compiler.phases.graph.ReentrantNodeIterator
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.phases.graph.ReentrantNodeIterator
super_class: java.lang.Object
{
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/graph/ReentrantNodeIterator;
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.graph.ReentrantNodeIterator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator;
public static <StateT> org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo<StateT> processLoop(org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure<StateT>, org.graalvm.compiler.nodes.LoopBeginNode, StateT);
descriptor: (Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure;Lorg/graalvm/compiler/nodes/LoopBeginNode;Ljava/lang/Object;)Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$LoopInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aload 1
invokestatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.apply:(Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;Lorg/graalvm/compiler/nodes/LoopBeginNode;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 3
start local 3 1: new org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo
dup
aload 1
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopEnds:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
aload 1
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopExits:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
invokespecial org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo.<init>:(II)V
astore 4
start local 4 2: aload 1
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopEnds:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure org.graalvm.compiler.nodes.LoopBeginNode java.lang.Object jdk.internal.vm.compiler.collections.EconomicMap org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.LoopEndNode
astore 5
start local 5 4: aload 3
aload 5
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifeq 6
5: aload 4
getfield org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo.endStates:Ljdk/internal/vm/compiler/collections/EconomicMap;
aload 5
aload 3
aload 5
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 1
invokevirtual org.graalvm.compiler.nodes.LoopBeginNode.loopExits:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 6
goto 11
StackMap locals:
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.LoopExitNode
astore 5
start local 5 9: aload 3
aload 5
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifeq 11
10: aload 4
getfield org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo.exitStates:Ljdk/internal/vm/compiler/collections/EconomicMap;
aload 5
aload 3
aload 5
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 11: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
12: 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 13 0 closure Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;
0 13 1 loop Lorg/graalvm/compiler/nodes/LoopBeginNode;
0 13 2 initialState TStateT;
1 13 3 blockEndStates Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/FixedNode;TStateT;>;
2 13 4 info Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$LoopInfo<TStateT;>;
4 6 5 end Lorg/graalvm/compiler/nodes/LoopEndNode;
9 11 5 exit Lorg/graalvm/compiler/nodes/LoopExitNode;
Signature: <StateT:Ljava/lang/Object;>(Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;Lorg/graalvm/compiler/nodes/LoopBeginNode;TStateT;)Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$LoopInfo<TStateT;>;
MethodParameters:
Name Flags
closure
loop
initialState
public static <StateT> void apply(org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure<StateT>, org.graalvm.compiler.nodes.FixedNode, );
descriptor: (Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokestatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.apply:(Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;Lorg/graalvm/compiler/nodes/LoopBeginNode;)Ljdk/internal/vm/compiler/collections/EconomicMap;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 closure Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;
0 2 1 start Lorg/graalvm/compiler/nodes/FixedNode;
0 2 2 initialState TStateT;
Signature: <StateT:Ljava/lang/Object;>(Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;Lorg/graalvm/compiler/nodes/FixedNode;TStateT;)V
MethodParameters:
Name Flags
closure
start
initialState
private static <StateT> jdk.internal.vm.compiler.collections.EconomicMap<org.graalvm.compiler.nodes.FixedNode, StateT> apply(org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure<StateT>, org.graalvm.compiler.nodes.FixedNode, StateT, org.graalvm.compiler.nodes.LoopBeginNode);
descriptor: (Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;Lorg/graalvm/compiler/nodes/LoopBeginNode;)Ljdk/internal/vm/compiler/collections/EconomicMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
new java.util.ArrayDeque
dup
invokespecial java.util.ArrayDeque.<init>:()V
astore 4
start local 4 2: getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 5
start local 5 3: aload 2
astore 6
start local 6 4: aload 1
astore 7
start local 7 5: goto 15
6: StackMap locals: org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure org.graalvm.compiler.nodes.FixedNode java.lang.Object org.graalvm.compiler.nodes.LoopBeginNode java.util.Deque jdk.internal.vm.compiler.collections.EconomicMap java.lang.Object org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 3
ifnull 10
aload 7
instanceof org.graalvm.compiler.nodes.LoopExitNode
ifeq 10
aload 7
checkcast org.graalvm.compiler.nodes.LoopExitNode
invokevirtual org.graalvm.compiler.nodes.LoopExitNode.loopBegin:()Lorg/graalvm/compiler/nodes/LoopBeginNode;
aload 3
if_acmpne 10
7: aload 5
aload 7
aload 6
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aconst_null
astore 7
9: goto 15
10: StackMap locals:
StackMap stack:
aload 7
checkcast org.graalvm.compiler.nodes.FixedWithNextNode
invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
astore 8
start local 8 11: aload 0
aload 7
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.processNode:(Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;)Ljava/lang/Object;
astore 6
12: aload 0
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.continueIteration:(Ljava/lang/Object;)Z
ifeq 13
aload 8
goto 14
StackMap locals: org.graalvm.compiler.nodes.FixedNode
StackMap stack:
13: aconst_null
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.FixedNode
14: astore 7
end local 8 15: StackMap locals:
StackMap stack:
aload 7
instanceof org.graalvm.compiler.nodes.FixedWithNextNode
ifne 6
16: aload 7
ifnull 76
17: aload 0
aload 7
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.processNode:(Lorg/graalvm/compiler/nodes/FixedNode;Ljava/lang/Object;)Ljava/lang/Object;
astore 6
18: aload 0
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.continueIteration:(Ljava/lang/Object;)Z
ifeq 76
19: aload 7
invokevirtual org.graalvm.compiler.nodes.FixedNode.successors:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 8
start local 8 20: aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 61
21: aload 7
instanceof org.graalvm.compiler.nodes.LoopEndNode
ifeq 24
22: aload 5
aload 7
aload 6
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
23: goto 76
StackMap locals: java.util.Iterator
StackMap stack:
24: aload 7
instanceof org.graalvm.compiler.nodes.EndNode
ifeq 76
25: aload 7
checkcast org.graalvm.compiler.nodes.EndNode
invokevirtual org.graalvm.compiler.nodes.EndNode.merge:()Lorg/graalvm/compiler/nodes/AbstractMergeNode;
astore 9
start local 9 26: aload 9
instanceof org.graalvm.compiler.nodes.LoopBeginNode
ifeq 34
27: aload 0
aload 9
checkcast org.graalvm.compiler.nodes.LoopBeginNode
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.processLoop:(Lorg/graalvm/compiler/nodes/LoopBeginNode;Ljava/lang/Object;)Ljdk/internal/vm/compiler/collections/EconomicMap;
astore 10
start local 10 28: aload 10
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.getEntries:()Ljdk/internal/vm/compiler/collections/MapCursor;
astore 11
start local 11 29: goto 32
30: StackMap locals: org.graalvm.compiler.nodes.AbstractMergeNode jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.MapCursor
StackMap stack:
aload 5
aload 11
invokeinterface jdk.internal.vm.compiler.collections.MapCursor.getKey:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
aload 11
invokeinterface jdk.internal.vm.compiler.collections.MapCursor.getValue:()Ljava/lang/Object;
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
31: aload 4
aload 11
invokeinterface jdk.internal.vm.compiler.collections.MapCursor.getKey:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.AbstractBeginNode
invokeinterface java.util.Deque.add:(Ljava/lang/Object;)Z
pop
32: StackMap locals:
StackMap stack:
aload 11
invokeinterface jdk.internal.vm.compiler.collections.MapCursor.advance:()Z
ifne 30
end local 11 end local 10 33: goto 76
34: StackMap locals:
StackMap stack:
iconst_1
istore 10
start local 10 35: aload 9
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEnds:()Lorg/graalvm/compiler/graph/NodeInputList;
invokevirtual org.graalvm.compiler.graph.NodeInputList.iterator:()Ljava/util/Iterator;
astore 12
goto 40
StackMap locals: org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure org.graalvm.compiler.nodes.FixedNode java.lang.Object org.graalvm.compiler.nodes.LoopBeginNode java.util.Deque jdk.internal.vm.compiler.collections.EconomicMap java.lang.Object org.graalvm.compiler.nodes.FixedNode java.util.Iterator org.graalvm.compiler.nodes.AbstractMergeNode int top java.util.Iterator
StackMap stack:
36: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.AbstractEndNode
astore 11
start local 11 37: aload 11
aload 7
if_acmpeq 40
aload 5
aload 11
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifne 40
38: iconst_0
istore 10
39: goto 41
end local 11 40: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
41: StackMap locals: org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure org.graalvm.compiler.nodes.FixedNode java.lang.Object org.graalvm.compiler.nodes.LoopBeginNode java.util.Deque jdk.internal.vm.compiler.collections.EconomicMap java.lang.Object org.graalvm.compiler.nodes.FixedNode java.util.Iterator org.graalvm.compiler.nodes.AbstractMergeNode int
StackMap stack:
iload 10
ifeq 58
42: new java.util.ArrayList
dup
aload 9
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndCount:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 11
start local 11 43: iconst_0
istore 12
start local 12 44: goto 52
45: StackMap locals: java.util.ArrayList int
StackMap stack:
aload 9
iload 12
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndAt:(I)Lorg/graalvm/compiler/nodes/EndNode;
astore 13
start local 13 46: getstatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.$assertionsDisabled:Z
ifne 47
aload 13
aload 7
if_acmpeq 47
aload 5
aload 13
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifne 47
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
47: StackMap locals: org.graalvm.compiler.nodes.AbstractEndNode
StackMap stack:
aload 13
aload 7
if_acmpne 48
aload 6
goto 49
StackMap locals:
StackMap stack:
48: aload 5
aload 13
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.removeKey:(Ljava/lang/Object;)Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
49: astore 14
start local 14 50: aload 11
aload 14
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 14 end local 13 51: iinc 12 1
StackMap locals:
StackMap stack:
52: iload 12
aload 9
invokevirtual org.graalvm.compiler.nodes.AbstractMergeNode.forwardEndCount:()I
if_icmplt 45
end local 12 53: aload 0
aload 9
aload 11
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.merge:(Lorg/graalvm/compiler/nodes/AbstractMergeNode;Ljava/util/List;)Ljava/lang/Object;
astore 6
54: aload 0
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.continueIteration:(Ljava/lang/Object;)Z
ifeq 55
aload 9
goto 56
StackMap locals:
StackMap stack:
55: aconst_null
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.AbstractMergeNode
56: astore 7
57: goto 83
end local 11 58: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.$assertionsDisabled:Z
ifne 59
aload 5
aload 7
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifeq 59
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
59: StackMap locals:
StackMap stack:
aload 5
aload 7
aload 6
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 10 end local 9 60: goto 76
61: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 9
start local 9 62: aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 65
63: aload 9
astore 7
64: goto 83
65: StackMap locals: org.graalvm.compiler.nodes.FixedNode
StackMap stack:
aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.AbstractBeginNode
astore 10
start local 10 66: aload 0
aload 10
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.afterSplit:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;Ljava/lang/Object;)Ljava/lang/Object;
astore 11
start local 11 67: aload 0
aload 11
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.continueIteration:(Ljava/lang/Object;)Z
ifeq 70
68: aload 5
aload 10
aload 11
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
69: aload 4
aload 10
invokeinterface java.util.Deque.add:(Ljava/lang/Object;)Z
pop
end local 11 end local 10 70: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 65
71: aload 0
aload 9
checkcast org.graalvm.compiler.nodes.AbstractBeginNode
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.afterSplit:(Lorg/graalvm/compiler/nodes/AbstractBeginNode;Ljava/lang/Object;)Ljava/lang/Object;
astore 6
72: aload 0
aload 6
invokevirtual org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure.continueIteration:(Ljava/lang/Object;)Z
ifeq 73
aload 9
goto 74
StackMap locals:
StackMap stack:
73: aconst_null
StackMap locals:
StackMap stack: org.graalvm.compiler.nodes.FixedNode
74: astore 7
75: goto 83
end local 9 end local 8 76: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Deque.isEmpty:()Z
ifeq 78
77: aload 5
areturn
78: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FixedNode
astore 7
79: getstatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.$assertionsDisabled:Z
ifne 80
aload 5
aload 7
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifne 80
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
80: StackMap locals:
StackMap stack:
aload 5
aload 7
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.removeKey:(Ljava/lang/Object;)Ljava/lang/Object;
astore 6
81: getstatic org.graalvm.compiler.phases.graph.ReentrantNodeIterator.$assertionsDisabled:Z
ifne 83
aload 7
instanceof org.graalvm.compiler.nodes.AbstractMergeNode
ifne 82
aload 7
instanceof org.graalvm.compiler.nodes.AbstractBeginNode
ifne 83
StackMap locals:
StackMap stack:
82: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
83: StackMap locals:
StackMap stack:
goto 15
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 84 0 closure Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;
0 84 1 start Lorg/graalvm/compiler/nodes/FixedNode;
0 84 2 initialState TStateT;
0 84 3 boundary Lorg/graalvm/compiler/nodes/LoopBeginNode;
2 84 4 nodeQueue Ljava/util/Deque<Lorg/graalvm/compiler/nodes/AbstractBeginNode;>;
3 84 5 blockEndStates Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/FixedNode;TStateT;>;
4 84 6 state TStateT;
5 84 7 current Lorg/graalvm/compiler/nodes/FixedNode;
11 15 8 next Lorg/graalvm/compiler/nodes/FixedNode;
20 76 8 successors Ljava/util/Iterator<Lorg/graalvm/compiler/graph/Node;>;
26 60 9 merge Lorg/graalvm/compiler/nodes/AbstractMergeNode;
28 33 10 loopExitState Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/LoopExitNode;TStateT;>;
29 33 11 entry Ljdk/internal/vm/compiler/collections/MapCursor<Lorg/graalvm/compiler/nodes/LoopExitNode;TStateT;>;
35 60 10 endsVisited Z
37 40 11 forwardEnd Lorg/graalvm/compiler/nodes/AbstractEndNode;
43 58 11 states Ljava/util/ArrayList<TStateT;>;
44 53 12 i I
46 51 13 forwardEnd Lorg/graalvm/compiler/nodes/AbstractEndNode;
50 51 14 other TStateT;
62 76 9 firstSuccessor Lorg/graalvm/compiler/nodes/FixedNode;
66 70 10 successor Lorg/graalvm/compiler/nodes/AbstractBeginNode;
67 70 11 successorState TStateT;
Signature: <StateT:Ljava/lang/Object;>(Lorg/graalvm/compiler/phases/graph/ReentrantNodeIterator$NodeIteratorClosure<TStateT;>;Lorg/graalvm/compiler/nodes/FixedNode;TStateT;Lorg/graalvm/compiler/nodes/LoopBeginNode;)Ljdk/internal/vm/compiler/collections/EconomicMap<Lorg/graalvm/compiler/nodes/FixedNode;TStateT;>;
MethodParameters:
Name Flags
closure
start
initialState
boundary
}
SourceFile: "ReentrantNodeIterator.java"
NestMembers:
org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure
InnerClasses:
public LoopInfo = org.graalvm.compiler.phases.graph.ReentrantNodeIterator$LoopInfo of org.graalvm.compiler.phases.graph.ReentrantNodeIterator
public abstract NodeIteratorClosure = org.graalvm.compiler.phases.graph.ReentrantNodeIterator$NodeIteratorClosure of org.graalvm.compiler.phases.graph.ReentrantNodeIterator