RFR: 8334898: Resolve static field/method references at CDS dump time [v3]
Andrew Dinn
adinn at openjdk.org
Mon Oct 27 13:42:27 UTC 2025
On Fri, 24 Oct 2025 18:39:19 GMT, Ashutosh Mehra <asmehra at openjdk.org> wrote:
>> This patch pre-resolves constant pool entries referred by getstatic, putstatic and invokestatic bytecodes in the assembly phase.
>> It also extends ResolvedConstants.java test to run in AOT mode workflow and additional test for checking resolution of static CP entries.
>>
>> Before this PR, stats on pre-resolved CP entries in the assembly phase reported by -Xlog:aot=info:
>>
>> [2.161s][info ][aot ] Class CP entries = 12553, archived = 3707 ( 29.5%), reverted = 0
>> [2.161s][info ][aot ] Field CP entries = 5236, archived = 1355 ( 25.9%), reverted = 0
>> [2.161s][info ][aot ] Method CP entries = 3835, archived = 3818 ( 99.6%), reverted = 17
>> [2.161s][info ][aot ] Indy CP entries = 9, archived = 9 (100.0%), reverted = 0
>>
>>
>> After this PR:
>>
>> 2.323s][info ][aot ] Class CP entries = 12553, archived = 3700 ( 29.5%), reverted = 0
>> [2.323s][info ][aot ] Field CP entries = 5236, archived = 3519 ( 67.2%), reverted = 0
>> [2.323s][info ][aot ] Method CP entries = 21027, archived = 5527 ( 26.3%), reverted = 17
>> [2.323s][info ][aot ] Indy CP entries = 353, archived = 9 ( 2.5%), reverted = 0
>
> Ashutosh Mehra has updated the pull request incrementally with one additional commit since the last revision:
>
> Move check for VM_Version::supports_fast_class_init_checks() to
> remove_resolved_method_entries_if_non_deterministic()
>
> Signed-off-by: Ashutosh Mehra <asmehra at redhat.com>
src/hotspot/share/oops/cpCache.cpp line 498:
> 496: (rme->is_resolved(Bytecodes::_invokestatic) ? " *** static" : ""));
> 497: }
> 498: ArchiveBuilder::alloc_stats()->record_method_cp_entry(archived, resolved && !archived);
It certainly looks right to move this outside the test for logging being enabled but does it make any practical difference i.e.is the statistic used for anything other than this logging category?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27958#discussion_r2465717646
More information about the hotspot-dev
mailing list