--- old/src/share/vm/compiler/compileBroker.cpp 2016-04-14 15:02:29.281859598 +0200 +++ new/src/share/vm/compiler/compileBroker.cpp 2016-04-14 15:02:29.137859592 +0200 @@ -1040,12 +1040,14 @@ const methodHandle& hot_method, int hot_count, CompileTask::CompileReason compile_reason, Thread* THREAD) { - // do nothing if compilebroker is not available - if (!_initialized) { + // Do nothing if compilebroker is not initalized or compiles are submitted on level none + if (!_initialized || comp_level == CompLevel_none) { return NULL; } + AbstractCompiler *comp = CompileBroker::compiler(comp_level); - assert(comp != NULL, "Ensure we don't compile before compilebroker init"); + assert(comp != NULL, "Ensure we have a compiler"); + DirectiveSet* directive = DirectivesStack::getMatchingDirective(method, comp); nmethod* nm = CompileBroker::compile_method(method, osr_bci, comp_level, hot_method, hot_count, compile_reason, directive, THREAD); DirectivesStack::release(directive);