[9] RFR(S): 8130309: need to bailout cleanly if CompiledStaticCall::emit_to_interp_stub fails when codecache is out of space (original) (raw)

Tobias Hartmann tobias.hartmann at oracle.com
Mon Jul 27 14:36:11 UTC 2015


On 27.07.2015 13:31, Roland Westrelin wrote:

Here is the new webrev: http://cr.openjdk.java.net/~thartmann/8130309/webrev.02/

CompiledStaticCall::emittointerpstub() is compiler independent code. Shouldn’t the call be ciEnv::current()->recordfailure() even if the method is only called from c2 (for now?)? (which is what Dean suggested as well I think)

Right, I missed that and got confused because the method is guarded by "#ifdef COMPILER2" on Sparc.

Actually, why not have emittointerpstub() returns an error and bail out from compilation in the caller?

I changed 'emit_to_interpr_stub()' accordingly and now bail out from the caller if it fails. I also had to adapt the ppc code and the 'emit_trampoline_stub()' method on aarch64.

I left the special handling of -XX:TraceJumps in the Sparc code since JDK-8132344 will fix it.

Here is the new webrev: http://cr.openjdk.java.net/~thartmann/8130309/webrev.03/

Thanks, Tobias

Roland.



More information about the hotspot-compiler-dev mailing list