src/share/vm/runtime/deoptimization.cpp

changeset 3130
5432047c7db7
parent 2901
3d2ab563047a
child 3238
b20d64f83668
     1.1 --- a/src/share/vm/runtime/deoptimization.cpp	Wed Sep 07 12:58:42 2011 -0700
     1.2 +++ b/src/share/vm/runtime/deoptimization.cpp	Thu Sep 08 10:12:25 2011 +0200
     1.3 @@ -103,7 +103,7 @@
     1.4    _frame_pcs                 = frame_pcs;
     1.5    _register_block            = NEW_C_HEAP_ARRAY(intptr_t, RegisterMap::reg_count * 2);
     1.6    _return_type               = return_type;
     1.7 -  _initial_fp                = 0;
     1.8 +  _initial_info              = 0;
     1.9    // PD (x86 only)
    1.10    _counter_temp              = 0;
    1.11    _unpack_kind               = 0;
    1.12 @@ -486,9 +486,10 @@
    1.13                                        frame_sizes,
    1.14                                        frame_pcs,
    1.15                                        return_type);
    1.16 -  // On some platforms, we need a way to pass fp to the unpacking code
    1.17 -  // so the skeletal frames come out correct.
    1.18 -  info->set_initial_fp((intptr_t) array->sender().fp());
    1.19 +  // On some platforms, we need a way to pass some platform dependent
    1.20 +  // information to the unpacking code so the skeletal frames come out
    1.21 +  // correct (initial fp value, unextended sp, ...)
    1.22 +  info->set_initial_info((intptr_t) array->sender().initial_deoptimization_info());
    1.23  
    1.24    if (array->frames() > 1) {
    1.25      if (VerifyStack && TraceDeoptimization) {

mercurial