< prev index next >

src/hotspot/cpu/x86/abstractInterpreter_x86.cpp

Print this page
rev 50307 : [mq]: cont

@@ -85,10 +85,15 @@
   // 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("locals: %p max_locals: %d caller.fp: %p caller.initial_sp: %p", locals, max_locals, caller->fp(), 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 >