public class PartialEvaluator extends Object
Modifier and Type | Class and Description |
---|---|
private class |
PartialEvaluator.InterceptReceiverPlugin |
private class |
PartialEvaluator.ParsingInlineInvokePlugin |
private class |
PartialEvaluator.PEInlineInvokePlugin |
private class |
PartialEvaluator.PELoopExplosionPlugin |
Modifier and Type | Field and Description |
---|---|
protected Architecture |
architecture |
private ResolvedJavaMethod |
callDirectMethod |
private ResolvedJavaMethod |
callInlinedMethod |
private ResolvedJavaMethod |
callRootMethod |
private ResolvedJavaMethod |
callSiteProxyMethod |
private CanonicalizerPhase |
canonicalizer |
private GraphBuilderConfiguration |
configForRoot |
static StableOptionValue<Boolean> |
GraphPE |
protected Providers |
providers |
private SnippetReflectionProvider |
snippetReflection |
Constructor and Description |
---|
PartialEvaluator(Providers providers,
GraphBuilderConfiguration configForRoot,
SnippetReflectionProvider snippetReflection,
Architecture architecture) |
public static final StableOptionValue<Boolean> GraphPE
protected final Architecture architecture
private final CanonicalizerPhase canonicalizer
private final SnippetReflectionProvider snippetReflection
private final ResolvedJavaMethod callDirectMethod
private final ResolvedJavaMethod callInlinedMethod
private final ResolvedJavaMethod callSiteProxyMethod
private final ResolvedJavaMethod callRootMethod
private final GraphBuilderConfiguration configForRoot
public PartialEvaluator(Providers providers, GraphBuilderConfiguration configForRoot, SnippetReflectionProvider snippetReflection, Architecture architecture)
public Providers getProviders()
public SnippetReflectionProvider getSnippetReflection()
public ResolvedJavaMethod[] getCompilationRootMethods()
public ResolvedJavaMethod[] getNeverInlineMethods()
public StructuredGraph createGraph(OptimizedCallTarget callTarget, StructuredGraph.AllowAssumptions allowAssumptions)
protected void doFastPE(OptimizedCallTarget callTarget, StructuredGraph graph)
protected PEGraphDecoder createGraphDecoder(StructuredGraph graph)
protected void doGraphPE(OptimizedCallTarget callTarget, StructuredGraph graph)
protected InvocationPlugins createDecodingInvocationPlugins()
private void fastPartialEvaluation(OptimizedCallTarget callTarget, StructuredGraph graph, PhaseContext baseContext, HighTierContext tierContext)
private static void reportPerformanceWarnings(OptimizedCallTarget target, StructuredGraph graph)
private static void postPartialEvaluation(StructuredGraph graph)
private static TruffleInliningDecision getDecision(TruffleInlining inlining, OptimizedDirectCallNode callNode)