public final class InlineBeforeAnalysisPolicyImpl
extends com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>
Method constants can be produced by inlining lookup methods with
constant arguments, reducing inlining can break customer code. This means we can never reduce the
amount of inlining in a future version without breaking compatibility. This also means that we
must be conservative and only inline what is necessary for known use cases.| Modifier and Type | Class and Description |
|---|---|
static class |
InlineBeforeAnalysisPolicyImpl.Options |
| Constructor and Description |
|---|
InlineBeforeAnalysisPolicyImpl() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
abortCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer,
com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope callee) |
protected void |
commitCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer,
com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope callee) |
protected com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope |
createTopScope() |
protected com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope |
openCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer) |
protected boolean |
processNode(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope scope,
org.graalvm.compiler.graph.Node node) |
protected boolean |
shouldInlineInvoke(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b,
jdk.vm.ci.meta.ResolvedJavaMethod method,
org.graalvm.compiler.nodes.ValueNode[] args) |
protected boolean shouldInlineInvoke(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b,
jdk.vm.ci.meta.ResolvedJavaMethod method,
org.graalvm.compiler.nodes.ValueNode[] args)
shouldInlineInvoke in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>protected com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope createTopScope()
createTopScope in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>protected com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope openCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer)
openCalleeScope in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>protected void commitCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer,
com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope callee)
commitCalleeScope in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>protected void abortCalleeScope(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope outer,
com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope callee)
abortCalleeScope in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>protected boolean processNode(com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope scope,
org.graalvm.compiler.graph.Node node)
processNode in class com.oracle.graal.pointsto.phases.InlineBeforeAnalysisPolicy<com.oracle.svm.hosted.phases.InlineBeforeAnalysisPolicyImpl.CountersScope>