OpenJDK / aarch32-port / jdk8u / hotspot
changeset 7702:6c3f66ac3800
8152304: aarch32: fix for compiler/7116216/StackOverflow regression test
Reviewed-by: enevill
Contributed-by: snazarkin@azul.com
author | enevill |
---|---|
date | Tue, 22 Mar 2016 16:27:25 +0000 |
parents | 205725ab0f1c |
children | b5648d88fc8e |
files | src/cpu/aarch32/vm/stubGenerator_aarch32.cpp src/cpu/aarch32/vm/templateInterpreter_aarch32.cpp |
diffstat | 2 files changed, 5 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/aarch32/vm/stubGenerator_aarch32.cpp Tue Mar 22 16:15:46 2016 +0000 +++ b/src/cpu/aarch32/vm/stubGenerator_aarch32.cpp Tue Mar 22 16:27:25 2016 +0000 @@ -1287,6 +1287,7 @@ } __ mov(c_rarg0, rthread); BLOCK_COMMENT("call runtime_entry"); + __ align_stack(); __ mov(rscratch1, runtime_entry); __ bl(rscratch1);
--- a/src/cpu/aarch32/vm/templateInterpreter_aarch32.cpp Tue Mar 22 16:15:46 2016 +0000 +++ b/src/cpu/aarch32/vm/templateInterpreter_aarch32.cpp Tue Mar 22 16:27:25 2016 +0000 @@ -508,6 +508,10 @@ __ cmp(sp, r0); __ b(after_frame_check, Assembler::HI); + // Remove the incoming args, peeling the machine SP back to where it + // was in the caller. + __ mov(sp, r4); + // Note: the restored frame is not necessarily interpreted. // Use the shared runtime version of the StackOverflowError. assert(StubRoutines::throw_StackOverflowError_entry() != NULL, "stub not yet generated");