RFR: 8324649: Shenandoah: replace implementation of free set [v53]
Kelvin Nilsen
kdnilsen at openjdk.org
Mon May 13 02:56:25 UTC 2024
On Fri, 3 May 2024 16:06:03 GMT, Roman Kennke <rkennke at openjdk.org> wrote:
>> Kelvin Nilsen has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 114 commits:
>>
>> - Merge remote-tracking branch 'origin/master' into restructure-free-set
>> - Merge branch 'openjdk:master' into master
>> - Merge branch 'openjdk:master' into master
>> - Remove unnecessary call to update_watermark
>> - Assert progress on find_next and find_prev
>> - Simplify partition_membership_name by code reuse
>> - Simplify by combining implemnetations of shrink_interval functions
>> - Fix NumPartition type
>>
>> Beautify the code by changing type of NumPartitions and adding Int and
>> UInt forms of NumPartitions.
>> - Refinements to support zero-build compiles
>> - Fix whitespace
>> - ... and 104 more: https://git.openjdk.org/jdk/compare/a863ef5d...d6e3546c
>
> src/hotspot/share/gc/shenandoah/shenandoahSimpleBitMap.cpp line 51:
>
>> 49: uintx mask = ((uintx) 0 - 1) & ~omit_mask;
>> 50: if ((element_bits & mask) == mask) {
>> 51: size_t counted_ones = BitsPerWord - bit_number;
>
> So this is the case where all relevant bits are set, right? You might want to add a comment that says so, it took me quite a while to figure this out (including the mask-calculation that leads to it).
Thanks. I have added a comment to clarify.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17561#discussion_r1597812494
More information about the shenandoah-dev
mailing list