public class org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase extends org.graalvm.compiler.phases.Phase
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase
super_class: org.graalvm.compiler.phases.Phase
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
0: .line 35
aload 0 /* this */
invokespecial org.graalvm.compiler.phases.Phase.<init>:()V
return
end local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/common/LoopSafepointInsertionPhase;
public boolean checkContract();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
0: .line 41
iconst_0
ireturn
end local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/phases/common/LoopSafepointInsertionPhase;
protected void run(org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=2
start local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
0: .line 46
getstatic org.graalvm.compiler.core.common.GraalOptions.GenLoopSafepoints:Lorg/graalvm/compiler/options/OptionValue;
invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 7
1: .line 47
aload 1 /* graph */
getstatic org.graalvm.compiler.nodes.LoopEndNode.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 3
goto 6
StackMap locals: org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase org.graalvm.compiler.nodes.StructuredGraph top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.LoopEndNode
astore 2 /* loopEndNode */
start local 2 // org.graalvm.compiler.nodes.LoopEndNode loopEndNode
3: .line 48
aload 2 /* loopEndNode */
invokevirtual org.graalvm.compiler.nodes.LoopEndNode.canSafepoint:()Z
ifeq 6
4: .line 49
aload 1 /* graph */
new org.graalvm.compiler.nodes.SafepointNode
dup
invokespecial org.graalvm.compiler.nodes.SafepointNode.<init>:()V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.SafepointNode
astore 4 /* safepointNode */
start local 4 // org.graalvm.compiler.nodes.SafepointNode safepointNode
5: .line 50
aload 1 /* graph */
aload 2 /* loopEndNode */
aload 4 /* safepointNode */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
end local 4 // org.graalvm.compiler.nodes.SafepointNode safepointNode
end local 2 // org.graalvm.compiler.nodes.LoopEndNode loopEndNode
6: .line 47
StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: .line 54
StackMap locals: org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase org.graalvm.compiler.nodes.StructuredGraph
StackMap stack:
return
end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
end local 0 // org.graalvm.compiler.phases.common.LoopSafepointInsertionPhase this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/phases/common/LoopSafepointInsertionPhase;
0 8 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
3 6 2 loopEndNode Lorg/graalvm/compiler/nodes/LoopEndNode;
5 6 4 safepointNode Lorg/graalvm/compiler/nodes/SafepointNode;
MethodParameters:
Name Flags
graph
}
SourceFile: "LoopSafepointInsertionPhase.java"