Mercurial > hg > graal-jvmci-8
diff src/cpu/ppc/vm/compiledIC_ppc.cpp @ 24000:c3d0bd36ab28
8130309: Need to bailout cleanly if creation of stubs fails when codecache is out of space
Summary: Check for failed expansion of stub section in code buffer and bailout.
Reviewed-by: kvn, thartmann
author | vkempik |
---|---|
date | Thu, 21 Apr 2016 16:19:33 +0300 |
parents | 327e7269f90d |
children |
line wrap: on
line diff
--- a/src/cpu/ppc/vm/compiledIC_ppc.cpp Mon Mar 14 12:35:48 2016 +0300 +++ b/src/cpu/ppc/vm/compiledIC_ppc.cpp Thu Apr 21 16:19:33 2016 +0300 @@ -94,7 +94,7 @@ const int IC_pos_in_java_to_interp_stub = 8; #define __ _masm. -void CompiledStaticCall::emit_to_interp_stub(CodeBuffer &cbuf) { +address CompiledStaticCall::emit_to_interp_stub(CodeBuffer &cbuf) { #ifdef COMPILER2 // Get the mark within main instrs section which is set to the address of the call. address call_addr = cbuf.insts_mark(); @@ -106,8 +106,7 @@ // Start the stub. address stub = __ start_a_stub(CompiledStaticCall::to_interp_stub_size()); if (stub == NULL) { - Compile::current()->env()->record_out_of_memory_failure(); - return; + return NULL; // CodeCache is full } // For java_to_interp stubs we use R11_scratch1 as scratch register @@ -149,6 +148,7 @@ // End the stub. __ end_a_stub(); + return stub; #else ShouldNotReachHere(); #endif