8055008: Clean up code that saves the previous versions of redefined classes

Use scratch_class to find EMCP methods for breakpoints if the old methods are still running.

Reviewed-by: dcubed, sspitsyn
This commit is contained in:
Coleen Phillimore 2014-09-03 19:13:18 -04:00
parent 07001d0332
commit 3c70d99eda
13 changed files with 340 additions and 369 deletions

View file

@ -776,7 +776,7 @@ bool ClassLoaderDataGraph::do_unloading(BoolObjectClosure* is_alive_closure) {
// mark metadata seen on the stack and code cache so we can delete
// unneeded entries.
bool has_redefined_a_class = JvmtiExport::has_redefined_a_class();
MetadataOnStackMark md_on_stack;
MetadataOnStackMark md_on_stack(has_redefined_a_class);
if (has_redefined_a_class) {
// purge_previous_versions also cleans weak method links. Because
// one method's MDO can reference another method from another