1 /* |
1 /* |
2 * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
2811 MORE_STACK(1); |
2811 MORE_STACK(1); |
2812 pc = METHOD->code_base() + continuation_bci; |
2812 pc = METHOD->code_base() + continuation_bci; |
2813 if (TraceExceptions) { |
2813 if (TraceExceptions) { |
2814 ttyLocker ttyl; |
2814 ttyLocker ttyl; |
2815 ResourceMark rm; |
2815 ResourceMark rm; |
2816 tty->print_cr("Exception <%s> (" INTPTR_FORMAT ")", except_oop->print_value_string(), (void*)except_oop()); |
2816 tty->print_cr("Exception <%s> (" INTPTR_FORMAT ")", except_oop->print_value_string(), p2i(except_oop())); |
2817 tty->print_cr(" thrown in interpreter method <%s>", METHOD->print_value_string()); |
2817 tty->print_cr(" thrown in interpreter method <%s>", METHOD->print_value_string()); |
2818 tty->print_cr(" at bci %d, continuing at %d for thread " INTPTR_FORMAT, |
2818 tty->print_cr(" at bci %d, continuing at %d for thread " INTPTR_FORMAT, |
2819 istate->bcp() - (intptr_t)METHOD->code_base(), |
2819 (int)(istate->bcp() - METHOD->code_base()), |
2820 continuation_bci, THREAD); |
2820 (int)continuation_bci, p2i(THREAD)); |
2821 } |
2821 } |
2822 // for AbortVMOnException flag |
2822 // for AbortVMOnException flag |
2823 NOT_PRODUCT(Exceptions::debug_check_abort(except_oop)); |
2823 NOT_PRODUCT(Exceptions::debug_check_abort(except_oop)); |
2824 |
2824 |
2825 // Update profiling data. |
2825 // Update profiling data. |
2827 goto run; |
2827 goto run; |
2828 } |
2828 } |
2829 if (TraceExceptions) { |
2829 if (TraceExceptions) { |
2830 ttyLocker ttyl; |
2830 ttyLocker ttyl; |
2831 ResourceMark rm; |
2831 ResourceMark rm; |
2832 tty->print_cr("Exception <%s> (" INTPTR_FORMAT ")", except_oop->print_value_string(), (void*)except_oop()); |
2832 tty->print_cr("Exception <%s> (" INTPTR_FORMAT ")", except_oop->print_value_string(), p2i(except_oop())); |
2833 tty->print_cr(" thrown in interpreter method <%s>", METHOD->print_value_string()); |
2833 tty->print_cr(" thrown in interpreter method <%s>", METHOD->print_value_string()); |
2834 tty->print_cr(" at bci %d, unwinding for thread " INTPTR_FORMAT, |
2834 tty->print_cr(" at bci %d, unwinding for thread " INTPTR_FORMAT, |
2835 istate->bcp() - (intptr_t)METHOD->code_base(), |
2835 (int)(istate->bcp() - METHOD->code_base()), |
2836 THREAD); |
2836 p2i(THREAD)); |
2837 } |
2837 } |
2838 // for AbortVMOnException flag |
2838 // for AbortVMOnException flag |
2839 NOT_PRODUCT(Exceptions::debug_check_abort(except_oop)); |
2839 NOT_PRODUCT(Exceptions::debug_check_abort(except_oop)); |
2840 // No handler in this activation, unwind and try again |
2840 // No handler in this activation, unwind and try again |
2841 THREAD->set_pending_exception(except_oop(), NULL, 0); |
2841 THREAD->set_pending_exception(except_oop(), NULL, 0); |
3430 tty->print_cr("result_to_call._callee_entry_point: " INTPTR_FORMAT, (uintptr_t) this->_result._to_call._callee_entry_point); |
3430 tty->print_cr("result_to_call._callee_entry_point: " INTPTR_FORMAT, (uintptr_t) this->_result._to_call._callee_entry_point); |
3431 tty->print_cr("result_to_call._bcp_advance: %d ", this->_result._to_call._bcp_advance); |
3431 tty->print_cr("result_to_call._bcp_advance: %d ", this->_result._to_call._bcp_advance); |
3432 tty->print_cr("osr._osr_buf: " INTPTR_FORMAT, (uintptr_t) this->_result._osr._osr_buf); |
3432 tty->print_cr("osr._osr_buf: " INTPTR_FORMAT, (uintptr_t) this->_result._osr._osr_buf); |
3433 tty->print_cr("osr._osr_entry: " INTPTR_FORMAT, (uintptr_t) this->_result._osr._osr_entry); |
3433 tty->print_cr("osr._osr_entry: " INTPTR_FORMAT, (uintptr_t) this->_result._osr._osr_entry); |
3434 tty->print_cr("prev_link: " INTPTR_FORMAT, (uintptr_t) this->_prev_link); |
3434 tty->print_cr("prev_link: " INTPTR_FORMAT, (uintptr_t) this->_prev_link); |
3435 tty->print_cr("native_mirror: " INTPTR_FORMAT, (void*) this->_oop_temp); |
3435 tty->print_cr("native_mirror: " INTPTR_FORMAT, (uintptr_t) this->_oop_temp); |
3436 tty->print_cr("stack_base: " INTPTR_FORMAT, (uintptr_t) this->_stack_base); |
3436 tty->print_cr("stack_base: " INTPTR_FORMAT, (uintptr_t) this->_stack_base); |
3437 tty->print_cr("stack_limit: " INTPTR_FORMAT, (uintptr_t) this->_stack_limit); |
3437 tty->print_cr("stack_limit: " INTPTR_FORMAT, (uintptr_t) this->_stack_limit); |
3438 tty->print_cr("monitor_base: " INTPTR_FORMAT, (uintptr_t) this->_monitor_base); |
3438 tty->print_cr("monitor_base: " INTPTR_FORMAT, (uintptr_t) this->_monitor_base); |
3439 #ifdef SPARC |
3439 #ifdef SPARC |
3440 tty->print_cr("last_Java_pc: " INTPTR_FORMAT, (uintptr_t) this->_last_Java_pc); |
3440 tty->print_cr("last_Java_pc: " INTPTR_FORMAT, (uintptr_t) this->_last_Java_pc); |