llvm-project/llvm/unittests/ADT
Chandler Carruth 4718430a5a Add support for hashing pairs by delegating to each sub-object. There is
an open question of whether we can do better than this by treating pairs
as boring data containers and directly hashing the two subobjects. This
at least makes the API reasonable.

In order to make this change, I reorganized the header a bit. I lifted
the declarations of the hash_value functions up to the top of the header
with their doxygen comments as these are intended for users to interact
with. They shouldn't have to wade through implementation details. I then
defined them at the very end so that they could be defined in terms of
hash_combine or any other hashing infrastructure.

Added various pair-hashing unittests.

llvm-svn: 151882
2012-03-02 08:32:29 +00:00
..
APFloatTest.cpp Fix APFloat::convert so that it handles narrowing conversions correctly; it 2011-11-26 03:38:02 +00:00
APIntTest.cpp Add a unittest for rotating a really big APInt. 2012-02-07 16:27:39 +00:00
BitVectorTest.cpp Add portable bit mask operations to BitVector. 2012-01-17 01:24:32 +00:00
DAGDeltaAlgorithmTest.cpp Remove some code that is no longer needed now that googletest knows how 2011-07-27 09:26:13 +00:00
DeltaAlgorithmTest.cpp Define the new operator<< for sets into namespace std, so that 2009-12-24 21:11:45 +00:00
DenseMapTest.cpp DenseMap::find_as() and unit tests. 2012-01-30 06:55:43 +00:00
DenseSetTest.cpp
FoldingSet.cpp Add test for PR 8111. By Frits van Bommel. 2010-11-19 23:23:22 +00:00
HashingTest.cpp Add support for hashing pairs by delegating to each sub-object. There is 2012-03-02 08:32:29 +00:00
ImmutableSetTest.cpp Tweak ImmutableMap/ImmutableSet/ImmutableList APIs 2010-11-24 00:54:28 +00:00
IntEqClassesTest.cpp Add ADT/IntEqClasses.h as a light-weight implementation of EquivalenceClasses.h. 2010-12-21 00:04:46 +00:00
IntervalMapTest.cpp Add more checks to IntervalMapOverlaps::advance() to ensure that advanceTo sees 2010-12-17 22:07:54 +00:00
IntrusiveRefCntPtrTest.cpp RefCountedBaseVPTR needs the IntrusiveRefCntPtrInfo as friend, 2012-01-31 19:58:34 +00:00
Makefile Move ValueMapTest from ADT to VMCore so that ADT doesn't need 2010-09-27 15:50:08 +00:00
PackedVectorTest.cpp Try fixing http://google1.osuosl.org:8011/builders/clang-i686-freebsd/builds/3548 2011-06-15 20:39:05 +00:00
SCCIteratorTest.cpp Avoid undefined behaviour if somehow NUM_GRAPHS equals 2^32 (or 2011-07-29 07:50:02 +00:00
SmallBitVectorTest.cpp Add an all() method to BitVector, for testing whether all bits are set. 2010-09-27 15:48:37 +00:00
SmallStringTest.cpp Additional methods for SmallString. 2012-01-24 23:43:59 +00:00
SmallVectorTest.cpp land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
SparseBitVectorTest.cpp
SparseSetTest.cpp Fix typos. 2012-02-22 16:01:54 +00:00
StringMapTest.cpp The key of a StringMap can contain nul's in it, so having first() return 2011-07-14 18:31:43 +00:00
StringRefTest.cpp Add a bad char heuristic to StringRef::find. 2011-10-15 10:08:31 +00:00
TripleTest.cpp Support was removed from LLVM's MIPS backend for the PSP variant of that 2012-02-22 11:32:54 +00:00
TwineTest.cpp Add Twine support for characters, and switch twine to use a union internally 2011-07-24 20:44:30 +00:00
VariadicFunctionTest.cpp As Doug pointed out (and I really should know), it is perfectly easy to 2011-12-17 10:20:15 +00:00
ilistTest.cpp Fix const ilist_node::get{Prev,Next}Node() to actually compile. Picky, picky. 2010-05-13 18:35:02 +00:00