# HG changeset patch # User Thomas Wuerthinger # Date 1432894147 -7200 # Node ID 6da76343d83025bdae640cadd814e17fa6b94e0f # Parent 453284d62d64f905c291af0824e4621dc6e2c5cf# Parent 9bb04af5849034887e5f305d97ad6a5431c00942 Merge. diff -r 453284d62d64 -r 6da76343d830 env --- a/env Fri May 29 10:52:21 2015 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +0,0 @@ -DEFAULT_VM=server - -LANG=en_US.UTF-8 - -USE_PRECOMPILED_HEADER=0 - -# Use clang instead of gcc. -COMPILER_WARNINGS_FATAL=false -USE_CLANG=true -LFLAGS=-Xlinker -lstdc++ - -# Which JDK to use for javac (and others). -JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home - -EXTRA_JAVA_HOMES=/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home diff -r 453284d62d64 -r 6da76343d830 mx/mx_graal.py --- a/mx/mx_graal.py Fri May 29 10:52:21 2015 +0200 +++ b/mx/mx_graal.py Fri May 29 12:09:07 2015 +0200 @@ -53,7 +53,7 @@ 'server-nojvmci' : None, # all compilation with tiered system (i.e., client + server), JVMCI omitted 'client-nojvmci' : None, # all compilation with client compiler, JVMCI omitted 'original' : None, # default VM copied from bootstrap JDK - 'graal' : 'Alias for jvmci', + 'graal' : None, # alias for jvmci } """ The VM that will be run by the 'vm' command and built by default by the 'build' command. @@ -118,10 +118,16 @@ if _vm: return _vm vm = mx.get_env('DEFAULT_VM') + envPath = join(_graal_home, 'mx', 'env') + if vm == 'graal': + if exists(envPath): + with open(envPath) as fp: + if 'DEFAULT_VM=graal' in fp.read(): + mx.log('Please update the DEFAULT_VM entry in ' + envPath + ' to use "jvmti" instead of "graal" as the value') + vm = 'jvmci' if vm is None: if not mx.is_interactive(): mx.abort('Need to specify VM with --vm option or DEFAULT_VM environment variable') - envPath = join(_graal_home, 'mx', 'env') mx.log('Please select the VM to be executed from the following: ') items = [k for k in _vmChoices.keys() if _vmChoices[k] is not None] descriptions = [_vmChoices[k] for k in _vmChoices.keys() if _vmChoices[k] is not None] diff -r 453284d62d64 -r 6da76343d830 src/share/vm/jvmci/jvmciOptions.cpp --- a/src/share/vm/jvmci/jvmciOptions.cpp Fri May 29 10:52:21 2015 +0200 +++ b/src/share/vm/jvmci/jvmciOptions.cpp Fri May 29 12:09:07 2015 +0200 @@ -111,6 +111,9 @@ class FreeNamesClosure : public ValueClosure { void do_value(OptionDesc* desc) { + if (desc->declaringClass == NULL) { + return; //skip pseudo-options whose name is not allocated with malloc + } FREE_C_HEAP_ARRAY(char, desc->name, mtCompiler); } }; diff -r 453284d62d64 -r 6da76343d830 src/share/vm/runtime/thread.cpp --- a/src/share/vm/runtime/thread.cpp Fri May 29 10:52:21 2015 +0200 +++ b/src/share/vm/runtime/thread.cpp Fri May 29 12:09:07 2015 +0200 @@ -3711,6 +3711,7 @@ #ifdef JVMCI JVMCIRuntime::set_options(options, main_thread); + delete options; #endif // initialize compiler(s)