RFR: 8358735: GenShen: bug in #undef'd code in block_start()
William Kemper
wkemper at openjdk.org
Mon Sep 29 16:43:38 UTC 2025
On Wed, 17 Sep 2025 20:12:49 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:
> When scanning a range of dirty cards within the GenShen remembered set, we need to find the object that spans the beginning of the left-most dirty card. The existing code is not reliable following class unloading.
>
> The new code uses the marking context when it is available to determine the location of live objects that reside below TAMS within each region. Above TAMS, all objects are presumed live and parsable.
src/hotspot/share/gc/shenandoah/shenandoahMarkBitMap.hpp line 132:
> 130:
> 131: // Search for last one in the range [l_index, r_index). Return r_index if not found.
> 132: inline idx_t get_prev_one_offset (idx_t l_index, idx_t r_index) const;
Nit: Some idiosyncratic formatting here (space before opening parenthesis).
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27353#discussion_r2388596886
More information about the hotspot-gc-dev
mailing list