llvm-6502/include/llvm/ADT
Ted Kremenek f357afb404 Modified node creation of ImutAVLTree to do a hash lookup for an existing
node in the FoldingSet of nodes held by the Factory object.  If we
we find a node with a matching hash, we do a full structural comparison.
Nodes are also now inserted into the FoldingSet only when we mark them
Immutable, as their children can change during intermediate-rebalancing.

The 'Profile' method for ImutAVLTree is no longer used when looking up
existing ImutAVLTrees with a given set of contents; instead the Profile method
is used by other clients that wish to insert such a tree into a folding set.
This means that we are not using FoldingSet in ImutAVLTreeFactory in the way
it was intended, but instead are using it as an opaque hashtable.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46717 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-04 21:15:24 +00:00
..
APFloat.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
APInt.h Changed argument name for 'Profile' method to potentially fix a name conflict 2008-01-19 17:21:43 +00:00
APSInt.h constified operator~(). 2008-02-04 16:57:26 +00:00
BitVector.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
DenseMap.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
DenseSet.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
DepthFirstIterator.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
EquivalenceClasses.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
FoldingSet.h Added "bucket_iterators" to FoldingSet. Bucket iterators allow iteration 2008-02-04 21:11:17 +00:00
GraphTraits.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
hash_map.in remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
hash_set.in remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
HashExtras.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
ilist remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
ImmutableMap.h Reverted implementation of ImmutableMap::find() to return a TreeTy* instead of 2008-01-18 00:38:04 +00:00
ImmutableSet.h Modified node creation of ImutAVLTree to do a hash lookup for an existing 2008-02-04 21:15:24 +00:00
IndexedMap.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
iterator.in remove attribution from a variety of miscellaneous files. 2007-12-29 22:59:10 +00:00
OwningPtr.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
PostOrderIterator.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SCCIterator.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SetOperations.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SetVector.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SmallPtrSet.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SmallSet.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SmallString.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
SmallVector.h add operator==/!= to smallvector. 2008-01-11 18:42:02 +00:00
SparseBitVector.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Statistic.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
STLExtras.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
StringExtras.h don't form an std::string with a null pointer, it aborts. 2008-01-18 18:54:31 +00:00
StringMap.h Add convenient std::string helpers to StringMap. Patch by Mikhail Glushenkov! 2008-01-31 23:02:33 +00:00
Tree.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
Trie.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
UniqueVector.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00
VectorExtras.h Don't attribute in file headers anymore. See llvmdev for the 2007-12-29 19:59:42 +00:00