|
26 | 26 |
|
27 | 27 | package com.oracle.graal.pointsto.standalone; |
28 | 28 |
|
29 | | -import static jdk.graal.compiler.replacements.StandardGraphBuilderPlugins.registerInvocationPlugins; |
30 | | - |
31 | 29 | import java.io.File; |
32 | 30 | import java.lang.reflect.Method; |
33 | 31 | import java.net.MalformedURLException; |
|
56 | 54 | import com.oracle.graal.pointsto.meta.HostedProviders; |
57 | 55 | import com.oracle.graal.pointsto.meta.PointsToAnalysisFactory; |
58 | 56 | import com.oracle.graal.pointsto.phases.NoClassInitializationPlugin; |
| 57 | +import com.oracle.graal.pointsto.plugins.PointstoGraphBuilderPlugins; |
59 | 58 | import com.oracle.graal.pointsto.reports.AnalysisReporter; |
60 | 59 | import com.oracle.graal.pointsto.standalone.features.StandaloneAnalysisFeatureImpl; |
61 | 60 | import com.oracle.graal.pointsto.standalone.features.StandaloneAnalysisFeatureManager; |
@@ -97,7 +96,6 @@ public final class PointsToAnalyzer { |
97 | 96 | ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, null, false, "java.base", "sun.text.spi"); |
98 | 97 | ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, null, false, "java.base", "sun.reflect.annotation"); |
99 | 98 | ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, null, false, "java.base", "sun.security.jca"); |
100 | | - ModuleSupport.accessPackagesToClass(ModuleSupport.Access.OPEN, null, false, "jdk.jdeps", "com.sun.tools.classfile"); |
101 | 99 | } |
102 | 100 |
|
103 | 101 | private final OptionValues options; |
@@ -212,7 +210,9 @@ private PointsToAnalyzer(String mainEntryClass, OptionValues options) { |
212 | 210 | NoClassInitializationPlugin classInitializationPlugin = new NoClassInitializationPlugin(); |
213 | 211 | plugins.setClassInitializationPlugin(classInitializationPlugin); |
214 | 212 | aProviders.setGraphBuilderPlugins(plugins); |
215 | | - registerInvocationPlugins(originalProviders.getSnippetReflection(), plugins.getInvocationPlugins(), false, true, false); |
| 213 | + PointstoGraphBuilderPlugins.registerArrayPlugins(plugins.getInvocationPlugins()); |
| 214 | + PointstoGraphBuilderPlugins.registerSystemPlugins(plugins.getInvocationPlugins()); |
| 215 | + PointstoGraphBuilderPlugins.registerObjectPlugins(plugins.getInvocationPlugins()); |
216 | 216 | } |
217 | 217 | } |
218 | 218 |
|
@@ -286,6 +286,7 @@ public int run() { |
286 | 286 | try (Timer t = new Timer("analysis", analysisName)) { |
287 | 287 | StandaloneAnalysisFeatureImpl.DuringAnalysisAccessImpl config = new StandaloneAnalysisFeatureImpl.DuringAnalysisAccessImpl(standaloneAnalysisFeatureManager, analysisClassLoader, bigbang, |
288 | 288 | debugContext); |
| 289 | + bigbang.getUniverse().setConcurrentAnalysisAccess(config); |
289 | 290 | bigbang.runAnalysis(debugContext, (analysisUniverse) -> { |
290 | 291 | bigbang.getHostVM().notifyClassReachabilityListener(analysisUniverse, config); |
291 | 292 | standaloneAnalysisFeatureManager.forEachFeature(feature -> feature.duringAnalysis(config)); |
|
0 commit comments