.mx.jvmci/mx_jvmci.py
Print this page
*** 155,178 ****
class ExtJDKDeployedDist(JvmciJDKDeployedDist):
def __init__(self, name):
JvmciJDKDeployedDist.__init__(self, name)
-
- """
- The monolithic JVMCI distribution is deployed through use of -Xbootclasspath/p
- so that it's not necessary to run JDK make after editing JVMCI sources.
- The latter causes all JDK Java sources to be rebuilt since JVMCI is
- (currently) in java.base.
- """
- _monolithicJvmci = JvmciJDKDeployedDist('JVMCI')
-
"""
List of distributions that are deployed on the boot class path.
Note: In jvmci-8, they were deployed directly into the JDK directory.
"""
! jdkDeployedDists = [_monolithicJvmci]
def _makehelp():
return subprocess.check_output([mx.gmake_cmd(), 'help'], cwd=_jdkSourceRoot)
def _runmake(args):
--- 155,169 ----
class ExtJDKDeployedDist(JvmciJDKDeployedDist):
def __init__(self, name):
JvmciJDKDeployedDist.__init__(self, name)
"""
List of distributions that are deployed on the boot class path.
Note: In jvmci-8, they were deployed directly into the JDK directory.
"""
! jdkDeployedDists = []
def _makehelp():
return subprocess.check_output([mx.gmake_cmd(), 'help'], cwd=_jdkSourceRoot)
def _runmake(args):
*** 755,764 ****
--- 746,763 ----
if jacocoArgs:
args = jacocoArgs + args
args = ['-Xbootclasspath/p:' + dep.classpath_repr() for dep in _jvmci_bootclasspath_prepends] + args
+ # Remove JVMCI jars from class path. They are only necessary when
+ # compiling with a javac from JDK8 or earlier.
+ cpIndex, cp = mx.find_classpath_arg(args)
+ if cp:
+ excluded = frozenset([dist.path for dist in _suite.dists])
+ cp = os.pathsep.join([e for e in cp.split(os.pathsep) if e not in excluded])
+ args[cpIndex] = cp
+
jvmciModeArgs = _jvmciModes[_vm.jvmciMode]
if jvmciModeArgs:
bcpDeps = [jdkDist.dist() for jdkDist in jdkDeployedDists]
if bcpDeps:
args = ['-Xbootclasspath/p:' + os.pathsep.join([d.classpath_repr() for d in bcpDeps])] + args