< prev index next > src/hotspot/share/classfile/classPrinter.cpp
Print this page
#include "classfile/classLoaderDataGraph.hpp"
#include "classfile/classPrinter.hpp"
#include "memory/iterator.hpp"
#include "memory/resourceArea.hpp"
#include "oops/instanceKlass.hpp"
! #include "oops/klass.hpp"
#include "oops/method.hpp"
#include "oops/symbol.hpp"
#include "utilities/ostream.hpp"
class ClassPrinter::KlassPrintClosure : public LockedClassesDo {
#include "classfile/classLoaderDataGraph.hpp"
#include "classfile/classPrinter.hpp"
#include "memory/iterator.hpp"
#include "memory/resourceArea.hpp"
#include "oops/instanceKlass.hpp"
! #include "oops/klass.inline.hpp"
#include "oops/method.hpp"
#include "oops/symbol.hpp"
#include "utilities/ostream.hpp"
class ClassPrinter::KlassPrintClosure : public LockedClassesDo {
_method_name_pattern(method_name_pattern),
_method_signature_pattern(method_signature_pattern),
_always_print_class_name(always_print_class_name),
_flags(flags), _st(st), _num(0), _has_printed_methods(false)
{
+ _flags |= (PRINT_PROFILE);
if (has_mode(_flags, PRINT_METHOD_HANDLE)) {
_flags |= (PRINT_METHOD_NAME | PRINT_BYTECODE);
}
if (has_mode(_flags, PRINT_DYNAMIC)) {
_flags |= (PRINT_METHOD_NAME | PRINT_BYTECODE);
static bool match(const char* pattern, Symbol* sym) {
return (pattern == nullptr || sym->is_star_match(pattern));
}
void print_klass_name(InstanceKlass* ik) {
! _st->print("[%3d] " INTPTR_FORMAT " class %s ", _num++, p2i(ik), ik->name()->as_C_string());
ik->class_loader_data()->print_value_on(_st);
_st->cr();
}
void print_instance_klass(InstanceKlass* ik) {
static bool match(const char* pattern, Symbol* sym) {
return (pattern == nullptr || sym->is_star_match(pattern));
}
void print_klass_name(InstanceKlass* ik) {
! _st->print("[%3d] " INTPTR_FORMAT " class %s mirror: " INTPTR_FORMAT " ", _num++,
+ p2i(ik), ik->name()->as_C_string(), p2i(ik->java_mirror()));
ik->class_loader_data()->print_value_on(_st);
_st->cr();
}
void print_instance_klass(InstanceKlass* ik) {
< prev index next >