hotspot/src/share/vm/runtime/deoptimization.cpp
changeset 10539 f87cedf7983c
parent 9636 363ca5579aff
child 10966 0c9ed2dfc6a2
equal deleted inserted replaced
10538:d6bf448fa3ad 10539:f87cedf7983c
   101   _number_of_frames          = number_of_frames;
   101   _number_of_frames          = number_of_frames;
   102   _frame_sizes               = frame_sizes;
   102   _frame_sizes               = frame_sizes;
   103   _frame_pcs                 = frame_pcs;
   103   _frame_pcs                 = frame_pcs;
   104   _register_block            = NEW_C_HEAP_ARRAY(intptr_t, RegisterMap::reg_count * 2);
   104   _register_block            = NEW_C_HEAP_ARRAY(intptr_t, RegisterMap::reg_count * 2);
   105   _return_type               = return_type;
   105   _return_type               = return_type;
   106   _initial_fp                = 0;
   106   _initial_info              = 0;
   107   // PD (x86 only)
   107   // PD (x86 only)
   108   _counter_temp              = 0;
   108   _counter_temp              = 0;
   109   _unpack_kind               = 0;
   109   _unpack_kind               = 0;
   110   _sender_sp_temp            = 0;
   110   _sender_sp_temp            = 0;
   111 
   111 
   484                                       caller_actual_parameters,
   484                                       caller_actual_parameters,
   485                                       number_of_frames,
   485                                       number_of_frames,
   486                                       frame_sizes,
   486                                       frame_sizes,
   487                                       frame_pcs,
   487                                       frame_pcs,
   488                                       return_type);
   488                                       return_type);
   489   // On some platforms, we need a way to pass fp to the unpacking code
   489   // On some platforms, we need a way to pass some platform dependent
   490   // so the skeletal frames come out correct.
   490   // information to the unpacking code so the skeletal frames come out
   491   info->set_initial_fp((intptr_t) array->sender().fp());
   491   // correct (initial fp value, unextended sp, ...)
       
   492   info->set_initial_info((intptr_t) array->sender().initial_deoptimization_info());
   492 
   493 
   493   if (array->frames() > 1) {
   494   if (array->frames() > 1) {
   494     if (VerifyStack && TraceDeoptimization) {
   495     if (VerifyStack && TraceDeoptimization) {
   495       tty->print_cr("Deoptimizing method containing inlining");
   496       tty->print_cr("Deoptimizing method containing inlining");
   496     }
   497     }