< prev index next >

src/share/vm/code/compiledIC.cpp

Print this page

        

*** 455,465 **** // static_bound: The call can be static bound. If it isn't also optimized, the property // wasn't provable at time of compilation. An optimized call will have any necessary // null check, while a static_bound won't. A static_bound (but not optimized) must // therefore use the unverified entry point. void CompiledIC::compute_monomorphic_entry(const methodHandle& method, ! KlassHandle receiver_klass, bool is_optimized, bool static_bound, bool caller_is_nmethod, CompiledICInfo& info, TRAPS) { --- 455,465 ---- // static_bound: The call can be static bound. If it isn't also optimized, the property // wasn't provable at time of compilation. An optimized call will have any necessary // null check, while a static_bound won't. A static_bound (but not optimized) must // therefore use the unverified entry point. void CompiledIC::compute_monomorphic_entry(const methodHandle& method, ! Klass* receiver_klass, bool is_optimized, bool static_bound, bool caller_is_nmethod, CompiledICInfo& info, TRAPS) {
*** 492,502 **** } } bool far_c2a = entry != NULL && caller_is_nmethod && method_code->is_far_code(); if (entry != NULL && !far_c2a) { // Call to near compiled code (nmethod or aot). ! info.set_compiled_entry(entry, (static_bound || is_optimized) ? NULL : receiver_klass(), is_optimized); } else { if (is_optimized) { if (far_c2a) { // Call to aot code from nmethod. info.set_aot_entry(entry, method()); --- 492,502 ---- } } bool far_c2a = entry != NULL && caller_is_nmethod && method_code->is_far_code(); if (entry != NULL && !far_c2a) { // Call to near compiled code (nmethod or aot). ! info.set_compiled_entry(entry, (static_bound || is_optimized) ? NULL : receiver_klass, is_optimized); } else { if (is_optimized) { if (far_c2a) { // Call to aot code from nmethod. info.set_aot_entry(entry, method());
*** 505,515 **** info.set_interpreter_entry(method()->get_c2i_entry(), method()); } } else { // Use icholder entry assert(method_code == NULL || method_code->is_compiled(), "must be compiled"); ! CompiledICHolder* holder = new CompiledICHolder(method(), receiver_klass()); info.set_icholder_entry(method()->get_c2i_unverified_entry(), holder); } } assert(info.is_optimized() == is_optimized, "must agree"); } --- 505,515 ---- info.set_interpreter_entry(method()->get_c2i_entry(), method()); } } else { // Use icholder entry assert(method_code == NULL || method_code->is_compiled(), "must be compiled"); ! CompiledICHolder* holder = new CompiledICHolder(method(), receiver_klass); info.set_icholder_entry(method()->get_c2i_unverified_entry(), holder); } } assert(info.is_optimized() == is_optimized, "must agree"); }
< prev index next >