src/share/vm/prims/methodHandles.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8042235_8u40 Cdiff src/share/vm/prims/methodHandles.hpp

src/share/vm/prims/methodHandles.hpp

Print this page
rev 6917 : 8042235: redefining method used by multiple MethodHandles crashes VM
Summary: note all MemberNames created on internal list for adjusting method entries.
Reviewed-by: sspitsyn, dcubed, lfoltan

*** 1,7 **** /* ! * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2008, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 234,254 **** class MemberNameTable : public GrowableArray<jweak> { public: MemberNameTable(int methods_cnt); ~MemberNameTable(); ! void add_member_name(int index, jweak mem_name_ref); ! oop get_member_name(int index); #if INCLUDE_JVMTI - public: // RedefineClasses() API support: // If a MemberName refers to old_method then update it // to refer to new_method. void adjust_method_entries(Method** old_methods, Method** new_methods, int methods_length, bool *trace_name_printed); - private: - oop find_member_name_by_method(Method* old_method); #endif // INCLUDE_JVMTI }; #endif // SHARE_VM_PRIMS_METHODHANDLES_HPP --- 234,250 ---- class MemberNameTable : public GrowableArray<jweak> { public: MemberNameTable(int methods_cnt); ~MemberNameTable(); ! void add_member_name(jweak mem_name_ref); #if INCLUDE_JVMTI // RedefineClasses() API support: // If a MemberName refers to old_method then update it // to refer to new_method. void adjust_method_entries(Method** old_methods, Method** new_methods, int methods_length, bool *trace_name_printed); #endif // INCLUDE_JVMTI }; #endif // SHARE_VM_PRIMS_METHODHANDLES_HPP
src/share/vm/prims/methodHandles.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File