< prev index next >
src/share/vm/classfile/defaultMethods.cpp
Print this page
rev 13105 : imported patch 8181917-refactor-ul-logstream-alt1-callsite-changes
@@ -25,10 +25,11 @@
#include "precompiled.hpp"
#include "classfile/bytecodeAssembler.hpp"
#include "classfile/defaultMethods.hpp"
#include "classfile/symbolTable.hpp"
#include "logging/log.hpp"
+#include "logging/logStream.hpp"
#include "memory/allocation.hpp"
#include "memory/metadataFactory.hpp"
#include "memory/resourceArea.hpp"
#include "runtime/handles.inline.hpp"
#include "runtime/signature.hpp"
@@ -431,15 +432,15 @@
_selected_target = qualified_methods.at(default_index);
} else if (num_defaults > 1) {
_exception_message = generate_conflicts_message(&qualified_methods,CHECK);
_exception_name = vmSymbols::java_lang_IncompatibleClassChangeError();
- if (log_is_enabled(Debug, defaultmethods)) {
- ResourceMark rm;
- outputStream* logstream = Log(defaultmethods)::debug_stream();
- _exception_message->print_value_on(logstream);
- logstream->cr();
+ LogTarget(Debug, defaultmethods) lt;
+ if (lt.is_enabled()) {
+ LogStream ls(lt);
+ _exception_message->print_value_on(&ls);
+ ls.cr();
}
}
}
bool contains_signature(Symbol* query) {
@@ -656,19 +657,20 @@
}
}
super = super->java_super();
}
- if (log_is_enabled(Debug, defaultmethods)) {
- log_debug(defaultmethods)("Slots that need filling:");
+ LogTarget(Debug, defaultmethods) lt;
+ if (lt.is_enabled()) {
+ lt.print("Slots that need filling:");
ResourceMark rm;
- outputStream* logstream = Log(defaultmethods)::debug_stream();
- streamIndentor si(logstream);
+ LogStream ls(lt);
+ streamIndentor si(&ls);
for (int i = 0; i < slots->length(); ++i) {
- logstream->indent();
- slots->at(i)->print_on(logstream);
- logstream->cr();
+ ls.indent();
+ slots->at(i)->print_on(&ls);
+ ls.cr();
}
}
return slots;
}
@@ -790,30 +792,33 @@
constantPoolHandle cp(THREAD, klass->constants());
KeepAliveRegistrar keepAlive(THREAD);
KeepAliveVisitor loadKeepAlive(&keepAlive);
loadKeepAlive.run(klass);
- if (log_is_enabled(Debug, defaultmethods)) {
+ LogTarget(Debug, defaultmethods) lt;
+ if (lt.is_enabled()) {
ResourceMark rm;
- log_debug(defaultmethods)("%s %s requires default method processing",
+ lt.print("%s %s requires default method processing",
klass->is_interface() ? "Interface" : "Class",
klass->name()->as_klass_external_name());
- PrintHierarchy printer(Log(defaultmethods)::debug_stream());
+ LogStream ls(lt);
+ PrintHierarchy printer(&ls);
printer.run(klass);
}
GrowableArray<EmptyVtableSlot*>* empty_slots =
find_empty_vtable_slots(klass, mirandas, CHECK);
for (int i = 0; i < empty_slots->length(); ++i) {
EmptyVtableSlot* slot = empty_slots->at(i);
- if (log_is_enabled(Debug, defaultmethods)) {
- outputStream* logstream = Log(defaultmethods)::debug_stream();
- streamIndentor si(logstream, 2);
- logstream->indent().print("Looking for default methods for slot ");
- slot->print_on(logstream);
- logstream->cr();
+ LogTarget(Debug, defaultmethods) lt;
+ if (lt.is_enabled()) {
+ LogStream ls(lt);
+ streamIndentor si(&ls, 2);
+ ls.indent().print("Looking for default methods for slot ");
+ slot->print_on(&ls);
+ ls.cr();
}
generate_erased_defaults(klass, empty_slots, slot, CHECK);
}
log_debug(defaultmethods)("Creating defaults and overpasses...");
create_defaults_and_exceptions(empty_slots, klass, CHECK);
@@ -909,20 +914,21 @@
if (slot->is_bound()) {
MethodFamily* method = slot->get_binding();
BytecodeBuffer buffer;
- if (log_is_enabled(Debug, defaultmethods)) {
+ LogTarget(Debug, defaultmethods) lt;
+ if (lt.is_enabled()) {
ResourceMark rm(THREAD);
- outputStream* logstream = Log(defaultmethods)::debug_stream();
- logstream->print("for slot: ");
- slot->print_on(logstream);
- logstream->cr();
+ LogStream ls(lt);
+ ls.print("for slot: ");
+ slot->print_on(&ls);
+ ls.cr();
if (method->has_target()) {
- method->print_selected(logstream, 1);
+ method->print_selected(&ls, 1);
} else if (method->throws_exception()) {
- method->print_exception(logstream, 1);
+ method->print_exception(&ls, 1);
}
}
if (method->has_target()) {
Method* selected = method->get_selected_target();
< prev index next >