public static class ReplacementsImpl.GraphMaker extends Object
Modifier and Type | Field and Description |
---|---|
protected ResolvedJavaMethod |
method
The method for which a graph is being created.
|
protected ReplacementsImpl |
replacements
The replacements object that the graphs are created for.
|
protected ResolvedJavaMethod |
substitutedMethod
The original method which
method is substituting. |
Modifier | Constructor and Description |
---|---|
protected |
GraphMaker(ReplacementsImpl replacements,
ResolvedJavaMethod substitute,
ResolvedJavaMethod substitutedMethod) |
Modifier and Type | Method and Description |
---|---|
protected StructuredGraph |
buildInitialGraph(ResolvedJavaMethod methodToParse,
Object[] args)
Builds the initial graph for a snippet.
|
protected GraphBuilderPhase.Instance |
createGraphBuilder(MetaAccessProvider metaAccess,
StampProvider stampProvider,
ConstantReflectionProvider constantReflection,
GraphBuilderConfiguration graphBuilderConfig,
OptimisticOptimizations optimisticOpts,
IntrinsicContext initialIntrinsicContext) |
protected void |
finalizeGraph(StructuredGraph graph)
Does final processing of a snippet graph.
|
private boolean |
hasSideEffect(Node node)
Filter nodes which have side effects and shouldn't be deleted from snippets when
converting deoptimizations to guards.
|
StructuredGraph |
makeGraph(Object[] args) |
protected final ReplacementsImpl replacements
protected final ResolvedJavaMethod method
protected final ResolvedJavaMethod substitutedMethod
method
is substituting. Calls to method
or
substitutedMethod
will be replaced with a forced inline of
substitutedMethod
.protected GraphMaker(ReplacementsImpl replacements, ResolvedJavaMethod substitute, ResolvedJavaMethod substitutedMethod)
public StructuredGraph makeGraph(Object[] args)
protected void finalizeGraph(StructuredGraph graph)
private boolean hasSideEffect(Node node)
node
- protected StructuredGraph buildInitialGraph(ResolvedJavaMethod methodToParse, Object[] args)
protected GraphBuilderPhase.Instance createGraphBuilder(MetaAccessProvider metaAccess, StampProvider stampProvider, ConstantReflectionProvider constantReflection, GraphBuilderConfiguration graphBuilderConfig, OptimisticOptimizations optimisticOpts, IntrinsicContext initialIntrinsicContext)