summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-01-05 18:24:00 +0000
committerDan Gohman <gohman@apple.com>2010-01-05 18:24:00 +0000
commit5f7775c85e60aa659ac76c4b18f7a1f6494f23e2 (patch)
treeee483ce067f1afbe9e7ad6f73cbc9c8e1a05ca2a /docs
parent033574074d3c980057a0cb989d272ec72a8f9523 (diff)
downloadllvm-5f7775c85e60aa659ac76c4b18f7a1f6494f23e2.tar.gz
llvm-5f7775c85e60aa659ac76c4b18f7a1f6494f23e2.tar.bz2
llvm-5f7775c85e60aa659ac76c4b18f7a1f6494f23e2.tar.xz
Add an entry on SmallBitVector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92747 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r--docs/ProgrammersManual.html22
1 files changed, 21 insertions, 1 deletions
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</a></li>
<li><a href="#ds_bit">BitVector-like containers</a>
<ul>
<li><a href="#dss_bitvector">A dense bitvector</a></li>
+ <li><a href="#dss_smallbitvector">A "small" dense bitvector</a></li>
<li><a href="#dss_sparsebitvector">A sparse bitvector</a></li>
</ul></li>
</ul>
@@ -1584,7 +1585,7 @@ please don't use it.</p>
</div>
<div class="doc_text">
-<p> The BitVector container provides a fixed size set of bits for manipulation.
+<p> 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
@@ -1595,6 +1596,25 @@ the number of set bits to be high (IE a dense set).
<!-- _______________________________________________________________________ -->
<div class="doc_subsubsection">
+ <a name="dss_smallbitvector">SmallBitVector</a>
+</div>
+
+<div class="doc_text">
+<p> 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.
+</p>
+
+<p>
+At this time, SmallBitVector does not support set operations (and, or, xor),
+and its operator[] does not provide an assignable lvalue.
+</p>
+</div>
+
+<!-- _______________________________________________________________________ -->
+<div class="doc_subsubsection">
<a name="dss_sparsebitvector">SparseBitVector</a>
</div>