src/share/vm/code/nmethod.cpp

Print this page
rev 6559 : 8046231: G1: Code root location ... from nmethod ... not in strong code roots for region
Reviewed-by:

*** 666,677 **** _exception_cache = NULL; _pc_desc_cache.reset_to(NULL); _hotness_counter = NMethodSweeper::hotness_counter_reset_val(); code_buffer->copy_values_to(this); ! if (ScavengeRootsInCode && detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); Universe::heap()->register_nmethod(this); } debug_only(verify_scavenge_root_oops()); CodeCache::commit(this); } --- 666,679 ---- _exception_cache = NULL; _pc_desc_cache.reset_to(NULL); _hotness_counter = NMethodSweeper::hotness_counter_reset_val(); code_buffer->copy_values_to(this); ! if (ScavengeRootsInCode) { ! if (detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); + } Universe::heap()->register_nmethod(this); } debug_only(verify_scavenge_root_oops()); CodeCache::commit(this); }
*** 751,762 **** _exception_cache = NULL; _pc_desc_cache.reset_to(NULL); _hotness_counter = NMethodSweeper::hotness_counter_reset_val(); code_buffer->copy_values_to(this); ! if (ScavengeRootsInCode && detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); Universe::heap()->register_nmethod(this); } DEBUG_ONLY(verify_scavenge_root_oops();) CodeCache::commit(this); } --- 753,766 ---- _exception_cache = NULL; _pc_desc_cache.reset_to(NULL); _hotness_counter = NMethodSweeper::hotness_counter_reset_val(); code_buffer->copy_values_to(this); ! if (ScavengeRootsInCode) { ! if (detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); + } Universe::heap()->register_nmethod(this); } DEBUG_ONLY(verify_scavenge_root_oops();) CodeCache::commit(this); }
*** 867,878 **** // Copy contents of ScopeDescRecorder to nmethod code_buffer->copy_values_to(this); debug_info->copy_to(this); dependencies->copy_to(this); ! if (ScavengeRootsInCode && detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); Universe::heap()->register_nmethod(this); } debug_only(verify_scavenge_root_oops()); CodeCache::commit(this); --- 871,884 ---- // Copy contents of ScopeDescRecorder to nmethod code_buffer->copy_values_to(this); debug_info->copy_to(this); dependencies->copy_to(this); ! if (ScavengeRootsInCode) { ! if (detect_scavenge_root_oops()) { CodeCache::add_scavenge_root_nmethod(this); + } Universe::heap()->register_nmethod(this); } debug_only(verify_scavenge_root_oops()); CodeCache::commit(this);