public class com.oracle.svm.truffle.api.SubstratePartialEvaluator extends org.graalvm.compiler.truffle.compiler.PartialEvaluator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.svm.truffle.api.SubstratePartialEvaluator
super_class: org.graalvm.compiler.truffle.compiler.PartialEvaluator
{
private final java.util.concurrent.ConcurrentHashMap<jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.Object> invocationPluginsCache;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;>;
private final java.util.concurrent.ConcurrentHashMap<org.graalvm.compiler.replacements.PEGraphDecoder$SpecialCallTargetCacheKey, java.lang.Object> specialCallTargetCache;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentHashMap<Lorg/graalvm/compiler/replacements/PEGraphDecoder$SpecialCallTargetCacheKey;Ljava/lang/Object;>;
public void <init>(org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration, org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration);
descriptor: (Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
new com.oracle.svm.truffle.api.SubstrateKnownTruffleTypes
dup
aload 1
invokevirtual org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration.lastTier:()Lorg/graalvm/compiler/truffle/compiler/TruffleTierConfiguration;
invokevirtual org.graalvm.compiler.truffle.compiler.TruffleTierConfiguration.providers:()Lorg/graalvm/compiler/phases/util/Providers;
invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
invokespecial com.oracle.svm.truffle.api.SubstrateKnownTruffleTypes.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
invokespecial org.graalvm.compiler.truffle.compiler.PartialEvaluator.<init>:(Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;Lorg/graalvm/compiler/truffle/compiler/substitutions/KnownTruffleTypes;)V
1: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.invocationPluginsCache:Ljava/util/concurrent/ConcurrentHashMap;
2: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.specialCallTargetCache:Ljava/util/concurrent/ConcurrentHashMap;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 4 1 config Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;
0 4 2 graphBuilderConfigForRoot Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
config
graphBuilderConfigForRoot
protected org.graalvm.compiler.replacements.PEGraphDecoder createGraphDecoder(org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request, org.graalvm.compiler.nodes.graphbuilderconf.LoopExplosionPlugin, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.nodes.graphbuilderconf.InlineInvokePlugin[], org.graalvm.compiler.nodes.graphbuilderconf.ParameterPlugin, org.graalvm.compiler.nodes.graphbuilderconf.NodePlugin[], org.graalvm.compiler.graph.SourceLanguagePositionProvider, org.graalvm.collections.EconomicMap<jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.EncodedGraph>);
descriptor: (Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;[Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/ParameterPlugin;[Lorg/graalvm/compiler/nodes/graphbuilderconf/NodePlugin;Lorg/graalvm/compiler/graph/SourceLanguagePositionProvider;Lorg/graalvm/collections/EconomicMap;)Lorg/graalvm/compiler/replacements/PEGraphDecoder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=14, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: new com.oracle.svm.truffle.api.SubstratePEGraphDecoder
dup
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.architecture:Ljdk/vm/ci/code/Architecture;
aload 1
getfield org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.providers:Lorg/graalvm/compiler/phases/util/Providers;
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.compilationLocalConstantProvider:Lorg/graalvm/compiler/truffle/compiler/TruffleConstantFieldProvider;
invokevirtual org.graalvm.compiler.phases.util.Providers.copyWith:(Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;)Lorg/graalvm/compiler/phases/util/Providers;
aload 2
aload 3
aload 4
1: aload 5
aload 6
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.callInlined:Ljdk/vm/ci/meta/ResolvedJavaMethod;
aload 7
2: aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.specialCallTargetCache:Ljava/util/concurrent/ConcurrentHashMap;
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.invocationPluginsCache:Ljava/util/concurrent/ConcurrentHashMap;
3: invokespecial com.oracle.svm.truffle.api.SubstratePEGraphDecoder.<init>:(Ljdk/vm/ci/code/Architecture;Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/spi/CoreProviders;Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;[Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/ParameterPlugin;[Lorg/graalvm/compiler/nodes/graphbuilderconf/NodePlugin;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/graph/SourceLanguagePositionProvider;Ljava/util/concurrent/ConcurrentHashMap;Ljava/util/concurrent/ConcurrentHashMap;)V
areturn
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 4 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 4 1 request Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;
0 4 2 loopExplosionPlugin Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin;
0 4 3 invocationPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 4 4 inlineInvokePlugins [Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;
0 4 5 parameterPlugin Lorg/graalvm/compiler/nodes/graphbuilderconf/ParameterPlugin;
0 4 6 nodePlugins [Lorg/graalvm/compiler/nodes/graphbuilderconf/NodePlugin;
0 4 7 sourceLanguagePositionProvider Lorg/graalvm/compiler/graph/SourceLanguagePositionProvider;
0 4 8 graphCache Lorg/graalvm/collections/EconomicMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/EncodedGraph;>;
Signature: (Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;Lorg/graalvm/compiler/nodes/graphbuilderconf/LoopExplosionPlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;[Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/compiler/nodes/graphbuilderconf/ParameterPlugin;[Lorg/graalvm/compiler/nodes/graphbuilderconf/NodePlugin;Lorg/graalvm/compiler/graph/SourceLanguagePositionProvider;Lorg/graalvm/collections/EconomicMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/EncodedGraph;>;)Lorg/graalvm/compiler/replacements/PEGraphDecoder;
MethodParameters:
Name Flags
request
loopExplosionPlugin
invocationPlugins
inlineInvokePlugins
parameterPlugin
nodePlugins
sourceLanguagePositionProvider
graphCache
protected org.graalvm.compiler.nodes.StructuredGraph$Builder customizeStructuredGraphBuilder(org.graalvm.compiler.nodes.StructuredGraph$Builder);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
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.truffle.compiler.PartialEvaluator.customizeStructuredGraphBuilder:(Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
iconst_0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.recordInlinedMethods:(Z)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 1 1 builder Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
MethodParameters:
Name Flags
builder
public void doGraphPE(org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request, org.graalvm.compiler.nodes.graphbuilderconf.InlineInvokePlugin, org.graalvm.collections.EconomicMap<jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.EncodedGraph>);
descriptor: (Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/collections/EconomicMap;)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.truffle.compiler.PartialEvaluator.doGraphPE:(Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/collections/EconomicMap;)V
1: new com.oracle.svm.core.graal.phases.DeadStoreRemovalPhase
dup
invokespecial com.oracle.svm.core.graal.phases.DeadStoreRemovalPhase.<init>:()V
aload 1
getfield org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual com.oracle.svm.core.graal.phases.DeadStoreRemovalPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
2: new com.oracle.svm.truffle.api.TruffleBoundaryPhase
dup
invokespecial com.oracle.svm.truffle.api.TruffleBoundaryPhase.<init>:()V
aload 1
getfield org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
invokevirtual com.oracle.svm.truffle.api.TruffleBoundaryPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)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 Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 4 1 request Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;
0 4 2 inlineInvokePlugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;
0 4 3 graphCache Lorg/graalvm/collections/EconomicMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/EncodedGraph;>;
Signature: (Lorg/graalvm/compiler/truffle/compiler/PartialEvaluator$Request;Lorg/graalvm/compiler/nodes/graphbuilderconf/InlineInvokePlugin;Lorg/graalvm/collections/EconomicMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/EncodedGraph;>;)V
MethodParameters:
Name Flags
request
inlineInvokePlugin
graphCache
protected void registerGraphBuilderInvocationPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
invokespecial org.graalvm.compiler.truffle.compiler.PartialEvaluator.registerGraphBuilderInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
1: aload 1
iload 2
aload 0
invokevirtual com.oracle.svm.truffle.api.SubstratePartialEvaluator.getKnownTruffleTypes:()Lorg/graalvm/compiler/truffle/compiler/substitutions/KnownTruffleTypes;
checkcast com.oracle.svm.truffle.api.SubstrateKnownTruffleTypes
invokestatic com.oracle.svm.truffle.api.SubstrateTruffleGraphBuilderPlugins.registerInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;ZLcom/oracle/svm/truffle/api/SubstrateKnownTruffleTypes;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 3 1 invocationPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 3 2 canDelayIntrinsification Z
MethodParameters:
Name Flags
invocationPlugins
canDelayIntrinsification
protected org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins createDecodingInvocationPlugins(org.graalvm.compiler.truffle.compiler.PartialEvaluatorConfiguration, org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins, org.graalvm.compiler.phases.util.Providers);
descriptor: (Lorg/graalvm/compiler/truffle/compiler/PartialEvaluatorConfiguration;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;Lorg/graalvm/compiler/phases/util/Providers;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
dup
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.<init>:()V
astore 4
start local 4 1: aload 0
aload 4
iconst_0
invokevirtual com.oracle.svm.truffle.api.SubstratePartialEvaluator.registerGraphBuilderInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
2: aload 4
aload 3
invokestatic org.graalvm.compiler.truffle.compiler.substitutions.TruffleDecodingPlugins.registerInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/phases/util/Providers;)V
3: aload 1
aload 4
iconst_0
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.providers:Lorg/graalvm/compiler/phases/util/Providers;
aload 0
getfield com.oracle.svm.truffle.api.SubstratePartialEvaluator.config:Lorg/graalvm/compiler/truffle/compiler/TruffleCompilerConfiguration;
invokevirtual org.graalvm.compiler.truffle.compiler.TruffleCompilerConfiguration.architecture:()Ljdk/vm/ci/code/Architecture;
invokeinterface org.graalvm.compiler.truffle.compiler.PartialEvaluatorConfiguration.registerDecodingInvocationPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;ZLorg/graalvm/compiler/phases/util/Providers;Ljdk/vm/ci/code/Architecture;)V
4: aload 4
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.closeRegistration:()V
5: 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 6 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 6 1 peConfig Lorg/graalvm/compiler/truffle/compiler/PartialEvaluatorConfiguration;
0 6 2 parent Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;
0 6 3 tierProviders Lorg/graalvm/compiler/phases/util/Providers;
1 6 4 decodingInvocationPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
peConfig
parent
tierProviders
protected org.graalvm.compiler.nodes.graphbuilderconf.NodePlugin[] createNodePlugins(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;)[Lorg/graalvm/compiler/nodes/graphbuilderconf/NodePlugin;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/truffle/api/SubstratePartialEvaluator;
0 1 1 plugins Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;
MethodParameters:
Name Flags
plugins
}
SourceFile: "SubstratePartialEvaluator.java"
InnerClasses:
public Builder = org.graalvm.compiler.nodes.StructuredGraph$Builder of org.graalvm.compiler.nodes.StructuredGraph
public Plugins = org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins of org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration
public SpecialCallTargetCacheKey = org.graalvm.compiler.replacements.PEGraphDecoder$SpecialCallTargetCacheKey of org.graalvm.compiler.replacements.PEGraphDecoder
public final Request = org.graalvm.compiler.truffle.compiler.PartialEvaluator$Request of org.graalvm.compiler.truffle.compiler.PartialEvaluator