src/hotspot/share/opto/graphKit.cpp
changeset 58273 08a5148e7c4e
parent 58061 fafba5cf3546
child 58679 9c3209ff7550
child 58961 5d462d4b7a8b
equal deleted inserted replaced
58272:e27564cd10e3 58273:08a5148e7c4e
  2274   const TypeFunc* tf    = TypeFunc::make(dest_method);
  2274   const TypeFunc* tf    = TypeFunc::make(dest_method);
  2275   int             nargs = tf->domain()->cnt() - TypeFunc::Parms;
  2275   int             nargs = tf->domain()->cnt() - TypeFunc::Parms;
  2276   int skip = Bytecodes::has_receiver(bc) ? 1 : 0;
  2276   int skip = Bytecodes::has_receiver(bc) ? 1 : 0;
  2277   for (int j = skip, i = 0; j < nargs && i < TypeProfileArgsLimit; j++) {
  2277   for (int j = skip, i = 0; j < nargs && i < TypeProfileArgsLimit; j++) {
  2278     const Type *targ = tf->domain()->field_at(j + TypeFunc::Parms);
  2278     const Type *targ = tf->domain()->field_at(j + TypeFunc::Parms);
  2279     if (targ->basic_type() == T_OBJECT || targ->basic_type() == T_ARRAY) {
  2279     if (is_reference_type(targ->basic_type())) {
  2280       ProfilePtrKind ptr_kind = ProfileMaybeNull;
  2280       ProfilePtrKind ptr_kind = ProfileMaybeNull;
  2281       ciKlass* better_type = NULL;
  2281       ciKlass* better_type = NULL;
  2282       if (method()->argument_profiled_type(bci(), i, better_type, ptr_kind)) {
  2282       if (method()->argument_profiled_type(bci(), i, better_type, ptr_kind)) {
  2283         record_profile_for_speculation(argument(j), better_type, ptr_kind);
  2283         record_profile_for_speculation(argument(j), better_type, ptr_kind);
  2284       }
  2284       }