RFR: 8363996: Obsolete UseCompressedClassPointers [v3]

Thomas Stuefe stuefe at openjdk.org
Thu Dec 4 14:06:20 UTC 2025


On Thu, 4 Dec 2025 12:03:25 GMT, Andrew Haley <aph at openjdk.org> wrote:

>> Thomas Stuefe has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Apply suggestion from @theRealAph
>>   
>>   Co-authored-by: Andrew Haley <aph-open at littlepinkcloud.com>
>
> src/hotspot/share/cds/aotMappedHeapLoader.hpp line 55:
> 
>> 53:   static bool can_use() { return can_map() || can_load(); }
>> 54: 
>> 55:   // Can this VM map archived heap region? Currently only G1+compressed{oops,cp}
> 
> Suggestion:
> 
>   // Can this VM map archived heap region? Currently only G1.

After thinking about this, I got confused. Should heap archiving not actually depend on CompressedOops, too, in addition to CompressedClassPointers? Otherwise we would have the heap region at runtime at exactly the same address as at compile time...

That would be a preexisting bug. It may just be one of the old "UseCompressedClassPointers is tied to UseCompressedOops" bugs. But if true, we would have seen CDT crashes e.g. with G1 and heaps > 32g.

I'll take a look.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2589215456


More information about the serviceability-dev mailing list