RFR: 8305895: Implement JEP 450: Compact Object Headers (Experimental) [v13]

Roberto Castañeda Lozano rcastanedalo at openjdk.org
Fri Sep 13 06:46:15 UTC 2024


On Thu, 12 Sep 2024 15:42:59 GMT, Thomas Stuefe <stuefe at openjdk.org> wrote:

>> src/hotspot/share/opto/machnode.cpp line 390:
>> 
>>> 388:     t = t->make_ptr();
>>> 389:   }
>>> 390:   if (t->isa_narrowklass() && CompressedKlassPointers::shift() == 0) {
>> 
>> Does this change have any effect? `UseCompressedClassPointers` should be implied by `t->isa_narrowklass()`.
>
> I don't remember if this change was a reaction to an error or if I just guarded `CompressedKlassPointers::shift()` with +UseCCP because that is the prerequisite now. Probably the latter. I can remove this. Probably should assert then for +UseCCP.

I see, thanks. In that case, I would suggest removing the explicit `UseCompressedClassPointers` test, since it should be implied by `t->isa_narrowklass()`. `check_init()` within `CompressedKlassPointers::shift()` would already fail for the unexpected case where `t->isa_narrowklass() && !UseCompressedClassPointers`, no?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20677#discussion_r1758270661


More information about the build-dev mailing list