--- a/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Fri Dec 11 16:57:08 2015 +0100
+++ b/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Mon Jan 11 17:11:57 2016 -0800
@@ -1068,8 +1068,8 @@
// touch it again. (It was touched as (tmp-pagesize) but then tmp
// was post-decremented.) Skip this address by starting at i=1, and
// touch a few more pages below. N.B. It is important to touch all
- // the way down to and including i=StackShadowPages.
- for (int i = 1; i < StackShadowPages; i++) {
+ // the way down including all pages in the shadow zone.
+ for (int i = 1; i < ((int)JavaThread::stack_shadow_zone_size() / os::vm_page_size()); i++) {
// this could be any sized move but this is can be a debugging crumb
// so the bigger the better.
movptr(Address(tmp, (-i*os::vm_page_size())), size );
@@ -2534,11 +2534,9 @@
// Only interpreter should have to clear fp
reset_last_Java_frame(java_thread, true, false);
-#ifndef CC_INTERP
// C++ interp handles this in the interpreter
check_and_handle_popframe(java_thread);
check_and_handle_earlyret(java_thread);
-#endif /* CC_INTERP */
if (check_exceptions) {
// check for pending exceptions (java_thread is set upon return)