RFR: 8309751: Duplicate constant pool entries added during default method processing [v2]

David Holmes dholmes at openjdk.org
Tue Apr 2 21:28:09 UTC 2024


On Tue, 2 Apr 2024 13:06:24 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> This uses Ashutosh's patch to avoid adding duplicate constant pool entries during default method processing, with one change to make it conditional if not needed. I tested this locally and started writing a test, but writing a test is more difficult because duplicate constant pool entries don't actually violate the spec.
>> 
>> Tested with tier1-4 and ran some startup performance benchmarks on the patch.
>
> Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Added a comment and did some renaming to make it clearer what this is doing.

src/hotspot/share/classfile/bytecodeAssembler.hpp line 77:

> 75:       u2 name_and_type_index;
> 76:     } methodref;
> 77:     uintptr_t value;

Now you have drawn attention to this by renaming it, what exactly is it? The rest of the union I can understand as they are different kinds of CP entries but what is a "value"??

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

PR Review Comment: https://git.openjdk.org/jdk/pull/18548#discussion_r1548625633


More information about the hotspot-runtime-dev mailing list