diff src/cpu/x86/vm/templateInterpreter_x86_64.cpp @ 4042:b20d64f83668

7090904: JSR 292: JRuby junit test crashes in PSScavengeRootsClosure::do_oop Reviewed-by: kvn, never, jrose
author twisti
date Mon, 24 Oct 2011 07:53:17 -0700
parents d83ac25d0304
children dca455dea3a7 069ab3f976d3
line wrap: on
line diff
--- a/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Sun Oct 23 23:57:39 2011 -0700
+++ b/src/cpu/x86/vm/templateInterpreter_x86_64.cpp	Mon Oct 24 07:53:17 2011 -0700
@@ -1622,6 +1622,12 @@
     // sender_sp is fp+16 XXX
     intptr_t* locals = interpreter_frame->sender_sp() + max_locals - 1;
 
+#ifdef ASSERT
+    if (caller->is_interpreted_frame()) {
+      assert(locals < caller->fp() + frame::interpreter_frame_initial_sp_offset, "bad placement");
+    }
+#endif
+
     interpreter_frame->interpreter_frame_set_locals(locals);
     BasicObjectLock* montop = interpreter_frame->interpreter_frame_monitor_begin();
     BasicObjectLock* monbot = montop - moncount;