mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8146093: [sparc only] compiler/interpreter/7116216/StackOverflow.java Program terminates with signal 11, Segmentation fault. in __1cLRegisterMap2t6MpnKJavaThread_b_v_ ()
Reviewed-by: dcubed, coleenp
This commit is contained in:
parent
25f35cda7d
commit
890207217f
3 changed files with 2 additions and 15 deletions
|
@ -616,7 +616,7 @@ void TemplateInterpreterGenerator::generate_stack_overflow_check(Register Rframe
|
||||||
|
|
||||||
// compute the beginning of the protected zone minus the requested frame size
|
// compute the beginning of the protected zone minus the requested frame size
|
||||||
__ sub( Rscratch, Rscratch2, Rscratch );
|
__ 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( Rscratch, Rscratch2, Rscratch );
|
||||||
|
|
||||||
// Add in the size of the frame (which is the same as subtracting it from the
|
// Add in the size of the frame (which is the same as subtracting it from the
|
||||||
|
|
|
@ -313,18 +313,7 @@ IRT_ENTRY(void, InterpreterRuntime::throw_StackOverflowError(JavaThread* thread)
|
||||||
THROW_HANDLE(exception);
|
THROW_HANDLE(exception);
|
||||||
IRT_END
|
IRT_END
|
||||||
|
|
||||||
IRT_ENTRY(address, InterpreterRuntime::check_ReservedStackAccess_annotated_methods(JavaThread* thread))
|
IRT_ENTRY(void, InterpreterRuntime::throw_delayed_StackOverflowError(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))
|
|
||||||
Handle exception = get_preinitialized_exception(
|
Handle exception = get_preinitialized_exception(
|
||||||
SystemDictionary::StackOverflowError_klass(),
|
SystemDictionary::StackOverflowError_klass(),
|
||||||
CHECK);
|
CHECK);
|
||||||
|
|
|
@ -91,8 +91,6 @@ class InterpreterRuntime: AllStatic {
|
||||||
// Quicken instance-of and check-cast bytecodes
|
// Quicken instance-of and check-cast bytecodes
|
||||||
static void quicken_io_cc(JavaThread* thread);
|
static void quicken_io_cc(JavaThread* thread);
|
||||||
|
|
||||||
static address check_ReservedStackAccess_annotated_methods(JavaThread* thread);
|
|
||||||
|
|
||||||
// Exceptions thrown by the interpreter
|
// Exceptions thrown by the interpreter
|
||||||
static void throw_AbstractMethodError(JavaThread* thread);
|
static void throw_AbstractMethodError(JavaThread* thread);
|
||||||
static void throw_IncompatibleClassChangeError(JavaThread* thread);
|
static void throw_IncompatibleClassChangeError(JavaThread* thread);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue