8272094: compiler/codecache/TestStressCodeBuffers.java crashes with "failed to allocate space for trampoline"
Reviewed-by: shade, kvn
This commit is contained in:
parent
8c977050aa
commit
0948c097a8
src/hotspot/cpu/aarch64
test/hotspot/jtreg
@ -15423,7 +15423,11 @@ instruct clearArray_imm_reg(immL cnt, iRegP_R10 base, iRegL_R11 temp, Universe d
|
||||
format %{ "ClearArray $cnt, $base" %}
|
||||
|
||||
ins_encode %{
|
||||
__ zero_words($base$$Register, (uint64_t)$cnt$$constant);
|
||||
address tpc = __ zero_words($base$$Register, (uint64_t)$cnt$$constant);
|
||||
if (tpc == NULL) {
|
||||
ciEnv::current()->record_failure("CodeCache is full");
|
||||
return;
|
||||
}
|
||||
%}
|
||||
|
||||
ins_pipe(pipe_class_memory);
|
||||
|
@ -4820,7 +4820,6 @@ address MacroAssembler::zero_words(Register ptr, Register cnt)
|
||||
address tpc = trampoline_call(zero_blocks);
|
||||
if (tpc == NULL) {
|
||||
DEBUG_ONLY(reset_labels(around));
|
||||
assert(false, "failed to allocate space for trampoline");
|
||||
return NULL;
|
||||
}
|
||||
} else {
|
||||
@ -4854,10 +4853,11 @@ address MacroAssembler::zero_words(Register ptr, Register cnt)
|
||||
// cnt: Immediate count in HeapWords.
|
||||
//
|
||||
// r10, r11, rscratch1, and rscratch2 are clobbered.
|
||||
void MacroAssembler::zero_words(Register base, uint64_t cnt)
|
||||
address MacroAssembler::zero_words(Register base, uint64_t cnt)
|
||||
{
|
||||
guarantee(zero_words_block_size < BlockZeroingLowLimit,
|
||||
"increase BlockZeroingLowLimit");
|
||||
address result = nullptr;
|
||||
if (cnt <= (uint64_t)BlockZeroingLowLimit / BytesPerWord) {
|
||||
#ifndef PRODUCT
|
||||
{
|
||||
@ -4891,10 +4891,12 @@ void MacroAssembler::zero_words(Register base, uint64_t cnt)
|
||||
stp(zr, zr, Address(base, i * wordSize));
|
||||
}
|
||||
BLOCK_COMMENT("} zero_words");
|
||||
result = pc();
|
||||
} else {
|
||||
mov(r10, base); mov(r11, cnt);
|
||||
zero_words(r10, r11);
|
||||
result = zero_words(r10, r11);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
// Zero blocks of memory by using DC ZVA.
|
||||
|
@ -1291,7 +1291,7 @@ public:
|
||||
int elem_size);
|
||||
|
||||
void fill_words(Register base, Register cnt, Register value);
|
||||
void zero_words(Register base, uint64_t cnt);
|
||||
address zero_words(Register base, uint64_t cnt);
|
||||
address zero_words(Register ptr, Register cnt);
|
||||
void zero_dcache_blocks(Register base, Register cnt);
|
||||
|
||||
|
@ -68,7 +68,6 @@ compiler/rtm/print/TestPrintPreciseRTMLockingStatistics.java 8183263 generic-x64
|
||||
compiler/c2/Test8004741.java 8235801 generic-all
|
||||
|
||||
compiler/codecache/jmx/PoolsIndependenceTest.java 8264632 macosx-all
|
||||
compiler/codecache/TestStressCodeBuffers.java 8272094 generic-aarch64
|
||||
|
||||
|
||||
#############################################################################
|
||||
|
Loading…
x
Reference in New Issue
Block a user