public class SubstrateReplacements
extends org.graalvm.compiler.replacements.ReplacementsImpl
| Modifier and Type | Class and Description |
|---|---|
protected static class |
SubstrateReplacements.Builder |
static interface |
SubstrateReplacements.GraphMakerFactory |
protected class |
SubstrateReplacements.SnippetInlineInvokePlugin |
| Constructor and Description |
|---|
SubstrateReplacements(org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection,
org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider,
jdk.vm.ci.code.TargetDescription target,
SubstrateReplacements.GraphMakerFactory graphMakerFactory) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
copyFrom(SubstrateReplacements copyFrom,
Function<Object,Object> objectReplacer) |
protected org.graalvm.compiler.replacements.ReplacementsImpl.GraphMaker |
createGraphMaker(jdk.vm.ci.meta.ResolvedJavaMethod substitute,
jdk.vm.ci.meta.ResolvedJavaMethod substitutedMethod) |
void |
encodeSnippets() |
Set<jdk.vm.ci.meta.ResolvedJavaMethod> |
getDelayedInvocationPluginMethods() |
org.graalvm.compiler.nodes.StructuredGraph |
getIntrinsicGraph(jdk.vm.ci.meta.ResolvedJavaMethod method,
org.graalvm.compiler.core.common.CompilationIdentifier compilationId,
org.graalvm.compiler.debug.DebugContext debug,
org.graalvm.compiler.nodes.Cancellable cancellable) |
protected org.graalvm.compiler.nodes.graphbuilderconf.MethodSubstitutionPlugin |
getMethodSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod method) |
org.graalvm.compiler.nodes.StructuredGraph |
getSnippet(jdk.vm.ci.meta.ResolvedJavaMethod method,
jdk.vm.ci.meta.ResolvedJavaMethod recursiveEntry,
Object[] args,
boolean trackNodeSourcePosition,
org.graalvm.compiler.graph.NodeSourcePosition replaceePosition,
org.graalvm.compiler.options.OptionValues options) |
Collection<org.graalvm.compiler.nodes.StructuredGraph> |
getSnippetGraphs(boolean trackNodeSourcePosition,
org.graalvm.compiler.options.OptionValues options) |
Collection<jdk.vm.ci.meta.ResolvedJavaMethod> |
getSnippetMethods() |
org.graalvm.compiler.graph.NodeClass<?>[] |
getSnippetNodeClasses() |
org.graalvm.compiler.nodes.StructuredGraph |
getSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod original,
int invokeBci,
boolean trackNodeSourcePosition,
org.graalvm.compiler.graph.NodeSourcePosition replaceePosiion,
org.graalvm.compiler.options.OptionValues options) |
boolean |
hasSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod method,
int callerBci) |
void |
registerImmutableObjects(org.graalvm.nativeimage.hosted.Feature.CompilationAccess access) |
void |
registerSnippet(jdk.vm.ci.meta.ResolvedJavaMethod method,
jdk.vm.ci.meta.ResolvedJavaMethod original,
Object receiver,
boolean trackNodeSourcePosition,
org.graalvm.compiler.options.OptionValues options)
Compiles the snippet and stores the graph.
|
void |
setGraphBuilderPlugins(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.Plugins plugins) |
getDefaultReplacementBytecodeProvider, getGraphBuilderPlugins, getIntrinsifyingPlugin, getMethodSubstitution, getProviders, getSnippetTemplateCache, makeGraph, makeGraph, notifyNotInlined, openDebugContext, registerMethodSubstitution, registerSnippetTemplateCache, setProviders, shouldInlineInvokeclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitpublic SubstrateReplacements(org.graalvm.compiler.phases.util.Providers providers,
org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection,
org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider,
jdk.vm.ci.code.TargetDescription target,
SubstrateReplacements.GraphMakerFactory graphMakerFactory)
public void registerImmutableObjects(org.graalvm.nativeimage.hosted.Feature.CompilationAccess access)
public Collection<org.graalvm.compiler.nodes.StructuredGraph> getSnippetGraphs(boolean trackNodeSourcePosition, org.graalvm.compiler.options.OptionValues options)
public org.graalvm.compiler.graph.NodeClass<?>[] getSnippetNodeClasses()
public Collection<jdk.vm.ci.meta.ResolvedJavaMethod> getSnippetMethods()
public void setGraphBuilderPlugins(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.Plugins plugins)
setGraphBuilderPlugins in class org.graalvm.compiler.replacements.ReplacementsImplpublic org.graalvm.compiler.nodes.StructuredGraph getSnippet(jdk.vm.ci.meta.ResolvedJavaMethod method,
jdk.vm.ci.meta.ResolvedJavaMethod recursiveEntry,
Object[] args,
boolean trackNodeSourcePosition,
org.graalvm.compiler.graph.NodeSourcePosition replaceePosition,
org.graalvm.compiler.options.OptionValues options)
getSnippet in interface org.graalvm.compiler.nodes.spi.ReplacementsgetSnippet in class org.graalvm.compiler.replacements.ReplacementsImplpublic void registerSnippet(jdk.vm.ci.meta.ResolvedJavaMethod method,
jdk.vm.ci.meta.ResolvedJavaMethod original,
Object receiver,
boolean trackNodeSourcePosition,
org.graalvm.compiler.options.OptionValues options)
registerSnippet in interface org.graalvm.compiler.nodes.spi.ReplacementsregisterSnippet in class org.graalvm.compiler.replacements.ReplacementsImplpublic Set<jdk.vm.ci.meta.ResolvedJavaMethod> getDelayedInvocationPluginMethods()
public void encodeSnippets()
protected void copyFrom(SubstrateReplacements copyFrom, Function<Object,Object> objectReplacer)
protected org.graalvm.compiler.nodes.graphbuilderconf.MethodSubstitutionPlugin getMethodSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod method)
getMethodSubstitution in class org.graalvm.compiler.replacements.ReplacementsImplpublic boolean hasSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod method,
int callerBci)
hasSubstitution in interface org.graalvm.compiler.nodes.spi.ReplacementshasSubstitution in class org.graalvm.compiler.replacements.ReplacementsImplpublic org.graalvm.compiler.nodes.StructuredGraph getSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod original,
int invokeBci,
boolean trackNodeSourcePosition,
org.graalvm.compiler.graph.NodeSourcePosition replaceePosiion,
org.graalvm.compiler.options.OptionValues options)
getSubstitution in interface org.graalvm.compiler.nodes.spi.ReplacementsgetSubstitution in class org.graalvm.compiler.replacements.ReplacementsImplpublic org.graalvm.compiler.nodes.StructuredGraph getIntrinsicGraph(jdk.vm.ci.meta.ResolvedJavaMethod method,
org.graalvm.compiler.core.common.CompilationIdentifier compilationId,
org.graalvm.compiler.debug.DebugContext debug,
org.graalvm.compiler.nodes.Cancellable cancellable)
getIntrinsicGraph in interface org.graalvm.compiler.nodes.spi.ReplacementsgetIntrinsicGraph in class org.graalvm.compiler.replacements.ReplacementsImplprotected final org.graalvm.compiler.replacements.ReplacementsImpl.GraphMaker createGraphMaker(jdk.vm.ci.meta.ResolvedJavaMethod substitute,
jdk.vm.ci.meta.ResolvedJavaMethod substitutedMethod)
createGraphMaker in class org.graalvm.compiler.replacements.ReplacementsImpl