[llvm] f26fc56 - Eliminate the sizing template parameter N from CoalescingBitVector

Dimitry Andric via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 3 09:15:51 PDT 2020


Author: Dimitry Andric
Date: 2020-09-03T18:15:41+02:00
New Revision: f26fc568402f84a94557cbe86e7aac8319d61387

URL: https://github.com/llvm/llvm-project/commit/f26fc568402f84a94557cbe86e7aac8319d61387
DIFF: https://github.com/llvm/llvm-project/commit/f26fc568402f84a94557cbe86e7aac8319d61387.diff

LOG: Eliminate the sizing template parameter N from CoalescingBitVector

Since the parameter is not used anywhere, and the default size of 16
apparently causes PR47359, remove it. This ensures that IntervalMap will
automatically determine the optimal size, using its NodeSizer struct.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D87044

Added: 
    

Modified: 
    llvm/include/llvm/ADT/CoalescingBitVector.h

Removed: 
    


################################################################################
diff  --git a/llvm/include/llvm/ADT/CoalescingBitVector.h b/llvm/include/llvm/ADT/CoalescingBitVector.h
index f8c8fec0ec9e..0a7dcfe22631 100644
--- a/llvm/include/llvm/ADT/CoalescingBitVector.h
+++ b/llvm/include/llvm/ADT/CoalescingBitVector.h
@@ -34,15 +34,14 @@ namespace llvm {
 /// performance for non-sequential find() operations.
 ///
 /// \tparam IndexT - The type of the index into the bitvector.
-/// \tparam N - The first N coalesced intervals of set bits are stored in-place.
-template <typename IndexT, unsigned N = 16> class CoalescingBitVector {
+template <typename IndexT> class CoalescingBitVector {
   static_assert(std::is_unsigned<IndexT>::value,
                 "Index must be an unsigned integer.");
 
-  using ThisT = CoalescingBitVector<IndexT, N>;
+  using ThisT = CoalescingBitVector<IndexT>;
 
   /// An interval map for closed integer ranges. The mapped values are unused.
-  using MapT = IntervalMap<IndexT, char, N>;
+  using MapT = IntervalMap<IndexT, char>;
 
   using UnderlyingIterator = typename MapT::const_iterator;
 


        


More information about the llvm-commits mailing list