hotspot/src/share/vm/opto/doCall.cpp
changeset 24002 4e6a72032a99
parent 23846 490ace57944d
child 24424 2658d7834c6e
equal deleted inserted replaced
24001:d0eea05381dd 24002:4e6a72032a99
   101     if (receiver_count >= 0) {
   101     if (receiver_count >= 0) {
   102       log->print(" receiver='%d' receiver_count='%d'", rid, receiver_count);
   102       log->print(" receiver='%d' receiver_count='%d'", rid, receiver_count);
   103       if (profile.has_receiver(1)) {
   103       if (profile.has_receiver(1)) {
   104         log->print(" receiver2='%d' receiver2_count='%d'", r2id, profile.receiver_count(1));
   104         log->print(" receiver2='%d' receiver2_count='%d'", r2id, profile.receiver_count(1));
   105       }
   105       }
       
   106     }
       
   107     if (callee->is_method_handle_intrinsic()) {
       
   108       log->print(" method_handle_intrinsic='1'");
   106     }
   109     }
   107     log->end_elem();
   110     log->end_elem();
   108   }
   111   }
   109 
   112 
   110   // Special case the handling of certain common, profitable library
   113   // Special case the handling of certain common, profitable library
   294   // There was no special inlining tactic, or it bailed out.
   297   // There was no special inlining tactic, or it bailed out.
   295   // Use a more generic tactic, like a simple call.
   298   // Use a more generic tactic, like a simple call.
   296   if (call_does_dispatch) {
   299   if (call_does_dispatch) {
   297     const char* msg = "virtual call";
   300     const char* msg = "virtual call";
   298     if (PrintInlining) print_inlining(callee, jvms->depth() - 1, jvms->bci(), msg);
   301     if (PrintInlining) print_inlining(callee, jvms->depth() - 1, jvms->bci(), msg);
       
   302     C->log_inline_failure(msg);
   299     return CallGenerator::for_virtual_call(callee, vtable_index);
   303     return CallGenerator::for_virtual_call(callee, vtable_index);
   300   } else {
   304   } else {
   301     // Class Hierarchy Analysis or Type Profile reveals a unique target,
   305     // Class Hierarchy Analysis or Type Profile reveals a unique target,
   302     // or it is a static or special call.
   306     // or it is a static or special call.
   303     return CallGenerator::for_direct_call(callee, should_delay_inlining(callee, jvms));
   307     return CallGenerator::for_direct_call(callee, should_delay_inlining(callee, jvms));