src/hotspot/cpu/s390/sharedRuntime_s390.cpp
changeset 58959 b7b170ba3ba9
parent 58554 8c3c39710a08
equal deleted inserted replaced
58958:7bfe7df764a2 58959:b7b170ba3ba9
    30 #include "code/vtableStubs.hpp"
    30 #include "code/vtableStubs.hpp"
    31 #include "gc/shared/gcLocker.hpp"
    31 #include "gc/shared/gcLocker.hpp"
    32 #include "interpreter/interpreter.hpp"
    32 #include "interpreter/interpreter.hpp"
    33 #include "interpreter/interp_masm.hpp"
    33 #include "interpreter/interp_masm.hpp"
    34 #include "memory/resourceArea.hpp"
    34 #include "memory/resourceArea.hpp"
       
    35 #include "nativeInst_s390.hpp"
    35 #include "oops/compiledICHolder.hpp"
    36 #include "oops/compiledICHolder.hpp"
    36 #include "oops/klass.inline.hpp"
    37 #include "oops/klass.inline.hpp"
    37 #include "registerSaver_s390.hpp"
    38 #include "registerSaver_s390.hpp"
    38 #include "runtime/safepointMechanism.hpp"
    39 #include "runtime/safepointMechanism.hpp"
    39 #include "runtime/sharedRuntime.hpp"
    40 #include "runtime/sharedRuntime.hpp"
  1519                                                 int compile_id,
  1520                                                 int compile_id,
  1520                                                 BasicType *in_sig_bt,
  1521                                                 BasicType *in_sig_bt,
  1521                                                 VMRegPair *in_regs,
  1522                                                 VMRegPair *in_regs,
  1522                                                 BasicType ret_type,
  1523                                                 BasicType ret_type,
  1523                                                 address critical_entry) {
  1524                                                 address critical_entry) {
  1524 #ifdef COMPILER2
       
  1525   int total_in_args = method->size_of_parameters();
  1525   int total_in_args = method->size_of_parameters();
  1526   if (method->is_method_handle_intrinsic()) {
  1526   if (method->is_method_handle_intrinsic()) {
  1527     vmIntrinsics::ID iid = method->intrinsic_id();
  1527     vmIntrinsics::ID iid = method->intrinsic_id();
  1528     intptr_t start = (intptr_t) __ pc();
  1528     intptr_t start = (intptr_t) __ pc();
  1529     int vep_offset = ((intptr_t) __ pc()) - start;
  1529     int vep_offset = ((intptr_t) __ pc()) - start;
  2399   if (is_critical_native) {
  2399   if (is_critical_native) {
  2400     nm->set_lazy_critical_native(true);
  2400     nm->set_lazy_critical_native(true);
  2401   }
  2401   }
  2402 
  2402 
  2403   return nm;
  2403   return nm;
  2404 #else
       
  2405   ShouldNotReachHere();
       
  2406   return NULL;
       
  2407 #endif // COMPILER2
       
  2408 }
  2404 }
  2409 
  2405 
  2410 static address gen_c2i_adapter(MacroAssembler  *masm,
  2406 static address gen_c2i_adapter(MacroAssembler  *masm,
  2411                                int total_args_passed,
  2407                                int total_args_passed,
  2412                                int comp_args_on_stack,
  2408                                int comp_args_on_stack,
  2878   // The return_pc has been stored in the frame of the deoptee and
  2874   // The return_pc has been stored in the frame of the deoptee and
  2879   // will replace the address of the deopt_handler in the call
  2875   // will replace the address of the deopt_handler in the call
  2880   // to Deoptimization::fetch_unroll_info below.
  2876   // to Deoptimization::fetch_unroll_info below.
  2881   // The (int) cast is necessary, because -((unsigned int)14)
  2877   // The (int) cast is necessary, because -((unsigned int)14)
  2882   // is an unsigned int.
  2878   // is an unsigned int.
  2883   __ add2reg(Z_R14, -(int)HandlerImpl::size_deopt_handler());
  2879   __ add2reg(Z_R14, -(int)NativeCall::max_instruction_size());
  2884 
  2880 
  2885   const Register   exec_mode_reg = Z_tmp_1;
  2881   const Register   exec_mode_reg = Z_tmp_1;
  2886 
  2882 
  2887   // stack: (deoptee, caller of deoptee, ...)
  2883   // stack: (deoptee, caller of deoptee, ...)
  2888 
  2884