src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File open Cdiff src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp

src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp

Print this page

        

*** 2573,2589 **** assert(data->is_CounterData(), "need CounterData for calls"); assert(op->mdo()->is_single_cpu(), "mdo must be allocated"); Register mdo = op->mdo()->as_register(); __ mov_metadata(mdo, md->constant_encoding()); Address counter_addr(mdo, md->byte_offset_of_slot(data, CounterData::count_offset())); - Bytecodes::Code bc = method->java_code_at_bci(bci); - const bool callee_is_static = callee->is_loaded() && callee->is_static(); // Perform additional virtual call profiling for invokevirtual and // invokeinterface bytecodes ! if ((bc == Bytecodes::_invokevirtual || bc == Bytecodes::_invokeinterface) && ! !callee_is_static && // required for optimized MH invokes ! C1ProfileVirtualCalls) { assert(op->recv()->is_single_cpu(), "recv must be allocated"); Register recv = op->recv()->as_register(); assert_different_registers(mdo, recv); assert(data->is_VirtualCallData(), "need VirtualCallData for virtual calls"); ciKlass* known_klass = op->known_holder(); --- 2573,2585 ---- assert(data->is_CounterData(), "need CounterData for calls"); assert(op->mdo()->is_single_cpu(), "mdo must be allocated"); Register mdo = op->mdo()->as_register(); __ mov_metadata(mdo, md->constant_encoding()); Address counter_addr(mdo, md->byte_offset_of_slot(data, CounterData::count_offset())); // Perform additional virtual call profiling for invokevirtual and // invokeinterface bytecodes ! if (op->should_profile_receiver_type()) { assert(op->recv()->is_single_cpu(), "recv must be allocated"); Register recv = op->recv()->as_register(); assert_different_registers(mdo, recv); assert(data->is_VirtualCallData(), "need VirtualCallData for virtual calls"); ciKlass* known_klass = op->known_holder();
src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File