--- old/src/share/vm/compiler/compileBroker.cpp 2016-02-10 10:49:51.401356782 +0100 +++ new/src/share/vm/compiler/compileBroker.cpp 2016-02-10 10:49:51.289356778 +0100 @@ -1255,6 +1255,7 @@ tty->cr(); } method->set_not_compilable(comp_level, !quietly, "excluded by CompileCommand"); + return true; } return false; @@ -1472,7 +1473,9 @@ { // Must switch to native to allocate ci_env ThreadToNativeFromVM ttn(thread); - ciEnv ci_env(NULL, system_dictionary_modification_counter); + // Matching the default directive, we currently have no method to match. + DirectiveSet* directive = DirectivesStack::getDefaultDirective(CompileBroker::compiler(CompLevel_full_optimization)); + ciEnv ci_env(NULL, system_dictionary_modification_counter, directive); // Cache Jvmti state ci_env.cache_jvmti_state(); // Cache DTrace flags @@ -1486,6 +1489,7 @@ // Perform per-thread and global initializations comp->initialize(); } + DirectivesStack::release(directive); } if (comp->is_failed()) { @@ -1845,7 +1849,7 @@ NoHandleMark nhm; ThreadToNativeFromVM ttn(thread); - ciEnv ci_env(task, system_dictionary_modification_counter); + ciEnv ci_env(task, system_dictionary_modification_counter, directive); if (should_break) { ci_env.set_break_at_compile(true); } @@ -1875,7 +1879,7 @@ locker.wait(Mutex::_no_safepoint_check_flag); } } - comp->compile_method(&ci_env, target, osr_bci, directive); + comp->compile_method(&ci_env, target, osr_bci); } if (!ci_env.failing() && task->code() == NULL) {