8146093: [sparc only] compiler/interpreter/7116216/StackOverflow.java Program terminates with signal 11, Segmentation fault. in __1cLRegisterMap2t6MpnKJavaThread_b_v_ ()
authorfparain
Fri, 08 Apr 2016 00:38:00 -0700
changeset 37435 e7aff5e5eff9
parent 37433 f8fd0bcc60af
child 37436 1d902bc02bc2
8146093: [sparc only] compiler/interpreter/7116216/StackOverflow.java Program terminates with signal 11, Segmentation fault. in __1cLRegisterMap2t6MpnKJavaThread_b_v_ () Reviewed-by: dcubed, coleenp
hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp
hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
hotspot/src/share/vm/interpreter/interpreterRuntime.hpp
--- a/hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp	Thu Apr 07 15:34:21 2016 -0700
+++ b/hotspot/src/cpu/sparc/vm/templateInterpreterGenerator_sparc.cpp	Fri Apr 08 00:38:00 2016 -0700
@@ -616,7 +616,7 @@
 
   // compute the beginning of the protected zone minus the requested frame size
   __ sub( Rscratch, Rscratch2,   Rscratch );
-  __ set( JavaThread::stack_red_zone_size() + JavaThread::stack_yellow_zone_size(), Rscratch2 );
+  __ set(MAX2(JavaThread::stack_shadow_zone_size(), JavaThread::stack_guard_zone_size()), Rscratch2 );
   __ add( Rscratch, Rscratch2,   Rscratch );
 
   // Add in the size of the frame (which is the same as subtracting it from the
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp	Thu Apr 07 15:34:21 2016 -0700
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.cpp	Fri Apr 08 00:38:00 2016 -0700
@@ -313,18 +313,7 @@
   THROW_HANDLE(exception);
 IRT_END
 
-IRT_ENTRY(address, InterpreterRuntime::check_ReservedStackAccess_annotated_methods(JavaThread* thread))
-  frame fr = thread->last_frame();
-  assert(fr.is_java_frame(), "Must be a Java frame");
-  frame activation = SharedRuntime::look_for_reserved_stack_annotated_method(thread, fr);
-  if (activation.sp() != NULL) {
-    thread->disable_stack_reserved_zone();
-    thread->set_reserved_stack_activation((address)activation.unextended_sp());
-  }
-  return (address)activation.sp();
-IRT_END
-
- IRT_ENTRY(void, InterpreterRuntime::throw_delayed_StackOverflowError(JavaThread* thread))
+IRT_ENTRY(void, InterpreterRuntime::throw_delayed_StackOverflowError(JavaThread* thread))
   Handle exception = get_preinitialized_exception(
                                  SystemDictionary::StackOverflowError_klass(),
                                  CHECK);
--- a/hotspot/src/share/vm/interpreter/interpreterRuntime.hpp	Thu Apr 07 15:34:21 2016 -0700
+++ b/hotspot/src/share/vm/interpreter/interpreterRuntime.hpp	Fri Apr 08 00:38:00 2016 -0700
@@ -91,8 +91,6 @@
   // Quicken instance-of and check-cast bytecodes
   static void    quicken_io_cc(JavaThread* thread);
 
-  static address check_ReservedStackAccess_annotated_methods(JavaThread* thread);
-
   // Exceptions thrown by the interpreter
   static void    throw_AbstractMethodError(JavaThread* thread);
   static void    throw_IncompatibleClassChangeError(JavaThread* thread);