RFR: 8355034: [JVMCI] assert(static_cast<int>(_jvmci_data_size) == align_up(compiler->is_jvmci() ? jvmci_data->size() : 0, oopSize)) failed: failed: 104 != 16777320

Doug Simon dnsimon at openjdk.org
Fri Apr 18 15:26:40 UTC 2025


After [JDK-8343789](https://bugs.openjdk.org/browse/JDK-8343789), the size of a `JVMCINMethodData` object is limited to `uint16_t`. That object embeds the value of `InstalledCode.name` so effectively imposes a limit on the name length. This PR establishes a lower limit on the name value as this name should only be for informative purposes when inspecting compiled code.

While debugging the problem that exposed the limit, it was confusing that `-XX:+PrintCompilation` did not show the name so this PR builds on [JDK-8336760](https://bugs.openjdk.org/browse/JDK-8336760) to add the name in `PrintCompilation` output for JVMCI "hosted" methods.

-------------

Commit messages:
 - impose a length limit on InstalledCode.name
 - convert assert to guarantee
 - include the name if non-null when printing "hosted" JVMCI compilations

Changes: https://git.openjdk.org/jdk/pull/24753/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24753&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8355034
  Stats: 76 lines in 4 files changed: 73 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/24753.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24753/head:pull/24753

PR: https://git.openjdk.org/jdk/pull/24753


More information about the graal-dev mailing list