void translate_from(const ProfileData* data) { if (has_arguments()) { args()->translate_type_data_from(data->as_CallTypeData()->args()); } if (has_return()) { ret()->translate_type_data_from(data->as_CallTypeData()->ret()); } }
// Copy & translate from oop based VirtualCallData virtual void translate_from(const ProfileData* data) { rtd_super()->translate_receiver_data_from(data); if (has_arguments()) { args()->translate_type_data_from(data->as_VirtualCallTypeData()->args()); } if (has_return()) { ret()->translate_type_data_from(data->as_VirtualCallTypeData()->ret()); } }
void ciCallTypeData::print_data_on(outputStream* st, const char* extra) const { print_shared(st, "ciCallTypeData", extra); if (has_arguments()) { tab(st, true); st->print_cr("argument types"); args()->print_data_on(st); } if (has_return()) { tab(st, true); st->print_cr("return type"); ret()->print_data_on(st); } }
ciKlass* valid_argument_type(int i) const { assert(has_arguments(), "no arg type profiling data"); return args()->valid_type(i); }
intptr_t argument_type(int i) const { assert(has_arguments(), "no arg type profiling data"); return args()->type(i); }