diff --git a/make/CompileJavaModules.gmk b/make/CompileJavaModules.gmk index 4a8ae813025..73c6a40c822 100644 --- a/make/CompileJavaModules.gmk +++ b/make/CompileJavaModules.gmk @@ -461,12 +461,28 @@ jdk.internal.jvmstat_COPY := aliasmap # -parameters provides method's parameters information in class file, # JVMCI compilers make use of that information for various sanity checks. # Don't use Indy strings concatenation to have good JVMCI startup performance. +# The exports are needed since JVMCI is dynamically exported (see +# jdk.vm.ci.services.internal.ReflectionAccessJDK::openJVMCITo). jdk.internal.vm.ci_ADD_JAVAC_FLAGS := -parameters -Xlint:-exports -XDstringConcat=inline ################################################################################ -jdk.internal.vm.compiler_ADD_JAVAC_FLAGS := -parameters -XDstringConcat=inline +jdk.internal.vm.compiler_ADD_JAVAC_FLAGS := -parameters -XDstringConcat=inline \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.aarch64=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.amd64=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code.site=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code.stack=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.common=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.sparc=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.runtime=jdk.internal.vm.compiler \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.sparc=jdk.internal.vm.compiler \ + # jdk.internal.vm.compiler_EXCLUDES += \ org.graalvm.compiler.core.match.processor \ @@ -502,7 +518,27 @@ jdk.internal.vm.compiler_EXCLUDES += \ ################################################################################ -jdk.aot_ADD_JAVAC_FLAGS := -parameters -XDstringConcat=inline +# -parameters provides method's parameters information in class file, +# JVMCI compilers make use of that information for various sanity checks. +# Don't use Indy strings concatenation to have good JAOTC startup performance. +# The exports are needed since JVMCI is dynamically exported (see +# jdk.vm.ci.services.internal.ReflectionAccessJDK::openJVMCITo). + +jdk.aot_ADD_JAVAC_FLAGS := -parameters -XDstringConcat=inline \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.aarch64=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.amd64=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code.site=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.code.stack=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.common=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.aarch64=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.amd64=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.hotspot.sparc=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.meta=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.runtime=jdk.internal.vm.compiler,jdk.aot \ + --add-exports jdk.internal.vm.ci/jdk.vm.ci.sparc=jdk.internal.vm.compiler,jdk.aot \ + # ################################################################################ diff --git a/make/common/Modules.gmk b/make/common/Modules.gmk index c9657d36758..b14616ffc21 100644 --- a/make/common/Modules.gmk +++ b/make/common/Modules.gmk @@ -79,11 +79,14 @@ UPGRADEABLE_MODULES += \ java.xml.bind \ java.xml.ws \ java.xml.ws.annotation \ + jdk.internal.vm.compiler \ # # Modules explicitly declared as not being upgradeable even though they require # an upgradeable module. -NON_UPGRADEABLE_MODULES += +NON_UPGRADEABLE_MODULES += \ + jdk.aot \ + # AGGREGATOR_MODULES += \ java.se \ @@ -109,7 +112,6 @@ PLATFORM_MODULES += \ jdk.crypto.ec \ jdk.dynalink \ jdk.incubator.httpclient \ - jdk.internal.vm.compiler \ jdk.jsobject \ jdk.localedata \ jdk.naming.dns \