8012961: Do not restrict static interface methods to be private
authorbharadwaj
Tue, 23 Apr 2013 08:12:14 -0700
changeset 17033 1202c990af75
parent 17032 61a9e303d989
child 17034 234c6e7b856c
8012961: Do not restrict static interface methods to be private Summary: Lambda changes; spec 0.6.2 - remove the restriction that was added as part of recent changes made to support upcoming changes to compilation of lambda methods. Reviewed-by: dholmes, acorn
hotspot/src/share/vm/prims/methodHandles.cpp
--- a/hotspot/src/share/vm/prims/methodHandles.cpp	Sun Apr 21 21:05:02 2013 -0700
+++ b/hotspot/src/share/vm/prims/methodHandles.cpp	Tue Apr 23 08:12:14 2013 -0700
@@ -192,9 +192,8 @@
     flags |= IS_CONSTRUCTOR | (JVM_REF_invokeSpecial << REFERENCE_KIND_SHIFT);
   } else if (mods.is_static()) {
     flags |= IS_METHOD | (JVM_REF_invokeStatic << REFERENCE_KIND_SHIFT);
-     // Check if this method is a lambda method that is generated as
-     // private static method.
-     if (m->is_private() && m->method_holder()->is_interface()) {
+     // Get vindex from itable if method holder is an interface.
+     if (m->method_holder()->is_interface()) {
        vmindex = klassItable::compute_itable_index(m);
      }
   } else if (receiver_limit != mklass &&