228 void set_mdp_flag_at(Register mdp_in, int flag_constant);
229 void test_mdp_data_at(Register mdp_in, int offset, Register value,
230 Register test_value_out,
231 Label& not_equal_continue);
232
233 void record_klass_in_profile(Register receiver, Register mdp,
234 Register reg2, bool is_virtual_call);
235 void record_klass_in_profile_helper(Register receiver, Register mdp,
236 Register reg2, int start_row,
237 Label& done, bool is_virtual_call);
238 void record_item_in_profile_helper(Register item, Register mdp,
239 Register reg2, int start_row, Label& done, int total_rows,
240 OffsetFunction item_offset_fn, OffsetFunction item_count_offset_fn,
241 int non_profiled_offset);
242
243 void update_mdp_by_offset(Register mdp_in, int offset_of_offset);
244 void update_mdp_by_offset(Register mdp_in, Register reg, int offset_of_disp);
245 void update_mdp_by_constant(Register mdp_in, int constant);
246 void update_mdp_for_ret(Register return_bci);
247
248 void profile_taken_branch(Register mdp, Register bumped_count);
249 void profile_not_taken_branch(Register mdp);
250 void profile_call(Register mdp);
251 void profile_final_call(Register mdp);
252 void profile_virtual_call(Register receiver, Register mdp,
253 Register scratch2,
254 bool receiver_can_be_null = false);
255 void profile_called_method(Register method, Register mdp, Register reg2) NOT_JVMCI_RETURN;
256 void profile_ret(Register return_bci, Register mdp);
257 void profile_null_seen(Register mdp);
258 void profile_typecheck(Register mdp, Register klass, Register scratch);
259 void profile_typecheck_failed(Register mdp);
260 void profile_switch_default(Register mdp);
261 void profile_switch_case(Register index_in_scratch, Register mdp,
262 Register scratch2);
263
264 void profile_obj_type(Register obj, const Address& mdo_addr);
265 void profile_arguments_type(Register mdp, Register callee, Register tmp, bool is_virtual);
266 void profile_return_type(Register mdp, Register ret, Register tmp);
267 void profile_parameters_type(Register mdp, Register tmp1, Register tmp2);
|
228 void set_mdp_flag_at(Register mdp_in, int flag_constant);
229 void test_mdp_data_at(Register mdp_in, int offset, Register value,
230 Register test_value_out,
231 Label& not_equal_continue);
232
233 void record_klass_in_profile(Register receiver, Register mdp,
234 Register reg2, bool is_virtual_call);
235 void record_klass_in_profile_helper(Register receiver, Register mdp,
236 Register reg2, int start_row,
237 Label& done, bool is_virtual_call);
238 void record_item_in_profile_helper(Register item, Register mdp,
239 Register reg2, int start_row, Label& done, int total_rows,
240 OffsetFunction item_offset_fn, OffsetFunction item_count_offset_fn,
241 int non_profiled_offset);
242
243 void update_mdp_by_offset(Register mdp_in, int offset_of_offset);
244 void update_mdp_by_offset(Register mdp_in, Register reg, int offset_of_disp);
245 void update_mdp_by_constant(Register mdp_in, int constant);
246 void update_mdp_for_ret(Register return_bci);
247
248 // narrow int return value
249 void narrow(Register result);
250
251 void profile_taken_branch(Register mdp, Register bumped_count);
252 void profile_not_taken_branch(Register mdp);
253 void profile_call(Register mdp);
254 void profile_final_call(Register mdp);
255 void profile_virtual_call(Register receiver, Register mdp,
256 Register scratch2,
257 bool receiver_can_be_null = false);
258 void profile_called_method(Register method, Register mdp, Register reg2) NOT_JVMCI_RETURN;
259 void profile_ret(Register return_bci, Register mdp);
260 void profile_null_seen(Register mdp);
261 void profile_typecheck(Register mdp, Register klass, Register scratch);
262 void profile_typecheck_failed(Register mdp);
263 void profile_switch_default(Register mdp);
264 void profile_switch_case(Register index_in_scratch, Register mdp,
265 Register scratch2);
266
267 void profile_obj_type(Register obj, const Address& mdo_addr);
268 void profile_arguments_type(Register mdp, Register callee, Register tmp, bool is_virtual);
269 void profile_return_type(Register mdp, Register ret, Register tmp);
270 void profile_parameters_type(Register mdp, Register tmp1, Register tmp2);
|