diff --git a/src/hotspot/share/ci/ciEnv.cpp b/src/hotspot/share/ci/ciEnv.cpp index ba339eefca0..df38193b8ec 100644 --- a/src/hotspot/share/ci/ciEnv.cpp +++ b/src/hotspot/share/ci/ciEnv.cpp @@ -44,6 +44,7 @@ #include "gc/shared/collectedHeap.inline.hpp" #include "interpreter/linkResolver.hpp" #include "jfr/jfrEvents.hpp" +#include "logging/log.hpp" #include "memory/allocation.inline.hpp" #include "memory/oopFactory.hpp" #include "memory/resourceArea.hpp" @@ -1076,25 +1077,23 @@ void ciEnv::register_method(ciMethod* target, old->make_not_used(); } } - if (TraceNMethodInstalls) { + + LogTarget(Info, nmethod, install) lt; + if (lt.is_enabled()) { ResourceMark rm; char *method_name = method->name_and_sig_as_C_string(); - ttyLocker ttyl; - tty->print_cr("Installing method (%d) %s ", - task()->comp_level(), - method_name); + lt.print("Installing method (%d) %s ", + task()->comp_level(), method_name); } // Allow the code to be executed method->set_code(method, nm); } else { - if (TraceNMethodInstalls) { + LogTarget(Info, nmethod, install) lt; + if (lt.is_enabled()) { ResourceMark rm; char *method_name = method->name_and_sig_as_C_string(); - ttyLocker ttyl; - tty->print_cr("Installing osr method (%d) %s @ %d", - task()->comp_level(), - method_name, - entry_bci); + lt.print("Installing osr method (%d) %s @ %d", + task()->comp_level(), method_name, entry_bci); } method->method_holder()->add_osr_nmethod(nm); } diff --git a/src/hotspot/share/jvmci/jvmciRuntime.cpp b/src/hotspot/share/jvmci/jvmciRuntime.cpp index 89eb9247647..571dc916a48 100644 --- a/src/hotspot/share/jvmci/jvmciRuntime.cpp +++ b/src/hotspot/share/jvmci/jvmciRuntime.cpp @@ -1543,25 +1543,23 @@ JVMCI::CodeInstallResult JVMCIRuntime::register_method(JVMCIEnv* JVMCIENV, old->make_not_entrant(); } } - if (TraceNMethodInstalls) { + + LogTarget(Info, nmethod, install) lt; + if (lt.is_enabled()) { ResourceMark rm; char *method_name = method->name_and_sig_as_C_string(); - ttyLocker ttyl; - tty->print_cr("Installing method (%d) %s [entry point: %p]", - comp_level, - method_name, nm->entry_point()); + lt.print("Installing method (%d) %s [entry point: %p]", + comp_level, method_name, nm->entry_point()); } // Allow the code to be executed method->set_code(method, nm); } else { - if (TraceNMethodInstalls ) { + LogTarget(Info, nmethod, install) lt; + if (lt.is_enabled()) { ResourceMark rm; char *method_name = method->name_and_sig_as_C_string(); - ttyLocker ttyl; - tty->print_cr("Installing osr method (%d) %s @ %d", - comp_level, - method_name, - entry_bci); + lt.print("Installing osr method (%d) %s @ %d", + comp_level, method_name, entry_bci); } InstanceKlass::cast(method->method_holder())->add_osr_nmethod(nm); } diff --git a/src/hotspot/share/logging/logTag.hpp b/src/hotspot/share/logging/logTag.hpp index c36d913ba07..ce646c80e0f 100644 --- a/src/hotspot/share/logging/logTag.hpp +++ b/src/hotspot/share/logging/logTag.hpp @@ -83,6 +83,7 @@ LOG_TAG(iklass) \ LOG_TAG(init) \ LOG_TAG(inlining) \ + LOG_TAG(install) \ LOG_TAG(interpreter) \ LOG_TAG(itables) \ LOG_TAG(jfr) \ diff --git a/src/hotspot/share/runtime/arguments.cpp b/src/hotspot/share/runtime/arguments.cpp index 0f3af6b41eb..ce5fe638832 100644 --- a/src/hotspot/share/runtime/arguments.cpp +++ b/src/hotspot/share/runtime/arguments.cpp @@ -604,6 +604,7 @@ static AliasedLoggingFlag const aliased_logging_flags[] = { { "TraceSafepointCleanupTime", LogLevel::Info, true, LOG_TAGS(safepoint, cleanup) }, { "TraceJVMTIObjectTagging", LogLevel::Debug, true, LOG_TAGS(jvmti, objecttagging) }, { "TraceRedefineClasses", LogLevel::Info, false, LOG_TAGS(redefine, class) }, + { "TraceNMethodInstalls", LogLevel::Info, true, LOG_TAGS(nmethod, install) }, { NULL, LogLevel::Off, false, LOG_TAGS(_NO_TAG) } };