hotspot/src/share/vm/oops/instanceKlass.cpp
changeset 13736 5b15a8f57979
parent 13728 882756847a04
child 13738 d67be49a5beb
equal deleted inserted replaced
13735:c6d01e4bc0ac 13736:5b15a8f57979
  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