RFR: 8151439: Inline the BitMap constructor
Stefan Karlsson
stefan.karlsson at oracle.com
Wed Mar 9 11:36:55 UTC 2016
Thanks, Thomas.
StefanK
On 2016-03-08 12:09, Thomas Schatzl wrote:
> Hi Stefan,
>
> On Tue, 2016-03-08 at 11:52 +0100, Stefan Karlsson wrote:
>> Hi all,
>>
>> Please review this patch to inline the BitMap constructor. This will
>> allow us to efficiently use temporary, stack-allocated BitMaps.
>>
>> http://cr.openjdk.java.net/~stefank/8151439/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8151439
>>
>> A code example of why we want to inline the BitMap constructor:
>> void MyClass::set_bit(idx_t x) {
>> BitMap(&_bits, BitsPerWord).par_set_bit(x).
>> }
>>
>> We could have used an instance of a BitMap in MyClass, but that would
>> store both a bm_word_t* and the size of the bitmap storage in
>> MyClass.
>> Since the size is a compile-time constant, we can use the above
>> construct to only store a bm_word_t field in MyClass, and thereby
>> reduce
>> the size of MyClass. By inlining the constructor, we get rid of the
>> extra overhead of creating a BitMap.
> looks good.
>
> Thanks,
> Thomas
More information about the hotspot-dev
mailing list