RFR: 8327000: GenShen: Integrate updated Shenandoah implementation of FreeSet into GenShen [v8]

Kelvin Nilsen kdnilsen at openjdk.org
Tue Jun 18 20:41:48 UTC 2024


On Tue, 18 Jun 2024 20:31:57 GMT, Kelvin Nilsen <kdnilsen at openjdk.org> wrote:

>> That change came in when I merged from master.  I had assumed the change had also been applied upstream.  Is your diff compared to a "recent" upstream?
>> 
>> dc184f1099e0 (Kelvin Nilsen    2024-05-16 16:47:09 +0000 2037)     ShenandoahHeapRegion* r = _heap->get_region(index);
>> dc184f1099e0 (Kelvin Nilsen    2024-05-16 16:47:09 +0000 2038)     if (r->is_empty()) {
>> dc184f1099e0 (Kelvin Nilsen    2024-05-16 16:47:09 +0000 2039)       free += ShenandoahHeapRegion::region_size_bytes();
>> dc184f1099e0 (Kelvin Nilsen    2024-05-16 16:47:09 +0000 2040)       if (last_idx + 1 == index) {
>> dc184f1099e0 (Kelvin Nilsen    2024-05-16 16:47:09 +0000 2041)         empty_contig++;
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2042)       } else {
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2043)         empty_contig = 0;
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2044)       }
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2045)
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2046)       max_contig = MAX2(max_contig, empty_contig);
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2047)       last_idx = index;
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2048)     }
>> 5f22805a50d4 (Kelvin Nilsen    2024-06-13 14:04:30 +0000 2049)     index = _partitions.find_index_of_next_available_region(Shenando\
>> ahFreeSetPartitionId::Mutator, index + 1);
>> f37149b1c510 (Aleksey Shipilev 2020-03-23 19:14:01 +0100 2050)   }
>
> I think we may have drifted from openjdk/jdk after we forked our generational shenandoah work?

I must have messed something up during manual merge conflict resolution.
I'm fixing this code to match upstream.

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

PR Review Comment: https://git.openjdk.org/shenandoah/pull/440#discussion_r1645026202


More information about the shenandoah-dev mailing list