public class org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates extends org.graalvm.compiler.replacements.SnippetTemplate$AbstractTemplates
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates
super_class: org.graalvm.compiler.replacements.SnippetTemplate$AbstractTemplates
{
private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo profileMethodEntry;
descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo profileBackedge;
descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo profileConditionalBackedge;
descriptor: Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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/replacements/profiling/ProfileSnippets;
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.replacements.profiling.ProfileSnippets$Templates.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.graalvm.compiler.hotspot.meta.HotSpotProviders, jdk.vm.ci.code.TargetDescription);
descriptor: (Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 1
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
aload 2
invokespecial org.graalvm.compiler.replacements.SnippetTemplate$AbstractTemplates.<init>:(Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
1: aload 0
aload 0
ldc Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets;
ldc "profileMethodEntry"
iconst_0
anewarray org.graalvm.compiler.core.common.LocationIdentity
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Lorg/graalvm/compiler/core/common/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
putfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileMethodEntry:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
2: aload 0
aload 0
ldc Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets;
ldc "profileBackedge"
iconst_0
anewarray org.graalvm.compiler.core.common.LocationIdentity
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Lorg/graalvm/compiler/core/common/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
putfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileBackedge:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
3: aload 0
aload 0
ldc Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets;
ldc "profileConditionalBackedge"
iconst_0
anewarray org.graalvm.compiler.core.common.LocationIdentity
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.snippet:(Ljava/lang/Class;Ljava/lang/String;[Lorg/graalvm/compiler/core/common/LocationIdentity;)Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
putfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileConditionalBackedge:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets$Templates;
0 5 1 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 5 2 target Ljdk/vm/ci/code/TargetDescription;
MethodParameters:
Name Flags
providers
target
public void lower(org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode, org.graalvm.compiler.nodes.spi.LoweringTool);
descriptor: (Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 1: aload 3
new org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode
dup
aload 1
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode.getProfiledMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
invokespecial org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode
astore 4
start local 4 2: aload 1
instanceof org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode
ifeq 19
3: aload 1
checkcast org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode
astore 5
start local 5 4: aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.hasCondition:()Z
ifeq 5
aload 0
getfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileConditionalBackedge:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
goto 6
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode
StackMap stack:
5: aload 0
getfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileBackedge:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
StackMap locals:
StackMap stack: org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo
6: astore 6
start local 6 7: new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
dup
aload 6
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
aload 2
invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
astore 7
start local 7 8: aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.bci:()I
aload 3
invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(ILorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
astore 8
start local 8 9: aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.targetBci:()I
aload 3
invokestatic org.graalvm.compiler.nodes.ConstantNode.forInt:(ILorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
astore 9
start local 9 10: aload 7
ldc "counters"
aload 4
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
11: aload 7
ldc "freqLog"
aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.getNotificationFreqLog:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
12: aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.hasCondition:()Z
ifeq 14
13: aload 7
ldc "branchCondition"
aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode.branchCondition:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
14: StackMap locals: org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode org.graalvm.compiler.hotspot.nodes.profiling.ProfileBranchNode org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo org.graalvm.compiler.replacements.SnippetTemplate$Arguments org.graalvm.compiler.nodes.ConstantNode org.graalvm.compiler.nodes.ConstantNode
StackMap stack:
aload 7
ldc "bci"
aload 8
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
15: aload 7
ldc "targetBci"
aload 9
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
16: aload 0
aload 7
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.template:(Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;)Lorg/graalvm/compiler/replacements/SnippetTemplate;
astore 10
start local 10 17: aload 10
aload 0
getfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
aload 1
getstatic org.graalvm.compiler.replacements.SnippetTemplate.DEFAULT_REPLACER:Lorg/graalvm/compiler/replacements/SnippetTemplate$UsageReplacer;
aload 7
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate.instantiate:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/replacements/SnippetTemplate$UsageReplacer;Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;)Ljava/util/Map;
pop
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 18: goto 28
StackMap locals: org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.hotspot.nodes.aot.LoadMethodCountersNode
StackMap stack:
19: aload 1
instanceof org.graalvm.compiler.hotspot.nodes.profiling.ProfileInvokeNode
ifeq 27
20: aload 1
checkcast org.graalvm.compiler.hotspot.nodes.profiling.ProfileInvokeNode
astore 5
start local 5 21: new org.graalvm.compiler.replacements.SnippetTemplate$Arguments
dup
aload 0
getfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.profileMethodEntry:Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
aload 3
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
aload 2
invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
invokespecial org.graalvm.compiler.replacements.SnippetTemplate$Arguments.<init>:(Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
astore 6
start local 6 22: aload 6
ldc "counters"
aload 4
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
23: aload 6
ldc "freqLog"
aload 5
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileInvokeNode.getNotificationFreqLog:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate$Arguments.addConst:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
pop
24: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.template:(Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;)Lorg/graalvm/compiler/replacements/SnippetTemplate;
astore 7
start local 7 25: aload 7
aload 0
getfield org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.providers:Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
aload 1
getstatic org.graalvm.compiler.replacements.SnippetTemplate.DEFAULT_REPLACER:Lorg/graalvm/compiler/replacements/SnippetTemplate$UsageReplacer;
aload 6
invokevirtual org.graalvm.compiler.replacements.SnippetTemplate.instantiate:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/replacements/SnippetTemplate$UsageReplacer;Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;)Ljava/util/Map;
pop
end local 7 end local 6 end local 5 26: goto 28
27: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "Unsupported profile node type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.$assertionsDisabled:Z
ifne 29
aload 1
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode.hasNoUsages:()Z
ifne 29
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
29: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode.isDeleted:()Z
ifne 31
30: aload 1
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.killWithUnusedFloatingInputs:(Lorg/graalvm/compiler/graph/Node;)V
31: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets$Templates;
0 32 1 profileNode Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileNode;
0 32 2 tool Lorg/graalvm/compiler/nodes/spi/LoweringTool;
1 32 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 32 4 counters Lorg/graalvm/compiler/hotspot/nodes/aot/LoadMethodCountersNode;
4 18 5 profileBranchNode Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileBranchNode;
7 18 6 snippet Lorg/graalvm/compiler/replacements/SnippetTemplate$SnippetInfo;
8 18 7 args Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
9 18 8 bci Lorg/graalvm/compiler/nodes/ConstantNode;
10 18 9 targetBci Lorg/graalvm/compiler/nodes/ConstantNode;
17 18 10 template Lorg/graalvm/compiler/replacements/SnippetTemplate;
21 26 5 profileInvokeNode Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileInvokeNode;
22 26 6 args Lorg/graalvm/compiler/replacements/SnippetTemplate$Arguments;
25 26 7 template Lorg/graalvm/compiler/replacements/SnippetTemplate;
MethodParameters:
Name Flags
profileNode
tool
}
SourceFile: "ProfileSnippets.java"
NestHost: org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets
InnerClasses:
public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
public Templates = org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates of org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets
public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public abstract AbstractTemplates = org.graalvm.compiler.replacements.SnippetTemplate$AbstractTemplates of org.graalvm.compiler.replacements.SnippetTemplate
public Arguments = org.graalvm.compiler.replacements.SnippetTemplate$Arguments of org.graalvm.compiler.replacements.SnippetTemplate
public abstract SnippetInfo = org.graalvm.compiler.replacements.SnippetTemplate$SnippetInfo of org.graalvm.compiler.replacements.SnippetTemplate
public abstract UsageReplacer = org.graalvm.compiler.replacements.SnippetTemplate$UsageReplacer of org.graalvm.compiler.replacements.SnippetTemplate