< prev index next >

src/hotspot/cpu/s390/interp_masm_s390.cpp

Print this page
*** 1820,11 ***
        if (MethodData::profile_return()) {
          // We're right after the type profile for the last
          // argument. Tmp is the number of cells left in the
          // CallTypeData/VirtualCallTypeData to reach its end. Non null
          // if there's a return to profile.
!         assert(ReturnTypeEntry::static_cell_count() < TypeStackSlotEntries::per_arg_count(), "can't move past ret type");
          z_sllg(tmp, tmp, exact_log2(DataLayout::cell_size));
          z_agr(mdp, tmp);
        }
        z_stg(mdp, _z_ijava_state_neg(mdx), Z_fp);
      } else {
--- 1820,11 ---
        if (MethodData::profile_return()) {
          // We're right after the type profile for the last
          // argument. Tmp is the number of cells left in the
          // CallTypeData/VirtualCallTypeData to reach its end. Non null
          // if there's a return to profile.
!         assert(SingleTypeEntry::static_cell_count() < TypeStackSlotEntries::per_arg_count(), "can't move past ret type");
          z_sllg(tmp, tmp, exact_log2(DataLayout::cell_size));
          z_agr(mdp, tmp);
        }
        z_stg(mdp, _z_ijava_state_neg(mdx), Z_fp);
      } else {

*** 1869,11 ***
        z_brne(profile_continue);
  
        bind(do_profile);
      }
  
!     Address mdo_ret_addr(mdp, -in_bytes(ReturnTypeEntry::size()));
      profile_obj_type(ret, mdo_ret_addr, tmp);
  
      bind(profile_continue);
    }
  }
--- 1869,11 ---
        z_brne(profile_continue);
  
        bind(do_profile);
      }
  
!     Address mdo_ret_addr(mdp, -in_bytes(SingleTypeEntry::size()));
      profile_obj_type(ret, mdo_ret_addr, tmp);
  
      bind(profile_continue);
    }
  }
< prev index next >