< prev index next >

src/share/vm/interpreter/linkResolver.cpp

Print this page

        

*** 122,132 **** // This path is unusual, mostly used by the '-Xcomp' stress test mode. // Note: with several active threads, the must_be_compiled may be true // while can_be_compiled is false; remove assert // assert(CompilationPolicy::can_be_compiled(selected_method), "cannot compile"); ! if (THREAD->is_Compiler_thread()) { // don't force compilation, resolve was on behalf of compiler return; } if (selected_method->method_holder()->is_not_initialized()) { // 'is_not_initialized' means not only '!is_initialized', but also that --- 122,132 ---- // This path is unusual, mostly used by the '-Xcomp' stress test mode. // Note: with several active threads, the must_be_compiled may be true // while can_be_compiled is false; remove assert // assert(CompilationPolicy::can_be_compiled(selected_method), "cannot compile"); ! if (!THREAD->can_call_java()) { // don't force compilation, resolve was on behalf of compiler return; } if (selected_method->method_holder()->is_not_initialized()) { // 'is_not_initialized' means not only '!is_initialized', but also that
*** 448,458 **** result->print_on(tty); } } return result; } else if (iid == vmIntrinsics::_invokeGeneric ! && !THREAD->is_Compiler_thread() && appendix_result_or_null != NULL) { // This is a method with type-checking semantics. // We will ask Java code to spin an adapter method for it. if (!MethodHandles::enabled()) { // Make sure the Java part of the runtime has been booted up. --- 448,458 ---- result->print_on(tty); } } return result; } else if (iid == vmIntrinsics::_invokeGeneric ! && THREAD->can_call_java() && appendix_result_or_null != NULL) { // This is a method with type-checking semantics. // We will ask Java code to spin an adapter method for it. if (!MethodHandles::enabled()) { // Make sure the Java part of the runtime has been booted up.
< prev index next >