RFR: 8363996: Obsolete UseCompressedClassPointers [v4]
Thomas Stuefe
stuefe at openjdk.org
Mon Feb 9 21:36:31 UTC 2026
On Mon, 8 Dec 2025 13:26:59 GMT, Ivan Walulya <iwalulya at openjdk.org> wrote:
>> Thomas Stuefe has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Update src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp
>>
>> Co-authored-by: Andrew Haley <aph-open at littlepinkcloud.com>
>
> src/hotspot/share/oops/oop.inline.hpp line 104:
>
>> 102: return CompressedKlassPointers::decode_not_null(_metadata._compressed_klass);
>> 103: default:
>> 104: return _metadata._klass;
>
> Suggestion:
>
> ShouldNotReachHere();
Fixed
> src/hotspot/share/oops/oop.inline.hpp line 115:
>
>> 113: return CompressedKlassPointers::decode(_metadata._compressed_klass);
>> 114: default:
>> 115: return _metadata._klass;
>
> Suggestion:
>
> ShouldNotReachHere();
Fixed
> src/hotspot/share/oops/oop.inline.hpp line 128:
>
>> 126: }
>> 127: default:
>> 128: return AtomicAccess::load_acquire(&_metadata._klass);
>
> Suggestion:
>
> ShouldNotReachHere();
Fixed
> src/hotspot/share/oops/oop.inline.hpp line 139:
>
>> 137: return CompressedKlassPointers::decode_without_asserts(_metadata._compressed_klass);
>> 138: default:
>> 139: return _metadata._klass;
>
> klass_mode() is either `Compact` or `Compressed`
> Should be changed to:
> Suggestion:
>
> ShouldNotReachHere();
Fixed
> src/hotspot/share/oops/oop.inline.hpp line 157:
>
>> 155: assert(Universe::is_bootstrapping() || (k != nullptr && k->is_klass()), "incorrect Klass");
>> 156: assert(!UseCompactObjectHeaders, "don't set Klass* with compact headers");
>> 157: _metadata._compressed_klass = CompressedKlassPointers::encode_not_null(k);
>
> We might have to reconsider if we need to maintain the`union _metadata`
Right you are. We only should need narrowKlass now, even on 32-bit.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2782264507
PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2782265537
PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2782263749
PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2782263330
PR Review Comment: https://git.openjdk.org/jdk/pull/28366#discussion_r2782039682
More information about the core-libs-dev
mailing list