1.1 --- a/src/share/vm/classfile/vmSymbols.cpp Mon Jul 23 13:04:59 2012 -0700 1.2 +++ b/src/share/vm/classfile/vmSymbols.cpp Tue Jul 24 10:51:00 2012 -0700 1.3 @@ -332,7 +332,14 @@ 1.4 if (cname == NULL || mname == NULL || msig == NULL) return NULL; 1.5 klassOop k = SystemDictionary::find_well_known_klass(cname); 1.6 if (k == NULL) return NULL; 1.7 - return instanceKlass::cast(k)->find_method(mname, msig); 1.8 + methodOop m = instanceKlass::cast(k)->find_method(mname, msig); 1.9 + if (m == NULL && 1.10 + cname == vmSymbols::java_lang_invoke_MethodHandle() && 1.11 + msig == vmSymbols::star_name()) { 1.12 + // Any signature polymorphic method is represented by a fixed concrete signature: 1.13 + m = instanceKlass::cast(k)->find_method(mname, vmSymbols::object_array_object_signature()); 1.14 + } 1.15 + return m; 1.16 } 1.17 1.18