diff options
Diffstat (limited to 'libartbase/base/bit_vector.cc')
| -rw-r--r-- | libartbase/base/bit_vector.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libartbase/base/bit_vector.cc b/libartbase/base/bit_vector.cc index 8e3d4c9bf7..85f326385e 100644 --- a/libartbase/base/bit_vector.cc +++ b/libartbase/base/bit_vector.cc @@ -46,6 +46,12 @@ BitVector::BitVector(uint32_t start_bits, BitsToWords(start_bits), static_cast<uint32_t*>(allocator->Alloc(BitsToWords(start_bits) * kWordBytes))) { // We don't know if the allocator cleared things. + // TODO(solanes): We should be able to remove this call to `ClearAllBits`. Currently we have: + // * `MallocAllocator` and `ArenaAllocator` which sets it to zero, and + // * `ScopedArenaAllocator` which does not. + // We also have `NoopAllocator` but that allocator should never call this method (as the Alloc + // call will turn into a LOG(FATAL)). + // As a note, MallocAllocator is a misnomer as it uses `calloc` which sets the memory to zero. ClearAllBits(); } |