From 5f7775c85e60aa659ac76c4b18f7a1f6494f23e2 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Tue, 5 Jan 2010 18:24:00 +0000 Subject: Add an entry on SmallBitVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92747 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/ProgrammersManual.html | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/docs/ProgrammersManual.html b/docs/ProgrammersManual.html index e4e3dc29c3..7845d997b6 100644 --- a/docs/ProgrammersManual.html +++ b/docs/ProgrammersManual.html @@ -94,6 +94,7 @@ option
  • BitVector-like containers
  • @@ -1584,7 +1585,7 @@ please don't use it.

    -

    The BitVector container provides a fixed size set of bits for manipulation. +

    The BitVector container provides a dynamic size set of bits for manipulation. It supports individual bit setting/testing, as well as set operations. The set operations take time O(size of bitvector), but operations are performed one word at a time, instead of one bit at a time. This makes the BitVector very fast for @@ -1593,6 +1594,25 @@ the number of set bits to be high (IE a dense set).

    + +
    + SmallBitVector +
    + +
    +

    The SmallBitVector container provides the same interface as BitVector, but +it is optimized for the case where only a small number of bits, less than +25 or so, are needed. It also transparently supports larger bit counts, but +slightly less efficiently than a plain BitVector, so SmallBitVector should +only be used when larger counts are rare. +

    + +

    +At this time, SmallBitVector does not support set operations (and, or, xor), +and its operator[] does not provide an assignable lvalue. +

    +
    +
    SparseBitVector -- cgit v1.2.3