diff src/cpu/sparc/vm/c1_CodeStubs_sparc.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 55fb97c4c58d
children 9b69cec6d01b
line wrap: on
line diff
--- a/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp	Mon Mar 14 12:35:48 2016 +0300
+++ b/src/cpu/sparc/vm/c1_CodeStubs_sparc.cpp	Thu Apr 21 16:19:33 2016 +0300
@@ -431,6 +431,9 @@
   __ mov(length()->as_register(),  O4);
 
   ce->emit_static_call_stub();
+  if (ce->compilation()->bailed_out()) {
+    return; // CodeCache is full
+  }
 
   __ call(SharedRuntime::get_resolve_static_call_stub(), relocInfo::static_call_type);
   __ delayed()->nop();