RFR: 8356125: Interned strings are omitted from AOT cache
Ioi Lam
iklam at openjdk.org
Mon May 5 04:58:23 UTC 2025
When dumping the interned string table in the AOT cache, we try to include only the strings that are inside ConstantPool::reference_array(). The hope is to limit the size of the AOT cache by omitting interned strings that are not used by objects inside the AOT cache.
However, we have found two cases when the above scheme doesn't work. Please see the new test cases.
The fix is to always include all interned strings managed by stringTable.cpp. We might try to omit the truly unused strings in a separate RFE.
-------------
Commit messages:
- fixed whitespaces
- Fixed obsolete comment
- Do not change the order of FinalImageRecipes::apply_recipe yet .. fix this in a separate bug
- Step 2: archive all strings in StringTable
- Step 1: Fixing NonFinalStaticWithInitVal_Helper
Changes: https://git.openjdk.org/jdk/pull/25026/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=25026&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8356125
Stats: 330 lines in 12 files changed: 210 ins; 88 del; 32 mod
Patch: https://git.openjdk.org/jdk/pull/25026.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/25026/head:pull/25026
PR: https://git.openjdk.org/jdk/pull/25026
More information about the hotspot-dev
mailing list