8020151: PSR:PERF Large performance regressions when code cache is filled

Code cache sweeping based on method hotness; removed speculatively disconnect

Reviewed-by: kvn, iveresov
This commit is contained in:
Albert Noll 2013-09-27 10:50:55 +02:00
parent 441f1d74cf
commit 0dee555ead
15 changed files with 240 additions and 418 deletions

View file

@ -901,16 +901,6 @@ address Method::make_adapters(methodHandle mh, TRAPS) {
// This function must not hit a safepoint!
address Method::verified_code_entry() {
debug_only(No_Safepoint_Verifier nsv;)
nmethod *code = (nmethod *)OrderAccess::load_ptr_acquire(&_code);
if (code == NULL && UseCodeCacheFlushing) {
nmethod *saved_code = CodeCache::reanimate_saved_code(this);
if (saved_code != NULL) {
methodHandle method(this);
assert( ! saved_code->is_osr_method(), "should not get here for osr" );
set_code( method, saved_code );
}
}
assert(_from_compiled_entry != NULL, "must be set");
return _from_compiled_entry;
}