src/share/vm/compiler/compileTask.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff src/share/vm/compiler/compileTask.cpp

src/share/vm/compiler/compileTask.cpp

Print this page
rev 10831 : 8153013: BlockingCompilation test times out
Summary: Task has no invocation count and get stale at once
Reviewed-by: kvn

*** 80,90 **** const methodHandle& method, int osr_bci, int comp_level, const methodHandle& hot_method, int hot_count, ! const char* comment, bool is_blocking) { assert(!_lock->is_locked(), "bad locking"); _compile_id = compile_id; _method = method(); --- 80,90 ---- const methodHandle& method, int osr_bci, int comp_level, const methodHandle& hot_method, int hot_count, ! int compile_reason, bool is_blocking) { assert(!_lock->is_locked(), "bad locking"); _compile_id = compile_id; _method = method();
*** 102,112 **** _hot_method = NULL; _hot_method_holder = NULL; _hot_count = hot_count; _time_queued = 0; // tidy ! _comment = comment; _failure_reason = NULL; if (LogCompilation) { _time_queued = os::elapsed_counter(); if (hot_method.not_null()) { --- 102,112 ---- _hot_method = NULL; _hot_method_holder = NULL; _hot_count = hot_count; _time_queued = 0; // tidy ! _compile_reason = compile_reason; _failure_reason = NULL; if (LogCompilation) { _time_queued = os::elapsed_counter(); if (hot_method.not_null()) {
*** 303,315 **** ttyLocker ttyl; ResourceMark rm(thread); xtty->begin_elem("task_queued"); log_task(xtty); ! if (_comment != NULL) { ! xtty->print(" comment='%s'", _comment); ! } if (_hot_method != NULL) { methodHandle hot(thread, _hot_method); methodHandle method(thread, _method); if (hot() != method()) { xtty->method(hot); --- 303,315 ---- ttyLocker ttyl; ResourceMark rm(thread); xtty->begin_elem("task_queued"); log_task(xtty); ! assert(_compile_reason > CompileBroker::Reason_None && _compile_reason < CompileBroker::Reason_Count, "Valid values"); ! xtty->print(" comment='%s'", CompileBroker::reason_names[_compile_reason]); ! if (_hot_method != NULL) { methodHandle hot(thread, _hot_method); methodHandle method(thread, _method); if (hot() != method()) { xtty->method(hot);
*** 434,438 **** --- 434,443 ---- if (msg != NULL) { st->print(" %s", msg); } st->cr(); } + + bool CompileTask::can_become_stale() const { + return !_is_blocking && (_compile_reason < CompileBroker::Reason_Whitebox); + } +
src/share/vm/compiler/compileTask.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File