equal
deleted
inserted
replaced
427 |
427 |
428 void VirtualCallData::clean_weak_method_links() { |
428 void VirtualCallData::clean_weak_method_links() { |
429 ReceiverTypeData::clean_weak_method_links(); |
429 ReceiverTypeData::clean_weak_method_links(); |
430 for (uint row = 0; row < method_row_limit(); row++) { |
430 for (uint row = 0; row < method_row_limit(); row++) { |
431 Method* p = method(row); |
431 Method* p = method(row); |
432 if (p != NULL && !p->on_stack()) { |
432 if (p != NULL && p->is_old()) { |
433 clear_method_row(row); |
433 clear_method_row(row); |
434 } |
434 } |
435 } |
435 } |
436 } |
436 } |
437 #endif // INCLUDE_JVMCI |
437 #endif // INCLUDE_JVMCI |
1768 CleanExtraDataKlassClosure cl(always_clean); |
1768 CleanExtraDataKlassClosure cl(always_clean); |
1769 clean_extra_data(&cl); |
1769 clean_extra_data(&cl); |
1770 verify_extra_data_clean(&cl); |
1770 verify_extra_data_clean(&cl); |
1771 } |
1771 } |
1772 |
1772 |
|
1773 // This is called during redefinition to clean all "old" redefined |
|
1774 // methods out of MethodData for all methods. |
1773 void MethodData::clean_weak_method_links() { |
1775 void MethodData::clean_weak_method_links() { |
1774 ResourceMark rm; |
1776 ResourceMark rm; |
1775 for (ProfileData* data = first_data(); |
1777 for (ProfileData* data = first_data(); |
1776 is_valid(data); |
1778 is_valid(data); |
1777 data = next_data(data)) { |
1779 data = next_data(data)) { |