< prev index next >
src/share/vm/jvmci/jvmciEnv.cpp
Print this page
rev 9941 : 8147432: JVMCI should report bailouts in PrintCompilation output
*** 46,65 ****
#include "runtime/sharedRuntime.hpp"
#include "utilities/dtrace.hpp"
#include "jvmci/jvmciRuntime.hpp"
#include "jvmci/jvmciJavaClasses.hpp"
! JVMCIEnv::JVMCIEnv(CompileTask* task, int system_dictionary_modification_counter) {
! _task = task;
! _system_dictionary_modification_counter = system_dictionary_modification_counter;
! {
// Get Jvmti capabilities under lock to get consistent values.
MutexLocker mu(JvmtiThreadState_lock);
_jvmti_can_hotswap_or_post_breakpoint = JvmtiExport::can_hotswap_or_post_breakpoint();
_jvmti_can_access_local_variables = JvmtiExport::can_access_local_variables();
_jvmti_can_post_on_exceptions = JvmtiExport::can_post_on_exceptions();
- }
}
// ------------------------------------------------------------------
// Note: the logic of this method should mirror the logic of
// constantPoolOopDesc::verify_constant_pool_resolve.
--- 46,66 ----
#include "runtime/sharedRuntime.hpp"
#include "utilities/dtrace.hpp"
#include "jvmci/jvmciRuntime.hpp"
#include "jvmci/jvmciJavaClasses.hpp"
! JVMCIEnv::JVMCIEnv(CompileTask* task, int system_dictionary_modification_counter):
! _task(task),
! _system_dictionary_modification_counter(system_dictionary_modification_counter),
! _failure_reason(NULL),
! _retryable(true)
! {
// Get Jvmti capabilities under lock to get consistent values.
MutexLocker mu(JvmtiThreadState_lock);
_jvmti_can_hotswap_or_post_breakpoint = JvmtiExport::can_hotswap_or_post_breakpoint();
_jvmti_can_access_local_variables = JvmtiExport::can_access_local_variables();
_jvmti_can_post_on_exceptions = JvmtiExport::can_post_on_exceptions();
}
// ------------------------------------------------------------------
// Note: the logic of this method should mirror the logic of
// constantPoolOopDesc::verify_constant_pool_resolve.
*** 532,542 ****
nm->set_has_wide_vectors(has_wide_vector);
// Record successful registration.
// (Put nm into the task handle *before* publishing to the Java heap.)
CompileTask* task = env == NULL ? NULL : env->task();
! if (task != NULL) task->set_code(nm);
if (installed_code->is_a(HotSpotNmethod::klass()) && HotSpotNmethod::isDefault(installed_code())) {
if (entry_bci == InvocationEntryBci) {
if (TieredCompilation) {
// If there is an old version we're done with it
--- 533,545 ----
nm->set_has_wide_vectors(has_wide_vector);
// Record successful registration.
// (Put nm into the task handle *before* publishing to the Java heap.)
CompileTask* task = env == NULL ? NULL : env->task();
! if (task != NULL) {
! task->set_code(nm);
! }
if (installed_code->is_a(HotSpotNmethod::klass()) && HotSpotNmethod::isDefault(installed_code())) {
if (entry_bci == InvocationEntryBci) {
if (TieredCompilation) {
// If there is an old version we're done with it
< prev index next >