llvm/unittests/ADT
Duncan P. N. Exon Smith a66f054162 ADT: Never allocate nodes in iplist<> and ilist<>
Remove createNode() and any API that depending on it, and add
HasCreateNode to the list of checks for HasObsoleteCustomizations.  Now
an ilist *never* allocates (this was already true for iplist).

This factors out all the differences between iplist and ilist.  I'll aim
to rename both to "owning_ilist" eventually, to call out the interesting
(not exactly intrusive) ownership semantics.  In the meantime, I've left
both names around to reduce code churn.

One of the deleted APIs is the ilist copy constructor.  I've lifted up
and tested iplist::cloneFrom (ala simple_ilist::cloneFrom) as a
replacement.

Users of ilist<> and iplist<> that want the list to allocate nodes have
a few options:
- use std::list;
- use AllocatorList or BumpPtrList (or build a similarly trivial list);
- use cloneFrom (which is explicit at the call site); or
- allocate at the call site.

See r280573, r281177, r281181, and r281182 for examples of what to do if
you're updating out-of-tree code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@281184 91177308-0d34-0410-b5e6-96231b3b80d8
2016-09-11 23:43:43 +00:00
..
APFloatTest.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
APIntTest.cpp Fix UB in APInt::ashr 2016-08-10 19:50:14 +00:00
APSIntTest.cpp ADTTests: merge #ifdef checks from r240436. 2015-06-24 17:05:04 +00:00
ArrayRefTest.cpp Fix unit test after function name change. 2016-08-30 18:45:32 +00:00
BitmaskEnumTest.cpp [ADT] Add LLVM_MARK_AS_BITMASK_ENUM, used to enable bitwise operations on enums without static_cast. 2016-07-13 18:23:16 +00:00
BitVectorTest.cpp Fix BitVector move ctor/assignment. 2016-06-16 21:45:13 +00:00
BumpPtrListTest.cpp ADT: Add AllocatorList, and use it for yaml::Token 2016-09-11 22:40:40 +00:00
CMakeLists.txt ADT: Add AllocatorList, and use it for yaml::Token 2016-09-11 22:40:40 +00:00
DAGDeltaAlgorithmTest.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
DeltaAlgorithmTest.cpp Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
DenseMapTest.cpp [DenseMap] Add a C++17-style try_emplace method. 2016-07-21 13:37:53 +00:00
DenseSetTest.cpp [ADT] Add a reserve() method to DenseSet as well as an insert() for R-value 2016-08-13 20:42:19 +00:00
DepthFirstIteratorTest.cpp [ADT] Actually mutate the iterator VisitStack.back().second, not its copy. 2016-08-22 21:59:26 +00:00
FoldingSet.cpp Adding reserve and capacity methods to FoldingSet 2016-06-03 13:54:48 +00:00
FunctionRefTest.cpp Ensure function_refs are copyable even from non-const references 2014-11-12 02:06:08 +00:00
HashingTest.cpp Remove no-op dtor so that use of the implicit copy ctor/assignment operator are not deprecated. 2015-03-03 19:52:59 +00:00
IListBaseTest.cpp ADT: Add sentinel tracking and custom tags to ilists 2016-09-11 16:20:53 +00:00
IListIteratorTest.cpp ADT: Split out simple_ilist, a simple intrusive list 2016-08-30 16:23:55 +00:00
IListNodeBaseTest.cpp ADT: Add sentinel tracking and custom tags to ilists 2016-09-11 16:20:53 +00:00
IListNodeTest.cpp ADT: Add sentinel tracking and custom tags to ilists 2016-09-11 16:20:53 +00:00
IListSentinelTest.cpp ADT: Add sentinel tracking and custom tags to ilists 2016-09-11 16:20:53 +00:00
IListTest.cpp ADT: Never allocate nodes in iplist<> and ilist<> 2016-09-11 23:43:43 +00:00
ImmutableMapTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
ImmutableSetTest.cpp Fix warnings in ImmutableSetTest and SequenceTest. 2016-07-17 18:10:30 +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 [weak vtables] Place class definitions into anonymous namespaces to prevent weak vtables. 2013-11-19 03:08:35 +00:00
IteratorTest.cpp Move unittests/Support/IteratorTest.cpp to unittests/ADT/ 2016-08-20 14:58:31 +00:00
MakeUniqueTest.cpp [C++11] Add llvm::make_unique, according to N3656. 2014-03-09 11:20:17 +00:00
MapVectorTest.cpp [ADT] Teach MapVector to support a swap member. Will be used in 2015-03-25 00:50:21 +00:00
OptionalTest.cpp [ADT] Add relation operators for Optional 2016-08-11 20:10:15 +00:00
PackedVectorTest.cpp Simplify PackedVector by removing user-defined special members that aren't any different than the defaults 2015-08-12 23:26:12 +00:00
PointerEmbeddedIntTest.cpp [ADT] Fix PointerEmbeddedInt when the underlying type is uintptr_t. 2016-02-18 21:00:08 +00:00
PointerIntPairTest.cpp Fix PointerIntPair so that it can use an enum class as its integer template argument. 2016-01-13 05:59:13 +00:00
PointerSumTypeTest.cpp [ADT] Add a sum type abstraction for pointer-like types. 2016-01-10 08:48:23 +00:00
PointerUnionTest.cpp [C++11] Use 'nullptr'. 2014-06-08 22:29:17 +00:00
PostOrderIteratorTest.cpp [ADT] Change PostOrderIterator to use NodeRef. NFC. 2016-08-15 21:52:54 +00:00
PriorityWorklistTest.cpp [ADT] Add a new data structure for managing a priority worklist where 2016-06-30 02:32:20 +00:00
RangeAdapterTest.cpp Reapply "ADT: Remove references in has_rbegin for reverse()" 2016-08-18 17:15:25 +00:00
SCCIteratorTest.cpp [ADT] Actually mutate the iterator VisitStack.back().second, not its copy. 2016-08-22 21:59:26 +00:00
ScopeExitTest.cpp [ADT] Add make_scope_exit(). 2016-08-10 17:52:09 +00:00
SequenceTest.cpp Fix warnings in ImmutableSetTest and SequenceTest. 2016-07-17 18:10:30 +00:00
SetVectorTest.cpp [SetVector] Add erase() method 2016-03-25 19:28:08 +00:00
SimpleIListTest.cpp ADT: Add sentinel tracking and custom tags to ilists 2016-09-11 16:20:53 +00:00
SmallPtrSetTest.cpp SmallPtrSetTest: More checks for the swap() testing 2016-01-29 03:34:36 +00:00
SmallStringTest.cpp Revert "Fix Clang-tidy modernize-deprecated-headers warnings in remaining files; other minor fixes." 2016-04-05 20:45:04 +00:00
SmallVectorTest.cpp Revert "Fix Clang-tidy modernize-deprecated-headers warnings in remaining files; other minor fixes." 2016-04-05 20:45:04 +00:00
SparseBitVectorTest.cpp Miscellaneous Fixes for SparseBitVector 2015-07-20 18:26:23 +00:00
SparseMultiSetTest.cpp ADT/SparseMultiSetTest.cpp: Try to appease cygwin-clang on stage2, take two. [-Wsign-compare] 2013-01-22 10:39:31 +00:00
SparseSetTest.cpp [ADT] Add a pop_back_val method to the SparseSet container. 2016-03-14 18:10:41 +00:00
STLExtrasTest.cpp [ADT] Add the worlds simplest STL extra. Or at least close to it. 2016-08-19 02:07:51 +00:00
StringMapTest.cpp Rename StringMap::emplace_second to try_emplace. 2016-07-21 13:37:48 +00:00
StringRefTest.cpp Add StringRef::take_front and StringRef::take_back 2016-08-30 17:29:59 +00:00
TestGraph.h s/static inline/static/ for headers I have changed in r279475. NFC. 2016-08-31 16:48:13 +00:00
TinyPtrVectorTest.cpp [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
TripleTest.cpp Remove the Triple tests that stressing the TargetParser's behaviour. 2016-08-17 03:17:07 +00:00
TwineTest.cpp Teach Twine to support SmallString. 2015-03-17 09:51:17 +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