210 void test_mdp_data_at(Register mdp_in, int offset, Register value,
211 Register test_value_out,
212 Label& not_equal_continue);
213
214 void record_klass_in_profile(Register receiver, Register mdp,
215 Register reg2, bool is_virtual_call);
216 void record_klass_in_profile_helper(Register receiver, Register mdp,
217 Register reg2, int start_row,
218 Label& done, bool is_virtual_call);
219
220 void update_mdp_by_offset(Register mdp_in, int offset_of_offset);
221 void update_mdp_by_offset(Register mdp_in, Register reg, int offset_of_disp);
222 void update_mdp_by_constant(Register mdp_in, int constant);
223 void update_mdp_for_ret(Register return_bci);
224
225 void profile_taken_branch(Register mdp, Register bumped_count);
226 void profile_not_taken_branch(Register mdp);
227 void profile_obj_type(Register obj, const Address& mdo_addr);
228 void profile_arguments_type(Register mdp, Register callee, Register tmp, bool is_virtual);
229 void profile_return_type(Register mdp, Register ret, Register tmp);
230 void profile_call(Register mdp);
231 void profile_final_call(Register mdp);
232 void profile_virtual_call(Register receiver, Register mdp,
233 Register scratch2,
234 bool receiver_can_be_null = false);
235 void profile_ret(Register return_bci, Register mdp);
236 void profile_null_seen(Register mdp);
237 void profile_typecheck(Register mdp, Register klass, Register scratch);
238 void profile_typecheck_failed(Register mdp);
239 void profile_switch_default(Register mdp);
240 void profile_switch_case(Register index_in_scratch, Register mdp,
241 Register scratch2);
242
243 // Debugging
244 // only if +VerifyOops && state == atos
245 void verify_oop(Register reg, TosState state = atos);
246 // only if +VerifyFPU && (state == ftos || state == dtos)
247 void verify_FPU(int stack_depth, TosState state = ftos);
248
249 #endif // !CC_INTERP
|
210 void test_mdp_data_at(Register mdp_in, int offset, Register value,
211 Register test_value_out,
212 Label& not_equal_continue);
213
214 void record_klass_in_profile(Register receiver, Register mdp,
215 Register reg2, bool is_virtual_call);
216 void record_klass_in_profile_helper(Register receiver, Register mdp,
217 Register reg2, int start_row,
218 Label& done, bool is_virtual_call);
219
220 void update_mdp_by_offset(Register mdp_in, int offset_of_offset);
221 void update_mdp_by_offset(Register mdp_in, Register reg, int offset_of_disp);
222 void update_mdp_by_constant(Register mdp_in, int constant);
223 void update_mdp_for_ret(Register return_bci);
224
225 void profile_taken_branch(Register mdp, Register bumped_count);
226 void profile_not_taken_branch(Register mdp);
227 void profile_obj_type(Register obj, const Address& mdo_addr);
228 void profile_arguments_type(Register mdp, Register callee, Register tmp, bool is_virtual);
229 void profile_return_type(Register mdp, Register ret, Register tmp);
230 void profile_parameters_type(Register mdp, Register tmp1, Register tmp2);
231 void profile_call(Register mdp);
232 void profile_final_call(Register mdp);
233 void profile_virtual_call(Register receiver, Register mdp,
234 Register scratch2,
235 bool receiver_can_be_null = false);
236 void profile_ret(Register return_bci, Register mdp);
237 void profile_null_seen(Register mdp);
238 void profile_typecheck(Register mdp, Register klass, Register scratch);
239 void profile_typecheck_failed(Register mdp);
240 void profile_switch_default(Register mdp);
241 void profile_switch_case(Register index_in_scratch, Register mdp,
242 Register scratch2);
243
244 // Debugging
245 // only if +VerifyOops && state == atos
246 void verify_oop(Register reg, TosState state = atos);
247 // only if +VerifyFPU && (state == ftos || state == dtos)
248 void verify_FPU(int stack_depth, TosState state = ftos);
249
250 #endif // !CC_INTERP
|