equal
deleted
inserted
replaced
315 Method* method() const { return _method; } |
315 Method* method() const { return _method; } |
316 int bci() const { return _bci; } |
316 int bci() const { return _bci; } |
317 intptr_t* frame_id() const { return _frame.id(); } |
317 intptr_t* frame_id() const { return _frame.id(); } |
318 address frame_pc() const { return _frame.pc(); } |
318 address frame_pc() const { return _frame.pc(); } |
319 |
319 |
|
320 javaVFrame* java_frame() { |
|
321 vframe* vf = vframe::new_vframe(&_frame, &_reg_map, _thread); |
|
322 if (vf->is_java_frame()) { |
|
323 return (javaVFrame*)vf; |
|
324 } |
|
325 return NULL; |
|
326 } |
|
327 |
320 CodeBlob* cb() const { return _frame.cb(); } |
328 CodeBlob* cb() const { return _frame.cb(); } |
321 nmethod* nm() const { |
329 nmethod* nm() const { |
322 assert( cb() != NULL && cb()->is_nmethod(), "usage"); |
330 assert( cb() != NULL && cb()->is_nmethod(), "usage"); |
323 return (nmethod*) cb(); |
331 return (nmethod*) cb(); |
324 } |
332 } |
325 |
333 |
326 // Frame type |
334 // Frame type |
327 bool is_interpreted_frame() const { return _frame.is_interpreted_frame(); } |
335 bool is_interpreted_frame() const { return _frame.is_interpreted_frame(); } |
328 bool is_entry_frame() const { return _frame.is_entry_frame(); } |
336 bool is_entry_frame() const { return _frame.is_entry_frame(); } |