src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp
changeset 47698 d4bfafe600d0
parent 47683 f433d49aceb4
child 47881 0ce0ac68ace7
equal deleted inserted replaced
47697:2e54e9324e1c 47698:d4bfafe600d0
  3480   assert(data->is_CounterData(), "need CounterData for calls");
  3480   assert(data->is_CounterData(), "need CounterData for calls");
  3481   assert(op->mdo()->is_single_cpu(),  "mdo must be allocated");
  3481   assert(op->mdo()->is_single_cpu(),  "mdo must be allocated");
  3482   Register mdo  = op->mdo()->as_register();
  3482   Register mdo  = op->mdo()->as_register();
  3483   __ mov_metadata(mdo, md->constant_encoding());
  3483   __ mov_metadata(mdo, md->constant_encoding());
  3484   Address counter_addr(mdo, md->byte_offset_of_slot(data, CounterData::count_offset()));
  3484   Address counter_addr(mdo, md->byte_offset_of_slot(data, CounterData::count_offset()));
  3485   Bytecodes::Code bc = method->java_code_at_bci(bci);
       
  3486   const bool callee_is_static = callee->is_loaded() && callee->is_static();
       
  3487   // Perform additional virtual call profiling for invokevirtual and
  3485   // Perform additional virtual call profiling for invokevirtual and
  3488   // invokeinterface bytecodes
  3486   // invokeinterface bytecodes
  3489   if ((bc == Bytecodes::_invokevirtual || bc == Bytecodes::_invokeinterface) &&
  3487   if (op->should_profile_receiver_type()) {
  3490       !callee_is_static &&  // required for optimized MH invokes
       
  3491       C1ProfileVirtualCalls) {
       
  3492     assert(op->recv()->is_single_cpu(), "recv must be allocated");
  3488     assert(op->recv()->is_single_cpu(), "recv must be allocated");
  3493     Register recv = op->recv()->as_register();
  3489     Register recv = op->recv()->as_register();
  3494     assert_different_registers(mdo, recv);
  3490     assert_different_registers(mdo, recv);
  3495     assert(data->is_VirtualCallData(), "need VirtualCallData for virtual calls");
  3491     assert(data->is_VirtualCallData(), "need VirtualCallData for virtual calls");
  3496     ciKlass* known_klass = op->known_holder();
  3492     ciKlass* known_klass = op->known_holder();