src/share/vm/ci/ciMethod.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 8073191-work Cdiff src/share/vm/ci/ciMethod.cpp

src/share/vm/ci/ciMethod.cpp

Print this page

        

*** 787,797 **** KlassHandle h_recv (THREAD, exact_receiver->get_Klass()); KlassHandle h_resolved (THREAD, holder()->get_Klass()); Symbol* h_name = name()->get_symbol(); Symbol* h_signature = signature()->get_symbol(); ! LinkInfo link_info(h_resolved, h_name, h_signature, caller_klass, check_access); methodHandle m; // Only do exact lookup if receiver klass has been linked. Otherwise, // the vtable has not been setup, and the LinkResolver will fail. if (h_recv->is_array_klass() || --- 787,797 ---- KlassHandle h_recv (THREAD, exact_receiver->get_Klass()); KlassHandle h_resolved (THREAD, holder()->get_Klass()); Symbol* h_name = name()->get_symbol(); Symbol* h_signature = signature()->get_symbol(); ! LinkInfo link_info(h_resolved, h_name, h_signature, caller_klass, NULL, check_access); methodHandle m; // Only do exact lookup if receiver klass has been linked. Otherwise, // the vtable has not been setup, and the LinkResolver will fail. if (h_recv->is_array_klass() ||
*** 841,851 **** KlassHandle caller_klass (THREAD, caller->get_Klass()); KlassHandle h_recv (THREAD, receiver->get_Klass()); Symbol* h_name = name()->get_symbol(); Symbol* h_signature = signature()->get_symbol(); ! LinkInfo link_info(h_recv, h_name, h_signature, caller_klass); vtable_index = LinkResolver::resolve_virtual_vtable_index(h_recv, link_info); if (vtable_index == Method::nonvirtual_vtable_index) { // A statically bound method. Return "no such index". vtable_index = Method::invalid_vtable_index; } --- 841,851 ---- KlassHandle caller_klass (THREAD, caller->get_Klass()); KlassHandle h_recv (THREAD, receiver->get_Klass()); Symbol* h_name = name()->get_symbol(); Symbol* h_signature = signature()->get_symbol(); ! LinkInfo link_info(h_recv, h_name, h_signature, caller_klass, NULL); vtable_index = LinkResolver::resolve_virtual_vtable_index(h_recv, link_info); if (vtable_index == Method::nonvirtual_vtable_index) { // A statically bound method. Return "no such index". vtable_index = Method::invalid_vtable_index; }
src/share/vm/ci/ciMethod.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File