src/share/vm/prims/methodHandles.cpp

changeset 5848
ac9cb1d5a202
parent 5732
b2e698d2276c
child 5999
d95eca175eff
     1.1 --- a/src/share/vm/prims/methodHandles.cpp	Sun Oct 06 16:13:50 2013 +0200
     1.2 +++ b/src/share/vm/prims/methodHandles.cpp	Mon Oct 07 12:20:28 2013 -0400
     1.3 @@ -187,12 +187,34 @@
     1.4      receiver_limit = m->method_holder();
     1.5      assert(receiver_limit->verify_itable_index(vmindex), "");
     1.6      flags |= IS_METHOD | (JVM_REF_invokeInterface << REFERENCE_KIND_SHIFT);
     1.7 +    if (TraceInvokeDynamic) {
     1.8 +      ResourceMark rm;
     1.9 +      tty->print_cr("memberName: invokeinterface method_holder::method: %s, receiver: %s, itableindex: %d, access_flags:",
    1.10 +            Method::name_and_sig_as_C_string(receiver_limit(), m->name(), m->signature()),
    1.11 +            receiver_limit()->internal_name(), vmindex);
    1.12 +       m->access_flags().print_on(tty);
    1.13 +       if (!m->is_abstract()) {
    1.14 +         tty->print("default");
    1.15 +       }
    1.16 +       tty->cr();
    1.17 +    }
    1.18      break;
    1.19  
    1.20    case CallInfo::vtable_call:
    1.21      vmindex = info.vtable_index();
    1.22      flags |= IS_METHOD | (JVM_REF_invokeVirtual << REFERENCE_KIND_SHIFT);
    1.23      assert(receiver_limit->is_subtype_of(m->method_holder()), "virtual call must be type-safe");
    1.24 +    if (TraceInvokeDynamic) {
    1.25 +      ResourceMark rm;
    1.26 +      tty->print_cr("memberName: invokevirtual method_holder::method: %s, receiver: %s, vtableindex: %d, access_flags:",
    1.27 +            Method::name_and_sig_as_C_string(receiver_limit(), m->name(), m->signature()),
    1.28 +            receiver_limit()->internal_name(), vmindex);
    1.29 +       m->access_flags().print_on(tty);
    1.30 +       if (m->is_default_method()) {
    1.31 +         tty->print("default");
    1.32 +       }
    1.33 +       tty->cr();
    1.34 +    }
    1.35      break;
    1.36  
    1.37    case CallInfo::direct_call:

mercurial