comparison src/share/vm/runtime/frame.cpp @ 14412:e2722a66aba7

Merge
author kvn
date Thu, 05 Sep 2013 11:04:39 -0700
parents 94c202aa2646 4b2838704fd5
children 2b8e28fdf503
comparison
equal deleted inserted replaced
14411:bdd155477289 14412:e2722a66aba7
21 * questions. 21 * questions.
22 * 22 *
23 */ 23 */
24 24
25 #include "precompiled.hpp" 25 #include "precompiled.hpp"
26 #include "compiler/abstractCompiler.hpp"
26 #include "compiler/disassembler.hpp" 27 #include "compiler/disassembler.hpp"
27 #include "gc_interface/collectedHeap.inline.hpp" 28 #include "gc_interface/collectedHeap.inline.hpp"
28 #include "interpreter/interpreter.hpp" 29 #include "interpreter/interpreter.hpp"
29 #include "interpreter/oopMapCache.hpp" 30 #include "interpreter/oopMapCache.hpp"
30 #include "memory/resourceArea.hpp" 31 #include "memory/resourceArea.hpp"
557 NOT_PRODUCT(address begin = pc()-40;) 558 NOT_PRODUCT(address begin = pc()-40;)
558 NOT_PRODUCT(address end = NULL;) 559 NOT_PRODUCT(address end = NULL;)
559 560
560 st->print("%s frame (sp=" INTPTR_FORMAT " unextended sp=" INTPTR_FORMAT, print_name(), sp(), unextended_sp()); 561 st->print("%s frame (sp=" INTPTR_FORMAT " unextended sp=" INTPTR_FORMAT, print_name(), sp(), unextended_sp());
561 if (sp() != NULL) 562 if (sp() != NULL)
562 st->print(", fp=" INTPTR_FORMAT ", pc=" INTPTR_FORMAT, fp(), pc()); 563 st->print(", fp=" INTPTR_FORMAT ", real_fp=" INTPTR_FORMAT ", pc=" INTPTR_FORMAT, fp(), real_fp(), pc());
563 564
564 if (StubRoutines::contains(pc())) { 565 if (StubRoutines::contains(pc())) {
565 st->print_cr(")"); 566 st->print_cr(")");
566 st->print("("); 567 st->print("(");
567 StubCodeDesc* desc = StubCodeDesc::desc_for(pc()); 568 StubCodeDesc* desc = StubCodeDesc::desc_for(pc());
718 st->print("v ~StubRoutines::" PTR_FORMAT, pc()); 719 st->print("v ~StubRoutines::" PTR_FORMAT, pc());
719 } 720 }
720 } else if (_cb->is_buffer_blob()) { 721 } else if (_cb->is_buffer_blob()) {
721 st->print("v ~BufferBlob::%s", ((BufferBlob *)_cb)->name()); 722 st->print("v ~BufferBlob::%s", ((BufferBlob *)_cb)->name());
722 } else if (_cb->is_nmethod()) { 723 } else if (_cb->is_nmethod()) {
723 Method* m = ((nmethod *)_cb)->method(); 724 nmethod* nm = (nmethod*)_cb;
725 Method* m = nm->method();
724 if (m != NULL) { 726 if (m != NULL) {
725 m->name_and_sig_as_C_string(buf, buflen); 727 m->name_and_sig_as_C_string(buf, buflen);
726 st->print("J %s @ " PTR_FORMAT " [" PTR_FORMAT "+" SIZE_FORMAT "]", 728 st->print("J %d%s %s %s (%d bytes) @ " PTR_FORMAT " [" PTR_FORMAT "+0x%x]",
727 buf, _pc, _cb->code_begin(), _pc - _cb->code_begin()); 729 nm->compile_id(), (nm->is_osr_method() ? "%" : ""),
730 ((nm->compiler() != NULL) ? nm->compiler()->name() : ""),
731 buf, m->code_size(), _pc, _cb->code_begin(), _pc - _cb->code_begin());
728 } else { 732 } else {
729 st->print("J " PTR_FORMAT, pc()); 733 st->print("J " PTR_FORMAT, pc());
730 } 734 }
731 } else if (_cb->is_runtime_stub()) { 735 } else if (_cb->is_runtime_stub()) {
732 st->print("v ~RuntimeStub::%s", ((RuntimeStub *)_cb)->name()); 736 st->print("v ~RuntimeStub::%s", ((RuntimeStub *)_cb)->name());