Mercurial > hg > graal-compiler
comparison mx.graal/mx_graal_9.py @ 23295:22f57623221f
override "jvmci" tag for --jdk option with Graal specific JDK config
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 12 Jan 2016 15:31:53 +0100 |
parents | fd7e09778f42 |
children | 279eb7ca5d24 |
comparison
equal
deleted
inserted
replaced
23294:3c37032e8e63 | 23295:22f57623221f |
---|---|
359 | 359 |
360 jvmciModeArgs = _jvmciModes[_vm.jvmciMode] | 360 jvmciModeArgs = _jvmciModes[_vm.jvmciMode] |
361 cmd = [jdk.java] + ['-' + get_vm()] + jvmciModeArgs + args | 361 cmd = [jdk.java] + ['-' + get_vm()] + jvmciModeArgs + args |
362 return mx.run(cmd, nonZeroIsFatal=nonZeroIsFatal, out=out, err=err, cwd=cwd) | 362 return mx.run(cmd, nonZeroIsFatal=nonZeroIsFatal, out=out, err=err, cwd=cwd) |
363 | 363 |
364 _GRAAL_JVMCI_TAG = 'graal' | 364 _JVMCI_JDK_TAG = 'jvmci' |
365 | 365 |
366 class GraalJVMCI9JDKConfig(mx.JDKConfig): | 366 class GraalJVMCI9JDKConfig(mx.JDKConfig): |
367 def __init__(self, original): | 367 def __init__(self, original): |
368 self._original = original | 368 self._original = original |
369 mx.JDKConfig.__init__(self, original.home, tag=_GRAAL_JVMCI_TAG) | 369 mx.JDKConfig.__init__(self, original.home, tag=_JVMCI_JDK_TAG) |
370 | 370 |
371 def run_java(self, args, **kwArgs): | 371 def run_java(self, args, **kwArgs): |
372 run_java(self._original, args, **kwArgs) | 372 run_java(self._original, args, **kwArgs) |
373 | 373 |
374 class GraalJDKFactory(mx.JDKFactory): | 374 class GraalJDKFactory(mx.JDKFactory): |
376 return GraalJVMCI9JDKConfig(_jdk) | 376 return GraalJVMCI9JDKConfig(_jdk) |
377 | 377 |
378 def description(self): | 378 def description(self): |
379 return "JVMCI JDK with Graal" | 379 return "JVMCI JDK with Graal" |
380 | 380 |
381 mx.addJDKFactory(_GRAAL_JVMCI_TAG, mx.JavaCompliance('9'), GraalJDKFactory()) | 381 # This will override the 'generic' JVMCI JDK with a Graal JVMCI JDK that has |
382 # support for -G style Graal options. | |
383 mx.addJDKFactory(_JVMCI_JDK_TAG, mx.JavaCompliance('9'), GraalJDKFactory()) | |
382 | 384 |
383 def run_vm(args, vm=None, nonZeroIsFatal=True, out=None, err=None, cwd=None, timeout=None, debugLevel=None, vmbuild=None): | 385 def run_vm(args, vm=None, nonZeroIsFatal=True, out=None, err=None, cwd=None, timeout=None, debugLevel=None, vmbuild=None): |
384 """run a Java program by executing the java executable in a JVMCI JDK""" | 386 """run a Java program by executing the java executable in a JVMCI JDK""" |
385 | 387 |
386 return run_java(_jdk, args, nonZeroIsFatal=nonZeroIsFatal, out=out, err=err, cwd=cwd, timeout=timeout) | 388 return run_java(_jdk, args, nonZeroIsFatal=nonZeroIsFatal, out=out, err=err, cwd=cwd, timeout=timeout) |