src/share/vm/compiler/compileBroker.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/compiler/compileBroker.cpp
src/share/vm/compiler/compileBroker.cpp
Print this page
rev 10832 : 8153013: BlockingCompilation test times out
Summary: Task has no invocation count and get stale at once
Reviewed-by: kvn, iveresov
rev 10833 : 8154151: VM crashes with assert "Ensure we don't compile before compilebroker init"
Summary: Drop compiles submitted with complevel_none
Reviewed-by:
*** 1038,1053 ****
nmethod* CompileBroker::compile_method(const methodHandle& method, int osr_bci,
int comp_level,
const methodHandle& hot_method, int hot_count,
CompileTask::CompileReason compile_reason,
Thread* THREAD) {
! // do nothing if compilebroker is not available
! if (!_initialized) {
return NULL;
}
AbstractCompiler *comp = CompileBroker::compiler(comp_level);
! assert(comp != NULL, "Ensure we don't compile before compilebroker init");
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);
return nm;
}
--- 1038,1055 ----
nmethod* CompileBroker::compile_method(const methodHandle& method, int osr_bci,
int comp_level,
const methodHandle& hot_method, int hot_count,
CompileTask::CompileReason compile_reason,
Thread* THREAD) {
! // 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 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);
return nm;
}
src/share/vm/compiler/compileBroker.cpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File