diff src/share/vm/runtime/deoptimization.cpp @ 3931:5432047c7db7

7087445: Improve platform independence of JSR292 shared code Summary: changes necessary for some JSR292 ports Reviewed-by: jrose, dholmes
author bdelsart
date Thu, 08 Sep 2011 10:12:25 +0200
parents 3d2ab563047a
children b20d64f83668
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.cpp	Wed Sep 07 12:58:42 2011 -0700
+++ b/src/share/vm/runtime/deoptimization.cpp	Thu Sep 08 10:12:25 2011 +0200
@@ -103,7 +103,7 @@
   _frame_pcs                 = frame_pcs;
   _register_block            = NEW_C_HEAP_ARRAY(intptr_t, RegisterMap::reg_count * 2);
   _return_type               = return_type;
-  _initial_fp                = 0;
+  _initial_info              = 0;
   // PD (x86 only)
   _counter_temp              = 0;
   _unpack_kind               = 0;
@@ -486,9 +486,10 @@
                                       frame_sizes,
                                       frame_pcs,
                                       return_type);
-  // On some platforms, we need a way to pass fp to the unpacking code
-  // so the skeletal frames come out correct.
-  info->set_initial_fp((intptr_t) array->sender().fp());
+  // On some platforms, we need a way to pass some platform dependent
+  // information to the unpacking code so the skeletal frames come out
+  // correct (initial fp value, unextended sp, ...)
+  info->set_initial_info((intptr_t) array->sender().initial_deoptimization_info());
 
   if (array->frames() > 1) {
     if (VerifyStack && TraceDeoptimization) {