RFR: 8358586: ZGC: Combine ZAllocator and ZObjectAllocator [v8]
Joel Sikström
jsikstro at openjdk.org
Wed Jun 25 08:00:22 UTC 2025
On Wed, 25 Jun 2025 05:15:03 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:
>> Joel Sikström has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 10 additional commits since the last revision:
>>
>> - Merge branch 'master' into JDK-8358586_zallocator_cleanup
>> - Rework ZObjectAllocator
>> - Private member variables in ZObjectAlloactorImpl
>> - Move implementation to .cpp and static-only interface in .hpp
>> - Consistent template friend style
>> - Friend class ValueObjBlock
>> - AllStatic interface with ZObjectAllocators
>> - -Wconversion fixes
>> - Intermediate alloc_object in ZHeap
>> - 8358586: ZGC: Combine ZAllocator and ZObjectAllocator
>
> src/hotspot/share/gc/z/zDeferredConstructed.hpp line 33:
>
>> 31:
>> 32: template<typename T>
>> 33: class ZDeferredConstructed {
>
> We should move the definitions to zDeferredConstructed.inline.hpp. It is an exceptional case that we have them in the header instead of the inline header file.
>
> _(We usually only do this when the compiler needs a definition like when creating destructors for types containing none trivial destructors, we would probably also allow it if we would want constexpr creation of variables in header files)_
I agree with you. I've moved the definitions to an inline header.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25693#discussion_r2166056025
More information about the hotspot-gc-dev
mailing list