class org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 implements org.graalvm.compiler.virtual.phases.ea.EffectList$Effect
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1
super_class: java.lang.Object
{
final org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState this$0;
descriptor: Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final java.util.List val$otherAllocations;
descriptor: Ljava/util/List;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.compiler.nodes.FixedNode val$fixed;
descriptor: Lorg/graalvm/compiler/nodes/FixedNode;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.List val$objects;
descriptor: Ljava/util/List;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.List val$values;
descriptor: Ljava/util/List;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.List val$locks;
descriptor: Ljava/util/List;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.util.List val$ensureVirtual;
descriptor: Ljava/util/List;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState, java.util.List, org.graalvm.compiler.nodes.FixedNode, java.util.List, java.util.List, java.util.List, java.util.List);
descriptor: (Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;Ljava/util/List;Lorg/graalvm/compiler/nodes/FixedNode;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V
flags: (0x0000)
Code:
stack=2, locals=8, args_size=8
start local 0 0: aload 0
aload 1
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.this$0:Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState;
aload 0
aload 2
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$otherAllocations:Ljava/util/List;
aload 0
aload 3
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$fixed:Lorg/graalvm/compiler/nodes/FixedNode;
aload 0
aload 4
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$objects:Ljava/util/List;
aload 0
aload 5
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$values:Ljava/util/List;
aload 0
aload 6
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$locks:Ljava/util/List;
aload 0
aload 7
putfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$ensureVirtual:Ljava/util/List;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState$1;
MethodParameters:
Name Flags
this$0 final
val$otherAllocations final
val$fixed final
val$objects final
val$values final
val$locks final
val$ensureVirtual final
public void apply(org.graalvm.compiler.nodes.StructuredGraph, java.util.ArrayList<org.graalvm.compiler.graph.Node>);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/util/ArrayList;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$otherAllocations:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 3
start local 3 2: aload 1
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUniqueWithInputs:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 5
start local 5 3: aload 5
instanceof org.graalvm.compiler.nodes.FixedWithNextNode
ifeq 6
4: aload 1
aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$fixed:Lorg/graalvm/compiler/nodes/FixedNode;
aload 5
checkcast org.graalvm.compiler.nodes.FixedWithNextNode
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
5: goto 7
6: StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList org.graalvm.compiler.nodes.ValueNode java.util.Iterator org.graalvm.compiler.nodes.ValueNode
StackMap stack:
getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.$assertionsDisabled:Z
ifne 7
aload 5
instanceof org.graalvm.compiler.nodes.calc.FloatingNode
ifne 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 5 end local 3 7: StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
8: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$objects:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 37
9: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$fixed:Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
instanceof org.graalvm.compiler.nodes.virtual.CommitAllocationNode
ifeq 12
10: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$fixed:Lorg/graalvm/compiler/nodes/FixedNode;
invokevirtual org.graalvm.compiler.nodes.FixedNode.predecessor:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.virtual.CommitAllocationNode
astore 3
start local 3 11: goto 14
end local 3 12: StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList
StackMap stack:
aload 1
new org.graalvm.compiler.nodes.virtual.CommitAllocationNode
dup
invokespecial org.graalvm.compiler.nodes.virtual.CommitAllocationNode.<init>:()V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.virtual.CommitAllocationNode
astore 3
start local 3 13: aload 1
aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$fixed:Lorg/graalvm/compiler/nodes/FixedNode;
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
14: StackMap locals: org.graalvm.compiler.nodes.virtual.CommitAllocationNode
StackMap stack:
aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$objects:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 19
StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList org.graalvm.compiler.nodes.virtual.CommitAllocationNode top java.util.Iterator
StackMap stack:
15: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.virtual.AllocatedObjectNode
astore 4
start local 4 16: aload 1
aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addWithoutUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
pop
17: aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getVirtualObjects:()Ljava/util/List;
aload 4
invokevirtual org.graalvm.compiler.nodes.virtual.AllocatedObjectNode.getVirtualObject:()Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
18: aload 4
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.AllocatedObjectNode.setCommit:(Lorg/graalvm/compiler/nodes/virtual/CommitAllocationNode;)V
end local 4 19: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
20: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$values:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 23
StackMap locals:
StackMap stack:
21: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ValueNode
astore 4
start local 4 22: aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getValues:()Ljava/util/List;
aload 1
aload 4
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUniqueWithInputs:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ValueNode
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 4 23: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
24: aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$locks:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 27
StackMap locals:
StackMap stack:
25: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.List
astore 4
start local 4 26: aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.addLocks:(Ljava/util/List;)V
end local 4 27: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
28: aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getEnsureVirtual:()Ljava/util/List;
aload 0
getfield org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1.val$ensureVirtual:Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
29: getstatic org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.$assertionsDisabled:Z
ifne 30
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/virtual/AllocatedObjectNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getUsageCount:()I
if_icmpeq 30
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
30: StackMap locals: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1 org.graalvm.compiler.nodes.StructuredGraph java.util.ArrayList org.graalvm.compiler.nodes.virtual.CommitAllocationNode
StackMap stack:
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/virtual/AllocatedObjectNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
astore 4
start local 4 31: iconst_0
istore 5
start local 5 32: goto 36
33: StackMap locals: java.util.List int
StackMap stack:
aload 4
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getValues:()Ljava/util/List;
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 35
34: aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getValues:()Ljava/util/List;
iload 5
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getValues:()Ljava/util/List;
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.virtual.AllocatedObjectNode
invokevirtual org.graalvm.compiler.nodes.virtual.AllocatedObjectNode.getVirtualObject:()Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
35: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
36: iload 5
aload 3
invokevirtual org.graalvm.compiler.nodes.virtual.CommitAllocationNode.getValues:()Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 33
end local 5 end local 4 end local 3 37: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/graalvm/compiler/virtual/phases/ea/PartialEscapeBlockState$1;
0 38 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 38 2 obsoleteNodes Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;
2 7 3 alloc Lorg/graalvm/compiler/nodes/ValueNode;
3 7 5 otherAllocation Lorg/graalvm/compiler/nodes/ValueNode;
11 12 3 commit Lorg/graalvm/compiler/nodes/virtual/CommitAllocationNode;
13 37 3 commit Lorg/graalvm/compiler/nodes/virtual/CommitAllocationNode;
16 19 4 obj Lorg/graalvm/compiler/nodes/virtual/AllocatedObjectNode;
22 23 4 value Lorg/graalvm/compiler/nodes/ValueNode;
26 27 4 monitorIds Ljava/util/List<Lorg/graalvm/compiler/nodes/java/MonitorIdNode;>;
31 37 4 materializedValues Ljava/util/List<Lorg/graalvm/compiler/nodes/virtual/AllocatedObjectNode;>;
32 37 5 i I
Signature: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/util/ArrayList<Lorg/graalvm/compiler/graph/Node;>;)V
MethodParameters:
Name Flags
graph
obsoleteNodes
}
SourceFile: "PartialEscapeBlockState.java"
EnclosingMethod: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState.materializeBefore:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;Lorg/graalvm/compiler/virtual/phases/ea/GraphEffectList;)V
NestHost: org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState
InnerClasses:
public abstract Effect = org.graalvm.compiler.virtual.phases.ea.EffectList$Effect of org.graalvm.compiler.virtual.phases.ea.EffectList
org.graalvm.compiler.virtual.phases.ea.PartialEscapeBlockState$1