RFR: 8324649: Shenandoah: refactor implementation of free set [v38]
Roman Kennke
rkennke at openjdk.org
Tue Mar 26 16:48:35 UTC 2024
On Tue, 26 Mar 2024 16:38:10 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 94 commits:
>>
>> - Merge remote-tracking branch 'origin/master' into restructure-free-set
>> - Merge branch 'openjdk:master' into master
>> - Merge branch 'openjdk:master' into master
>> - Fix for certain compilers
>> - Add a few more conditions to ShenandoahSimpleBitMapTest
>> - Fix typo in log message for 32-bit platforms
>> - Fix one bug and add disabled instrumentation for debugging
>> - Give special handling to count-zeros when arg is 0
>> - Exploit count_<leading|trailing>_zeros instructions
>>
>> The ShenandoahSimpleBitMap can run more efficiently if we use hardware
>> instructions to count leading and trailing zeros.
>> - Remove comment that pertains only to generational mode
>> - ... and 84 more: https://git.openjdk.org/jdk/compare/da8a095a...7bc418fa
>
> src/hotspot/share/gc/shenandoah/shenandoahFreeSet.cpp line 53:
>
>> 51: uintx omit_mask = right_n_bits(bit_number);
>> 52: uintx mask = ((uintx) 0 - 1) & ~omit_mask;
>> 53: #undef KELVIN_DEBUG
>
> Please remove KELVIN_DEBUG before integration. You may want to turn it into proper logging, if you think it may be useful.
log_*_develop() is only built in debug builds, that may be useful.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17561#discussion_r1539717602
More information about the shenandoah-dev
mailing list