< prev index next >

src/hotspot/cpu/x86/abstractInterpreter_x86.cpp

Print this page

        

*** 85,94 **** --- 85,99 ---- // sender_sp is fp+8/16 (32bit/64bit) XXX intptr_t* locals = interpreter_frame->sender_sp() + max_locals - 1; #ifdef ASSERT if (caller->is_interpreted_frame()) { + if (locals >= caller->fp() + frame::interpreter_frame_initial_sp_offset) { + tty->print("method: "); method->print_on(tty); + tty->print("caller: "); caller->print_on(tty); + tty->print_cr("sender_sp: " INTPTR_FORMAT " locals: " INTPTR_FORMAT " max_locals: %d caller.fp: " INTPTR_FORMAT " caller.initial_sp: " INTPTR_FORMAT, p2i(interpreter_frame->sender_sp()), p2i(locals), max_locals, p2i(caller->fp()), p2i(caller->fp() + frame::interpreter_frame_initial_sp_offset)); + } assert(locals < caller->fp() + frame::interpreter_frame_initial_sp_offset, "bad placement"); } #endif interpreter_frame->interpreter_frame_set_locals(locals);
< prev index next >