comparison src/share/vm/runtime/javaCalls.cpp @ 15582:063ec2920d21

made Graal runtime initialization in hosted mode lazy
author Doug Simon <doug.simon@oracle.com>
date Fri, 09 May 2014 18:46:41 +0200
parents a20be10ad437
children ad431bf0de07
comparison
equal deleted inserted replaced
15581:0dc0926cf0d8 15582:063ec2920d21
39 #include "runtime/mutexLocker.hpp" 39 #include "runtime/mutexLocker.hpp"
40 #include "runtime/signature.hpp" 40 #include "runtime/signature.hpp"
41 #include "runtime/stubRoutines.hpp" 41 #include "runtime/stubRoutines.hpp"
42 #include "runtime/thread.inline.hpp" 42 #include "runtime/thread.inline.hpp"
43 #include "graal/graalJavaAccess.hpp" 43 #include "graal/graalJavaAccess.hpp"
44 #include "graal/graalCompiler.hpp" 44 #include "graal/graalRuntime.hpp"
45 45
46 // ----------------------------------------------------- 46 // -----------------------------------------------------
47 // Implementation of JavaCallWrapper 47 // Implementation of JavaCallWrapper
48 48
49 JavaCallWrapper::JavaCallWrapper(methodHandle callee_method, JavaValue* result, TRAPS) { 49 JavaCallWrapper::JavaCallWrapper(methodHandle callee_method, JavaValue* result, TRAPS) {
411 if (nm != NULL) { 411 if (nm != NULL) {
412 if (nm->is_alive()) { 412 if (nm->is_alive()) {
413 ((JavaThread*) THREAD)->set_graal_alternate_call_target(nm->verified_entry_point()); 413 ((JavaThread*) THREAD)->set_graal_alternate_call_target(nm->verified_entry_point());
414 oop graalInstalledCode = nm->graal_installed_code(); 414 oop graalInstalledCode = nm->graal_installed_code();
415 if (graalInstalledCode != NULL && graalInstalledCode->is_a(HotSpotNmethod::klass()) && HotSpotNmethod::isExternal(graalInstalledCode)) { 415 if (graalInstalledCode != NULL && graalInstalledCode->is_a(HotSpotNmethod::klass()) && HotSpotNmethod::isExternal(graalInstalledCode)) {
416 entry_point = GraalCompiler::instance()->get_external_deopt_i2c_entry(); 416 entry_point = GraalRuntime::get_external_deopt_i2c_entry();
417 } else { 417 } else {
418 entry_point = method->adapter()->get_i2c_entry(); 418 entry_point = method->adapter()->get_i2c_entry();
419 } 419 }
420 } else { 420 } else {
421 THROW(vmSymbols::com_oracle_graal_api_code_InvalidInstalledCodeException()); 421 THROW(vmSymbols::com_oracle_graal_api_code_InvalidInstalledCodeException());