--- a/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Wed Dec 23 21:09:50 2015 -0800
+++ b/hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp Wed Dec 23 20:19:42 2015 -1000
@@ -33,6 +33,7 @@
// This file specializes the assember with interpreter-specific macros
+typedef ByteSize (*OffsetFunction)(uint);
class InterpreterMacroAssembler: public MacroAssembler {
#ifndef CC_INTERP
@@ -248,6 +249,10 @@
void record_klass_in_profile_helper(Register receiver, Register mdp,
Register reg2, int start_row,
Label& done, bool is_virtual_call);
+ void record_item_in_profile_helper(Register item, Register mdp,
+ Register reg2, int start_row, Label& done, int total_rows,
+ OffsetFunction item_offset_fn, OffsetFunction item_count_offset_fn,
+ int non_profiled_offset);
void update_mdp_by_offset(Register mdp_in, int offset_of_offset);
void update_mdp_by_offset(Register mdp_in, Register reg, int offset_of_disp);
@@ -261,6 +266,7 @@
void profile_virtual_call(Register receiver, Register mdp,
Register scratch2,
bool receiver_can_be_null = false);
+ void profile_called_method(Register method, Register mdp, Register reg2) NOT_JVMCI_RETURN;
void profile_ret(Register return_bci, Register mdp);
void profile_null_seen(Register mdp);
void profile_typecheck(Register mdp, Register klass, Register scratch);