< prev index next >

src/hotspot/share/oops/klassVtable.cpp

Print this page
rev 55090 : secret-sfac

*** 1103,1114 **** } inline bool interface_method_needs_itable_index(Method* m) { if (m->is_static()) return false; // e.g., Stream.empty - if (m->is_initializer()) return false; // <init> or <clinit> if (m->is_private()) return false; // uses direct call // If an interface redeclares a method from java.lang.Object, // it should already have a vtable index, don't touch it. // e.g., CharSequence.toString (from initialize_vtable) // if (m->has_vtable_index()) return false; // NO! return true; --- 1103,1115 ---- } inline bool interface_method_needs_itable_index(Method* m) { if (m->is_static()) return false; // e.g., Stream.empty if (m->is_private()) return false; // uses direct call + if (m->is_object_constructor()) return false; // <init>(...)V + if (m->is_class_initializer()) return false; // <clinit>()V // If an interface redeclares a method from java.lang.Object, // it should already have a vtable index, don't touch it. // e.g., CharSequence.toString (from initialize_vtable) // if (m->has_vtable_index()) return false; // NO! return true;
< prev index next >