hotspot/src/share/vm/runtime/rframe.cpp
changeset 31521 f57b2ce43484
parent 25715 d5a8dbdc5150
child 31851 ec2f9350c499
equal deleted inserted replaced
31520:4a6cbcae9f46 31521:f57b2ce43484
    50 
    50 
    51 InterpretedRFrame::InterpretedRFrame(frame fr, JavaThread* thread, RFrame*const callee)
    51 InterpretedRFrame::InterpretedRFrame(frame fr, JavaThread* thread, RFrame*const callee)
    52 : RFrame(fr, thread, callee) {
    52 : RFrame(fr, thread, callee) {
    53   RegisterMap map(thread, false);
    53   RegisterMap map(thread, false);
    54   _vf     = javaVFrame::cast(vframe::new_vframe(&_fr, &map, thread));
    54   _vf     = javaVFrame::cast(vframe::new_vframe(&_fr, &map, thread));
    55   _method = methodHandle(thread, _vf->method());
    55   _method = _vf->method();
    56   assert(   _vf->is_interpreted_frame(), "must be interpreted");
    56   assert(   _vf->is_interpreted_frame(), "must be interpreted");
    57   init();
    57   init();
    58 }
    58 }
    59 
    59 
    60 InterpretedRFrame::InterpretedRFrame(frame fr, JavaThread* thread, methodHandle m)
    60 InterpretedRFrame::InterpretedRFrame(frame fr, JavaThread* thread, Method* m)
    61 : RFrame(fr, thread, NULL) {
    61 : RFrame(fr, thread, NULL) {
    62   RegisterMap map(thread, false);
    62   RegisterMap map(thread, false);
    63   _vf     = javaVFrame::cast(vframe::new_vframe(&_fr, &map, thread));
    63   _vf     = javaVFrame::cast(vframe::new_vframe(&_fr, &map, thread));
    64   _method = m;
    64   _method = m;
    65 
    65 
   138   vframe* vf = vframe::new_vframe(&_fr, &map, thread());
   138   vframe* vf = vframe::new_vframe(&_fr, &map, thread());
   139   assert(vf->is_compiled_frame(), "must be compiled");
   139   assert(vf->is_compiled_frame(), "must be compiled");
   140   _nm = compiledVFrame::cast(vf)->code();
   140   _nm = compiledVFrame::cast(vf)->code();
   141   vf = vf->top();
   141   vf = vf->top();
   142   _vf = javaVFrame::cast(vf);
   142   _vf = javaVFrame::cast(vf);
   143   _method = methodHandle(thread(), CodeCache::find_nmethod(_fr.pc())->method());
   143   _method = CodeCache::find_nmethod(_fr.pc())->method();
   144   assert(_method(), "should have found a method");
   144   assert(_method, "should have found a method");
   145 #ifndef PRODUCT
   145 #ifndef PRODUCT
   146   _invocations = _method->compiled_invocation_count();
   146   _invocations = _method->compiled_invocation_count();
   147 #endif
   147 #endif
   148 }
   148 }
   149 
   149