RFR: 8248411: [aarch64] Insufficient error handling when CodeBuffer is exhausted
Patric Hedlin
phedlin at openjdk.java.net
Tue Oct 20 13:43:16 UTC 2020
On Tue, 20 Oct 2020 13:31:59 GMT, Patric Hedlin <phedlin at openjdk.org> wrote:
> Trampoline call generation (in the macro-assembler) may run out of CodeBuffer space without the proper error handling,
> resulting in asserts such as: # Internal Error (.../open/src/hotspot/share/asm/codeBuffer.hpp:198), pid=845, tid=859
> # assert(allocates2(pc)) failed: relocation addr must be in this section
> This update extends the error handling for such error cases to cover all uses of `trampoline_call()`, direct and
> indirect. Failure registration/recording is retained in the "**aarch64.ad**" file.
Testing tier1-3
Repeated testing with hs-tier1-3 using `-XX:+StressCodeBuffers`.
Repeated testing with `jtreg:compiler/profiling/spectrapredefineclass/Launcher.java` using `-XX:+StressCodeBuffers`.
-------------
PR: https://git.openjdk.java.net/jdk/pull/765
More information about the hotspot-dev
mailing list