1.1 --- a/src/share/vm/oops/instanceKlass.cpp Wed Feb 15 17:39:29 2017 +0000 1.2 +++ b/src/share/vm/oops/instanceKlass.cpp Fri Feb 24 06:48:48 2017 -0800 1.3 @@ -3062,7 +3062,7 @@ 1.4 return NULL; 1.5 } 1.6 1.7 -bool InstanceKlass::add_member_name(Handle mem_name) { 1.8 +oop InstanceKlass::add_member_name(Handle mem_name, bool intern) { 1.9 jweak mem_name_wref = JNIHandles::make_weak_global(mem_name); 1.10 MutexLocker ml(MemberNameTable_lock); 1.11 DEBUG_ONLY(No_Safepoint_Verifier nsv); 1.12 @@ -3072,7 +3072,7 @@ 1.13 // is called! 1.14 Method* method = (Method*)java_lang_invoke_MemberName::vmtarget(mem_name()); 1.15 if (method->is_obsolete()) { 1.16 - return false; 1.17 + return NULL; 1.18 } else if (method->is_old()) { 1.19 // Replace method with redefined version 1.20 java_lang_invoke_MemberName::set_vmtarget(mem_name(), method_with_idnum(method->method_idnum())); 1.21 @@ -3081,8 +3081,11 @@ 1.22 if (_member_names == NULL) { 1.23 _member_names = new (ResourceObj::C_HEAP, mtClass) MemberNameTable(idnum_allocated_count()); 1.24 } 1.25 - _member_names->add_member_name(mem_name_wref); 1.26 - return true; 1.27 + if (intern) { 1.28 + return _member_names->find_or_add_member_name(mem_name_wref); 1.29 + } else { 1.30 + return _member_names->add_member_name(mem_name_wref); 1.31 + } 1.32 } 1.33 1.34 // -----------------------------------------------------------------------------------------------------