|
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