equal
deleted
inserted
replaced
2163 Array<Method*>* methods = ik->methods(); |
2163 Array<Method*>* methods = ik->methods(); |
2164 int num_methods = methods->length(); |
2164 int num_methods = methods->length(); |
2165 for (int index2 = 0; index2 < num_methods; ++index2) { |
2165 for (int index2 = 0; index2 < num_methods; ++index2) { |
2166 methodHandle m(THREAD, methods->at(index2)); |
2166 methodHandle m(THREAD, methods->at(index2)); |
2167 m()->link_method(m, CHECK); |
2167 m()->link_method(m, CHECK); |
|
2168 // restore method's vtable by calling a virtual function |
|
2169 m->restore_vtable(); |
2168 } |
2170 } |
2169 if (JvmtiExport::has_redefined_a_class()) { |
2171 if (JvmtiExport::has_redefined_a_class()) { |
2170 // Reinitialize vtable because RedefineClasses may have changed some |
2172 // Reinitialize vtable because RedefineClasses may have changed some |
2171 // entries in this vtable for super classes so the CDS vtable might |
2173 // entries in this vtable for super classes so the CDS vtable might |
2172 // point to old or obsolete entries. RedefineClasses doesn't fix up |
2174 // point to old or obsolete entries. RedefineClasses doesn't fix up |