--- a/hotspot/src/cpu/ppc/vm/ppc.ad Thu Jun 02 09:44:41 2016 +0200
+++ b/hotspot/src/cpu/ppc/vm/ppc.ad Fri May 13 15:22:48 2016 +0200
@@ -1432,7 +1432,7 @@
const bool method_needs_polling = do_polling() && C->is_method_compilation();
const bool method_is_frameless = false /* TODO: PPC port C->is_frameless_method()*/;
- const Register return_pc = R11;
+ const Register return_pc = R31; // Must survive C-call to enable_stack_reserved_zone().
const Register polling_page = R12;
if (!method_is_frameless) {
@@ -1456,6 +1456,10 @@
__ addi(R1_SP, R1_SP, (int)framesize);
}
+ if (StackReservedPages > 0 && C->has_reserved_stack_access()) {
+ __ reserved_stack_check(return_pc);
+ }
+
if (method_needs_polling) {
// We need to mark the code position where the load from the safepoint
// polling page was emitted as relocInfo::poll_return_type here.