On Thu, 4 Apr 2024 12:18:24 GMT, Stefan Karlsson <[email protected]> wrote:
>> We have a few places that uses the terms `KlassObj` and `klassOop` when
>> referring to Klasses. This is old code from before the PermGen removal, when
>> Klasses also were Java objects.
>>
>> These names tripped me up when I was reading the heap heapInspection.cpp and
>> first though we were mixing the klass *mirror* objects and klass pointers in
>> the hash code calculation:
>>
>> // An aligned reference address (typically the least
>> // address in the perm gen) used for hashing klass
>> // objects.
>> HeapWord* _ref;
>> ...
>> _ref = (HeapWord*) Universe::boolArrayKlassObj();
>> ...
>> uint KlassInfoTable::hash(const Klass* p) {
>> return (uint)(((uintptr_t)p - (uintptr_t)_ref) >> 2);
>> }
>>
>>
>> I propose that we rename these functions (and stop casting the Klass* to a
>> (HeapWord*)).
>>
>> Tested with serviceability/dcmd/gc/ClassHistogramTest.java but will run this
>> through our lower tiers.
>
> Stefan Karlsson has updated the pull request incrementally with one
> additional commit since the last revision:
>
> Review Roman
Thanks for the reviews!
-------------
PR Comment: https://git.openjdk.org/jdk/pull/18618#issuecomment-2039156773