comparison src/share/vm/graal/graalCodeInstaller.cpp @ 19321:98592ae4b1fa

only record method dependencies if JVMTI hotswapping or breakpointing is enabled don't verify dependencies if the SystemDictionary was not updated during compilation
author Doug Simon <doug.simon@oracle.com>
date Thu, 12 Feb 2015 16:54:12 +0100
parents a0a760b0fb5f
children dd8989d5547f
comparison
equal deleted inserted replaced
19320:49605c649beb 19321:98592ae4b1fa
460 } else { 460 } else {
461 nmethod* nm = NULL; 461 nmethod* nm = NULL;
462 methodHandle method = getMethodFromHotSpotMethod(HotSpotCompiledNmethod::method(compiled_code)); 462 methodHandle method = getMethodFromHotSpotMethod(HotSpotCompiledNmethod::method(compiled_code));
463 jint entry_bci = HotSpotCompiledNmethod::entryBCI(compiled_code); 463 jint entry_bci = HotSpotCompiledNmethod::entryBCI(compiled_code);
464 jint id = HotSpotCompiledNmethod::id(compiled_code); 464 jint id = HotSpotCompiledNmethod::id(compiled_code);
465 CompileTask* task = (CompileTask*) (address) HotSpotCompiledNmethod::ctask(compiled_code); 465 GraalEnv* env = (GraalEnv*) (address) HotSpotCompiledNmethod::graalEnv(compiled_code);
466 if (id == -1) { 466 if (id == -1) {
467 // Make sure a valid compile_id is associated with every compile 467 // Make sure a valid compile_id is associated with every compile
468 id = CompileBroker::assign_compile_id_unlocked(Thread::current(), method, entry_bci); 468 id = CompileBroker::assign_compile_id_unlocked(Thread::current(), method, entry_bci);
469 } 469 }
470 result = GraalEnv::register_method(method, nm, entry_bci, &_offsets, _custom_stack_area_offset, &buffer, stack_slots, _debug_recorder->_oopmaps, &_exception_handler_table, 470 result = GraalEnv::register_method(method, nm, entry_bci, &_offsets, _custom_stack_area_offset, &buffer, stack_slots, _debug_recorder->_oopmaps, &_exception_handler_table,
471 GraalCompiler::instance(), _debug_recorder, _dependencies, task, id, false, installed_code, speculation_log); 471 GraalCompiler::instance(), _debug_recorder, _dependencies, env, id, false, installed_code, speculation_log);
472 cb = nm; 472 cb = nm;
473 } 473 }
474 474
475 if (cb != NULL) { 475 if (cb != NULL) {
476 // Make sure the pre-calculated constants section size was correct. 476 // Make sure the pre-calculated constants section size was correct.