41 #include "runtime/vframe_hp.hpp" |
41 #include "runtime/vframe_hp.hpp" |
42 #include "utilities/events.hpp" |
42 #include "utilities/events.hpp" |
43 #ifdef COMPILER2 |
43 #ifdef COMPILER2 |
44 #include "opto/runtime.hpp" |
44 #include "opto/runtime.hpp" |
45 #endif |
45 #endif |
46 |
|
47 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC |
|
48 |
46 |
49 int vframeArrayElement:: bci(void) const { return (_bci == SynchronizationEntryBCI ? 0 : _bci); } |
47 int vframeArrayElement:: bci(void) const { return (_bci == SynchronizationEntryBCI ? 0 : _bci); } |
50 |
48 |
51 void vframeArrayElement::free_monitors(JavaThread* jt) { |
49 void vframeArrayElement::free_monitors(JavaThread* jt) { |
52 if (_monitors != NULL) { |
50 if (_monitors != NULL) { |
413 method()->print_value(); |
411 method()->print_value(); |
414 Bytecodes::Code code = Bytecodes::java_code_at(method(), bcp); |
412 Bytecodes::Code code = Bytecodes::java_code_at(method(), bcp); |
415 int bci = method()->bci_from(bcp); |
413 int bci = method()->bci_from(bcp); |
416 tty->print(" - %s", Bytecodes::name(code)); |
414 tty->print(" - %s", Bytecodes::name(code)); |
417 tty->print(" @ bci %d ", bci); |
415 tty->print(" @ bci %d ", bci); |
418 tty->print_cr("sp = " PTR_FORMAT, iframe()->sp()); |
416 tty->print_cr("sp = " PTR_FORMAT, p2i(iframe()->sp())); |
419 } |
417 } |
420 #endif // PRODUCT |
418 #endif // PRODUCT |
421 |
419 |
422 // The expression stack and locals are in the resource area don't leave |
420 // The expression stack and locals are in the resource area don't leave |
423 // a dangling pointer in the vframeArray we leave around for debug |
421 // a dangling pointer in the vframeArray we leave around for debug |
603 |
601 |
604 // Printing |
602 // Printing |
605 |
603 |
606 // Note: we cannot have print_on as const, as we allocate inside the method |
604 // Note: we cannot have print_on as const, as we allocate inside the method |
607 void vframeArray::print_on_2(outputStream* st) { |
605 void vframeArray::print_on_2(outputStream* st) { |
608 st->print_cr(" - sp: " INTPTR_FORMAT, sp()); |
606 st->print_cr(" - sp: " INTPTR_FORMAT, p2i(sp())); |
609 st->print(" - thread: "); |
607 st->print(" - thread: "); |
610 Thread::current()->print(); |
608 Thread::current()->print(); |
611 st->print_cr(" - frame size: %d", frame_size()); |
609 st->print_cr(" - frame size: %d", frame_size()); |
612 for (int index = 0; index < frames() ; index++ ) { |
610 for (int index = 0; index < frames() ; index++ ) { |
613 element(index)->print(st); |
611 element(index)->print(st); |
614 } |
612 } |
615 } |
613 } |
616 |
614 |
617 void vframeArrayElement::print(outputStream* st) { |
615 void vframeArrayElement::print(outputStream* st) { |
618 st->print_cr(" - interpreter_frame -> sp: " INTPTR_FORMAT, iframe()->sp()); |
616 st->print_cr(" - interpreter_frame -> sp: " INTPTR_FORMAT, p2i(iframe()->sp())); |
619 } |
617 } |
620 |
618 |
621 void vframeArray::print_value_on(outputStream* st) const { |
619 void vframeArray::print_value_on(outputStream* st) const { |
622 st->print_cr("vframeArray [%d] ", frames()); |
620 st->print_cr("vframeArray [%d] ", frames()); |
623 } |
621 } |