Changes in directory llvm/docs:
ProgrammersManual.html updated: 1.122 -> 1.123 --- Log message: update this. --- Diffs of the changes: (+10 -11) ProgrammersManual.html | 21 ++++++++++----------- 1 files changed, 10 insertions(+), 11 deletions(-) Index: llvm/docs/ProgrammersManual.html diff -u llvm/docs/ProgrammersManual.html:1.122 llvm/docs/ProgrammersManual.html:1.123 --- llvm/docs/ProgrammersManual.html:1.122 Wed Feb 7 00:24:17 2007 +++ llvm/docs/ProgrammersManual.html Thu Feb 8 13:14:21 2007 @@ -71,7 +71,7 @@ <li><a href="#ds_map">Map-Like Containers (std::map, DenseMap, etc)</a> <ul> <li><a href="#dss_sortedvectormap">A sorted 'vector'</a></li> - <li><a href="#dss_cstringmap">"llvm/ADT/CStringMap.h"</a></li> + <li><a href="#dss_stringmap">"llvm/ADT/StringMap.h"</a></li> <li><a href="#dss_indexedmap">"llvm/ADT/IndexedMap.h"</a></li> <li><a href="#dss_densemap">"llvm/ADT/DenseMap.h"</a></li> <li><a href="#dss_map"><map></a></li> @@ -1152,7 +1152,7 @@ <!-- _______________________________________________________________________ --> <div class="doc_subsubsection"> - <a name="dss_cstringmap">"llvm/ADT/CStringMap.h"</a> + <a name="dss_stringmap">"llvm/ADT/StringMap.h"</a> </div> <div class="doc_text"> @@ -1160,12 +1160,11 @@ <p> Strings are commonly used as keys in maps, and they are difficult to support efficiently: they are variable length, inefficient to hash and compare when -long, expensive to copy, etc. CStringMap is a specialized container designed to -cope with these issues. It supports mapping an arbitrary range of bytes that -does not have an embedded nul character in it ("C strings") to an arbitrary -other object.</p> +long, expensive to copy, etc. StringMap is a specialized container designed to +cope with these issues. It supports mapping an arbitrary range of bytes to an +arbitrary other object.</p> -<p>The CStringMap implementation uses a quadratically-probed hash table, where +<p>The StringMap implementation uses a quadratically-probed hash table, where the buckets store a pointer to the heap allocated entries (and some other stuff). The entries in the map must be heap allocated because the strings are variable length. The string data (key) and the element object (value) are @@ -1173,15 +1172,15 @@ object. This container guarantees the "<tt>(char*)(&Value+1)</tt>" points to the key string for a value.</p> -<p>The CStringMap is very fast for several reasons: quadratic probing is very +<p>The StringMap is very fast for several reasons: quadratic probing is very cache efficient for lookups, the hash value of strings in buckets is not -recomputed when lookup up an element, CStringMap rarely has to touch the +recomputed when lookup up an element, StringMap rarely has to touch the memory for unrelated objects when looking up a value (even when hash collisions happen), hash table growth does not recompute the hash values for strings already in the table, and each pair in the map is store in a single allocation (the string data is stored in the same allocation as the Value of a pair).</p> -<p>CStringMap also provides query methods that take byte ranges, so it only ever +<p>StringMap also provides query methods that take byte ranges, so it only ever copies a string if a value is inserted into the table.</p> </div> @@ -3178,7 +3177,7 @@ <a href="mailto:[EMAIL PROTECTED]">Dinakar Dhurjati</a> and <a href="mailto:[EMAIL PROTECTED]">Chris Lattner</a><br> <a href="http://llvm.org">The LLVM Compiler Infrastructure</a><br> - Last modified: $Date: 2007/02/07 06:24:17 $ + Last modified: $Date: 2007/02/08 19:14:21 $ </address> </body> _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits