summaryrefslogtreecommitdiffstats
path: root/llvm/docs/ProgrammersManual.html
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
commit60b0a86a08a737172bdfc214444f621a9f4b65e2 (patch)
tree03831e61da0a54849213601e2c5e41f7dbac7712 /llvm/docs/ProgrammersManual.html
parentf79454347262d4da2acbdb4832e838d64f9da116 (diff)
downloadbcm5719-llvm-60b0a86a08a737172bdfc214444f621a9f4b65e2.tar.gz
bcm5719-llvm-60b0a86a08a737172bdfc214444f621a9f4b65e2.zip
Add an entry on SmallBitVector.
llvm-svn: 92747
Diffstat (limited to 'llvm/docs/ProgrammersManual.html')
-rw-r--r--llvm/docs/ProgrammersManual.html22
1 files changed, 21 insertions, 1 deletions
diff --git a/llvm/docs/ProgrammersManual.html b/llvm/docs/ProgrammersManual.html
index e4e3dc29c30..7845d997b62 100644
--- a/llvm/docs/ProgrammersManual.html
+++ b/llvm/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>
OpenPOWER on IntegriCloud