RFR: 8296139: Make GrowableBitMap the base class of all implementations [v4]
Xin Liu
xliu at openjdk.org
Tue Nov 8 17:55:33 UTC 2022
On Tue, 8 Nov 2022 15:03:54 GMT, Axel Boldt-Christmas <aboldtch at openjdk.org> wrote:
>> Xin Liu has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains eight commits:
>>
>> - Merge branch 'master' into JDK-8296139
>> - Bring back verify_size to the constructor of BitMap.
>>
>> Also resume the underlying member data to be private. Subclasses of
>> GrowableBitMap update them using update(map, size).
>> - Reivew comments from stefank
>> - Refactor GrowableBitMap using C++ CRTP
>>
>> With CPTP, we don't need to have explicit Allocators. Subclasses expose
>> allocate/free member functions upward to GrowableBitMap<BitMapWithAllocator>. This
>> aproach is similar to GrowableArray.
>> - Add unittest for Arena.
>> - Avoid polluting namespace.
>>
>> uses qualified bm_word_t and idx_t.
>> - Change ResourceBitMap to subclass of ArenaBitMap.
>> - Add GrowableBitMap.
>
> src/hotspot/share/utilities/bitMap.hpp line 401:
>
>> 399: bm_word_t* allocate(idx_t size_in_words) const;
>> 400: void free(bm_word_t* map, idx_t size_in_words) const {
>> 401: // ArenaBitMaps currently don't free memory.
>
> s/ArenaBitMaps/ResourceBitMap/
>
> Or keep the old `Don't free resource allocated arrays.` comment
I take a note and will fix this one in the next change. thanks!
-------------
PR: https://git.openjdk.org/jdk/pull/10941
More information about the hotspot-runtime-dev
mailing list