public class org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder extends org.graalvm.compiler.core.sparc.SPARCNodeLIRBuilder implements org.graalvm.compiler.hotspot.HotSpotNodeLIRBuilder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder
super_class: org.graalvm.compiler.core.sparc.SPARCNodeLIRBuilder
{
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/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
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.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.lir.gen.LIRGeneratorTool, org.graalvm.compiler.core.sparc.SPARCNodeMatchRules);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/core/sparc/SPARCNodeMatchRules;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.graalvm.compiler.core.sparc.SPARCNodeLIRBuilder.<init>:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/core/sparc/SPARCNodeMatchRules;)V
1: getstatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
ifne 2
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
instanceof org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator
ifne 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.lir.gen.LIRGeneratorTool org.graalvm.compiler.core.sparc.SPARCNodeMatchRules
StackMap stack:
getstatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
ifne 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getDebugInfoBuilder:()Lorg/graalvm/compiler/core/gen/DebugInfoBuilder;
instanceof org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder
ifne 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
checkcast org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getDebugInfoBuilder:()Lorg/graalvm/compiler/core/gen/DebugInfoBuilder;
checkcast org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.setDebugInfoBuilder:(Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 5 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 5 2 lirGen Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;
0 5 3 nodeMatchRules Lorg/graalvm/compiler/core/sparc/SPARCNodeMatchRules;
MethodParameters:
Name Flags
graph
lirGen
nodeMatchRules
protected org.graalvm.compiler.core.gen.DebugInfoBuilder createDebugInfoBuilder(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.spi.NodeValueMap);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/spi/NodeValueMap;)Lorg/graalvm/compiler/core/gen/DebugInfoBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.hotspot.HotSpotLockStack
dup
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
getstatic jdk.vm.ci.sparc.SPARCKind.XWORD:Ljdk/vm/ci/sparc/SPARCKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokespecial org.graalvm.compiler.hotspot.HotSpotLockStack.<init>:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;Lorg/graalvm/compiler/core/common/LIRKind;)V
astore 3
start local 3 1: new org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder
dup
aload 2
aload 3
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
checkcast org.graalvm.compiler.hotspot.HotSpotLIRGenerator
invokespecial org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder.<init>:(Lorg/graalvm/compiler/nodes/spi/NodeValueMap;Lorg/graalvm/compiler/hotspot/HotSpotLockStack;Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerator;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 2 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
0 2 2 nodeValueMap Lorg/graalvm/compiler/nodes/spi/NodeValueMap;
1 2 3 lockStack Lorg/graalvm/compiler/hotspot/HotSpotLockStack;
MethodParameters:
Name Flags
graph
nodeValueMap
private org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator getGen();
descriptor: ()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
checkcast org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
public void visitSafepointNode(org.graalvm.compiler.nodes.SafepointNode);
descriptor: (Lorg/graalvm/compiler/nodes/SafepointNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.state:(Lorg/graalvm/compiler/nodes/DeoptimizingNode;)Lorg/graalvm/compiler/lir/LIRFrameState;
astore 2
start local 2 1: aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getThreadRegister:()Ljdk/vm/ci/code/Register;
astore 3
start local 3 2: aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCHotSpotSafepointOp
dup
aload 2
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 3
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotSpotSafepointOp.<init>:(Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
3: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 4 1 i Lorg/graalvm/compiler/nodes/SafepointNode;
1 4 2 info Lorg/graalvm/compiler/lir/LIRFrameState;
2 4 3 thread Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
i
protected void emitDirectCall(org.graalvm.compiler.nodes.DirectCallTargetNode, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/nodes/DirectCallTargetNode;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=10, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
checkcast org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode
invokevirtual org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode.invokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
astore 6
start local 6 1: aload 6
invokevirtual org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.isIndirect:()Z
ifeq 4
2: aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCHotspotDirectVirtualCallOp
dup
aload 1
invokevirtual org.graalvm.compiler.nodes.DirectCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 2
aload 3
aload 4
aload 5
aload 6
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotspotDirectVirtualCallOp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
3: goto 8
4: StackMap locals: org.graalvm.compiler.nodes.CallTargetNode$InvokeKind
StackMap stack:
getstatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
ifne 5
aload 6
invokevirtual org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.isDirect:()Z
ifne 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.nodes.DirectCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod
astore 7
start local 7 6: getstatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
ifne 7
aload 7
invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.isConcrete:()Z
ifne 7
new java.lang.AssertionError
dup
ldc "Cannot make direct call to abstract method."
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals: jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod
StackMap stack:
aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCHotspotDirectStaticCallOp
dup
aload 1
invokevirtual org.graalvm.compiler.nodes.DirectCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 2
aload 3
aload 4
aload 5
aload 6
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotspotDirectStaticCallOp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
end local 7 8: StackMap locals:
StackMap stack:
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 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 9 1 callTarget Lorg/graalvm/compiler/nodes/DirectCallTargetNode;
0 9 2 result Ljdk/vm/ci/meta/Value;
0 9 3 parameters [Ljdk/vm/ci/meta/Value;
0 9 4 temps [Ljdk/vm/ci/meta/Value;
0 9 5 callState Lorg/graalvm/compiler/lir/LIRFrameState;
1 9 6 invokeKind Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
6 8 7 resolvedMethod Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
MethodParameters:
Name Flags
callTarget
result
parameters
temps
callState
protected void emitIndirectCall(org.graalvm.compiler.nodes.IndirectCallTargetNode, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/nodes/IndirectCallTargetNode;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=11, 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
aload 1
checkcast org.graalvm.compiler.hotspot.nodes.HotSpotIndirectCallTargetNode
invokevirtual org.graalvm.compiler.hotspot.nodes.HotSpotIndirectCallTargetNode.metaspaceMethod:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 6
start local 6 1: getstatic jdk.vm.ci.sparc.SPARC.g5:Ljdk/vm/ci/code/Register;
aload 6
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 7
start local 7 2: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 7
aload 6
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
3: aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.IndirectCallTargetNode.computedAddress:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
astore 8
start local 8 4: getstatic jdk.vm.ci.sparc.SPARC.o7:Ljdk/vm/ci/code/Register;
aload 8
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 9
start local 9 5: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 9
aload 8
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
6: aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCIndirectCallOp
dup
aload 1
invokevirtual org.graalvm.compiler.nodes.IndirectCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 2
aload 3
aload 4
aload 7
aload 9
aload 5
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCIndirectCallOp.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
7: return
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 8 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 8 1 callTarget Lorg/graalvm/compiler/nodes/IndirectCallTargetNode;
0 8 2 result Ljdk/vm/ci/meta/Value;
0 8 3 parameters [Ljdk/vm/ci/meta/Value;
0 8 4 temps [Ljdk/vm/ci/meta/Value;
0 8 5 callState Lorg/graalvm/compiler/lir/LIRFrameState;
1 8 6 metaspaceMethodSrc Ljdk/vm/ci/meta/Value;
2 8 7 metaspaceMethod Ljdk/vm/ci/meta/AllocatableValue;
4 8 8 targetAddressSrc Ljdk/vm/ci/meta/Value;
5 8 9 targetAddress Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
callTarget
result
parameters
temps
callState
public void emitPatchReturnAddress(org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCHotSpotPatchReturnAddressOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotSpotPatchReturnAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 2 1 address Lorg/graalvm/compiler/nodes/ValueNode;
MethodParameters:
Name Flags
address
public void emitJumpToExceptionHandler(org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.graalvm.compiler.hotspot.sparc.SPARCHotSpotJumpToExceptionHandlerOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotSpotJumpToExceptionHandlerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 2 1 address Lorg/graalvm/compiler/nodes/ValueNode;
MethodParameters:
Name Flags
address
public void emitJumpToExceptionHandlerInCaller(org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 1: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getForeignCalls:()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.EXCEPTION_HANDLER_IN_CALLER:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
astore 5
start local 5 2: aload 5
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallLinkage.getOutgoingCallingConvention:()Ljdk/vm/ci/code/CallingConvention;
astore 6
start local 6 3: getstatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.$assertionsDisabled:Z
ifne 4
aload 6
invokevirtual jdk.vm.ci.code.CallingConvention.getArgumentCount:()I
iconst_2
if_icmpeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: org.graalvm.compiler.lir.Variable org.graalvm.compiler.core.common.spi.ForeignCallLinkage jdk.vm.ci.code.CallingConvention
StackMap stack:
aload 6
iconst_0
invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
checkcast jdk.vm.ci.code.RegisterValue
astore 7
start local 7 5: aload 6
iconst_1
invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
checkcast jdk.vm.ci.code.RegisterValue
astore 8
start local 8 6: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 7
aload 0
aload 2
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
7: aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
aload 8
aload 0
aload 3
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.operand:(Lorg/graalvm/compiler/graph/Node;)Ljdk/vm/ci/meta/Value;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
8: aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getThreadRegister:()Ljdk/vm/ci/code/Register;
astore 9
start local 9 9: new org.graalvm.compiler.hotspot.sparc.SPARCHotSpotJumpToExceptionHandlerInCallerOp
dup
aload 4
aload 7
aload 8
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadIsMethodHandleReturnOffset:I
10: aload 9
11: invokespecial org.graalvm.compiler.hotspot.sparc.SPARCHotSpotJumpToExceptionHandlerInCallerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;ILjdk/vm/ci/code/Register;)V
astore 10
start local 10 12: aload 0
aload 10
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
13: 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 14 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 14 1 handlerInCallerPc Lorg/graalvm/compiler/nodes/ValueNode;
0 14 2 exception Lorg/graalvm/compiler/nodes/ValueNode;
0 14 3 exceptionPc Lorg/graalvm/compiler/nodes/ValueNode;
1 14 4 handler Lorg/graalvm/compiler/lir/Variable;
2 14 5 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
3 14 6 linkageCc Ljdk/vm/ci/code/CallingConvention;
5 14 7 exceptionFixed Ljdk/vm/ci/code/RegisterValue;
6 14 8 exceptionPcFixed Ljdk/vm/ci/code/RegisterValue;
9 14 9 thread Ljdk/vm/ci/code/Register;
12 14 10 op Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotJumpToExceptionHandlerInCallerOp;
MethodParameters:
Name Flags
handlerInCallerPc
exception
exceptionPc
protected void emitPrologue(org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.graalvm.compiler.core.sparc.SPARCNodeLIRBuilder.emitPrologue:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
1: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.getGen:()Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;
invokestatic org.graalvm.compiler.hotspot.sparc.SPARCHotSpotSafepointOp.emitPrologue:(Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotLIRGenerator;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 3 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
MethodParameters:
Name Flags
graph
public void visitFullInfopointNode(org.graalvm.compiler.nodes.FullInfopointNode);
descriptor: (Lorg/graalvm/compiler/nodes/FullInfopointNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.compiler.nodes.FullInfopointNode.getState:()Lorg/graalvm/compiler/nodes/FrameState;
ifnull 3
aload 1
invokevirtual org.graalvm.compiler.nodes.FullInfopointNode.getState:()Lorg/graalvm/compiler/nodes/FrameState;
getfield org.graalvm.compiler.nodes.FrameState.bci:I
bipush -3
if_icmpne 3
1: aload 1
invokevirtual org.graalvm.compiler.nodes.FullInfopointNode.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
ldc "Ignoring InfopointNode for AFTER_BCI"
invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial org.graalvm.compiler.core.sparc.SPARCNodeLIRBuilder.visitFullInfopointNode:(Lorg/graalvm/compiler/nodes/FullInfopointNode;)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 5 1 i Lorg/graalvm/compiler/nodes/FullInfopointNode;
MethodParameters:
Name Flags
i
public void visitBreakpointNode(org.graalvm.compiler.nodes.BreakpointNode);
descriptor: (Lorg/graalvm/compiler/nodes/BreakpointNode;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.graalvm.compiler.nodes.BreakpointNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
anewarray jdk.vm.ci.meta.JavaType
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: jdk.vm.ci.meta.JavaType[] int
StackMap stack:
aload 2
iload 3
aload 1
invokevirtual org.graalvm.compiler.nodes.BreakpointNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
iload 3
invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ValueNode
getstatic org.graalvm.compiler.nodes.NodeView.DEFAULT:Lorg/graalvm/compiler/nodes/NodeView;
invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:(Lorg/graalvm/compiler/nodes/NodeView;)Lorg/graalvm/compiler/core/common/type/Stamp;
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
invokevirtual org.graalvm.compiler.core.common.type.Stamp.javaType:(Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/ResolvedJavaType;
aastore
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 6: aload 0
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerator.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.JavaCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
aconst_null
aload 2
aload 0
getfield org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.gen:Lorg/graalvm/compiler/lir/gen/LIRGenerator;
invokeinterface jdk.vm.ci.code.RegisterConfig.getCallingConvention:(Ljdk/vm/ci/code/CallingConvention$Type;Ljdk/vm/ci/meta/JavaType;[Ljdk/vm/ci/meta/JavaType;Ljdk/vm/ci/code/ValueKindFactory;)Ljdk/vm/ci/code/CallingConvention;
aload 1
invokevirtual org.graalvm.compiler.nodes.BreakpointNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.visitInvokeArguments:(Ljdk/vm/ci/code/CallingConvention;Ljava/util/Collection;)[Ljdk/vm/ci/meta/Value;
astore 3
start local 3 7: aload 0
new org.graalvm.compiler.lir.sparc.SPARCBreakpointOp
dup
aload 3
invokespecial org.graalvm.compiler.lir.sparc.SPARCBreakpointOp.<init>:([Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.hotspot.sparc.SPARCHotSpotNodeLIRBuilder.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)V
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/hotspot/sparc/SPARCHotSpotNodeLIRBuilder;
0 9 1 node Lorg/graalvm/compiler/nodes/BreakpointNode;
1 9 2 sig [Ljdk/vm/ci/meta/JavaType;
2 6 3 i I
7 9 3 parameters [Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
node
}
SourceFile: "SPARCHotSpotNodeLIRBuilder.java"
InnerClasses:
public abstract Type = jdk.vm.ci.code.CallingConvention$Type of jdk.vm.ci.code.CallingConvention
public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode