RFR: 8356125: Interned strings are omitted from AOT cache [v3]

Aleksey Shipilev shade at openjdk.org
Thu May 8 08:09:55 UTC 2025


On Thu, 8 May 2025 04:17:37 GMT, Ioi Lam <iklam at openjdk.org> wrote:

>> 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.
>
> Ioi Lam has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision:
> 
>  - Merge branch 'master' into 8356125-interned-string-omitted-from-aot-cache
>  - @calvinccheung comments
>  - Improved test case
>  - 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

Still good.

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

Marked as reviewed by shade (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/25026#pullrequestreview-2824205016


More information about the hotspot-dev mailing list