File tree Expand file tree Collapse file tree 2 files changed +11
-2
lines changed Expand file tree Collapse file tree 2 files changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -449,6 +449,9 @@ void ArrayCopyStub::emit_code(LIR_Assembler* ce) {
449
449
__ extsw (R7_ARG5, length ()->as_register ());
450
450
451
451
ce->emit_static_call_stub ();
452
+ if (ce->compilation ()->bailed_out ()) {
453
+ return ; // CodeCache is full
454
+ }
452
455
453
456
bool success = ce->emit_trampoline_stub_for_call (SharedRuntime::get_resolve_static_call_stub ());
454
457
if (!success) { return ; }
Original file line number Diff line number Diff line change @@ -2162,7 +2162,10 @@ int HandlerImpl::emit_exception_handler(CodeBuffer &cbuf) {
2162
2162
MacroAssembler _masm(&cbuf);
2163
2163
2164
2164
address base = __ start_a_stub(size_exception_handler());
2165
- if (base == NULL) return 0; // CodeBuffer::expand failed
2165
+ if (base == NULL) {
2166
+ ciEnv::current()->record_failure("CodeCache is full");
2167
+ return 0; // CodeBuffer::expand failed
2168
+ }
2166
2169
2167
2170
int offset = __ offset();
2168
2171
__ b64_patchable((address)OptoRuntime::exception_blob()->content_begin(),
@@ -2179,7 +2182,10 @@ int HandlerImpl::emit_deopt_handler(CodeBuffer& cbuf) {
2179
2182
MacroAssembler _masm(&cbuf);
2180
2183
2181
2184
address base = __ start_a_stub(size_deopt_handler());
2182
- if (base == NULL) return 0; // CodeBuffer::expand failed
2185
+ if (base == NULL) {
2186
+ ciEnv::current()->record_failure("CodeCache is full");
2187
+ return 0; // CodeBuffer::expand failed
2188
+ }
2183
2189
2184
2190
int offset = __ offset();
2185
2191
__ bl64_patchable((address)SharedRuntime::deopt_blob()->unpack(),
You can’t perform that action at this time.
0 commit comments