Mercurial > hg > truffle
diff src/share/vm/ci/ciEnv.cpp @ 1216:7f8790caccb0
Merge
author | apangin |
---|---|
date | Thu, 04 Feb 2010 15:50:59 -0800 |
parents | 6deeaebad47a 5f24d0319e54 |
children | 09ac706c2623 |
line wrap: on
line diff
--- a/src/share/vm/ci/ciEnv.cpp Tue Feb 02 11:08:17 2010 -0700 +++ b/src/share/vm/ci/ciEnv.cpp Thu Feb 04 15:50:59 2010 -0800 @@ -962,18 +962,10 @@ if (nm == NULL) { // The CodeCache is full. Print out warning and disable compilation. record_failure("code cache is full"); - UseInterpreter = true; - if (UseCompiler || AlwaysCompileLoopMethods ) { -#ifndef PRODUCT - warning("CodeCache is full. Compiler has been disabled"); - if (CompileTheWorld || ExitOnFullCodeCache) { - before_exit(JavaThread::current()); - exit_globals(); // will delete tty - vm_direct_exit(CompileTheWorld ? 0 : 1); - } -#endif - UseCompiler = false; - AlwaysCompileLoopMethods = false; + { + MutexUnlocker ml(Compile_lock); + MutexUnlocker locker(MethodCompileQueue_lock); + CompileBroker::handle_full_code_cache(); } } else { NOT_PRODUCT(nm->set_has_debug_info(has_debug_info); )