summaryrefslogtreecommitdiffstats
path: root/libcxx/test/algorithms
Commit message (Collapse)AuthorAgeFilesLines
* Move test into test/std subdirectory.Eric Fiselier2014-12-20145-15343/+0
| | | | llvm-svn: 224658
* Add 'REQUIRES: long_tests' to one more long testJonathan Roelofs2014-12-111-0/+2
| | | | llvm-svn: 224069
* Mark a bunch of long running tests as 'REQUIRES: long_tests'Jonathan Roelofs2014-12-111-0/+2
| | | | | | This lets us skip them as UNSUPPORTED on slow systems like QEMU llvm-svn: 224032
* Fix the tests I broke with the last commit. Sorry for the noiseMarshall Clow2014-11-172-4/+3
| | | | llvm-svn: 222165
* Reworked mismatch tests to count the number of comparisons, and make sure we ↵Marshall Clow2014-11-172-58/+47
| | | | | | are conforming with LWG2404. We are llvm-svn: 222159
* Create a 'comma_iterator' class that overloads operator, and asserts when ↵Marshall Clow2014-09-162-0/+16
| | | | | | it's called. Add tests to mismatch to make sure it can't be blindsided by such an evil iterator. More tests for other algorithms forthcoming. Thanks to STL for pointing this out at CppCon and Yakov Galka for opening LWG issue #2133 llvm-svn: 217902
* Fix PR#202520 - predicate called too many times in list::remove_if. Add ↵Marshall Clow2014-08-041-1/+7
| | | | | | tests for list, forward_list, and the std::remove_if algorithm llvm-svn: 214736
* Fix std::make_heap's worst case time complexityDavid Majnemer2014-07-221-1/+22
| | | | | | | | | | | | | | | | | std::make_heap is currently implemented by iteratively applying a siftup-type algorithm. Since sift-up is O(ln n), this gives std::make_heap a worst case time complexity of O(n ln n). The C++ standard mandates that std::make_heap make no more than O(3n) comparisons, this makes our std::make_heap out of spec. Fix this by introducing an implementation of __sift_down and switch std::make_heap to create the heap using it. This gives std::make_heap linear time complexity in the worst case. This fixes PR20161. llvm-svn: 213615
* Add checking for the complexity guarantees in the standardMarshall Clow2014-06-301-0/+16
| | | | llvm-svn: 212017
* fix typoNico Weber2014-05-292-2/+2
| | | | llvm-svn: 209819
* Fix bug 19840, where some tests were not testing what we wanted. Thanks to ↵Marshall Clow2014-05-232-12/+12
| | | | | | Eric for the bug report llvm-svn: 209520
* Added some tests for equal elements in min_element and max_element. Bug ↵Marshall Clow2014-04-252-0/+36
| | | | | | #19547 was invalid, but we weren't testing that case llvm-svn: 207232
* More LWG issues. Mark #2182, #2323 and #2213 as complete. Add a test for ↵Marshall Clow2014-02-272-0/+2
| | | | | | #2339, and mark that as complete. No actual changes to the libc++ code; all of these were already in place. llvm-svn: 202407
* Implement LWG2350: min, max, and minmax should be constexpr.Marshall Clow2014-02-1912-0/+109
| | | | llvm-svn: 201697
* Taking another swing at correctly optimizing fill_n.Howard Hinnant2013-08-011-0/+41
| | | | llvm-svn: 187587
* Fix a bug in std::fill_n where memset would end up being called in cases ↵Anders Carlsson2013-07-221-0/+53
| | | | | | | | when it shouldn’t. Reviewed by Howard. llvm-svn: 186875
* War on tabs.Howard Hinnant2013-07-083-6/+6
| | | | llvm-svn: 185865
* Implement n3607: 'equal', 'mismatch', and 'is_permutation'Marshall Clow2013-05-096-0/+775
| | | | llvm-svn: 181548
* Somehow search_n never got tested, so of course it had a bug in it. This ↵Howard Hinnant2013-04-042-0/+221
| | | | | | fixes http://llvm.org/bugs/show_bug.cgi?id=15667. llvm-svn: 178764
* Move common header files into a 'support' directory; make 'testit' include ↵Marshall Clow2013-01-0597-97/+97
| | | | | | -I to that directory; rename 'iterators.h' to 'iterator_test.h'; remove hard-coded paths to include files from more than 350 source files llvm-svn: 171594
* ...and then there was one. Only one copy of 'iterators.h' in the test tree ↵Marshall Clow2013-01-0498-411/+97
| | | | | | for libc++ llvm-svn: 171479
* Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574Howard Hinnant2011-08-126-12/+12
| | | | llvm-svn: 137522
* license changeHoward Hinnant2010-11-16143-286/+286
| | | | llvm-svn: 119395
* Changed __config to react to all of clang's currently documented has_feature ↵Howard Hinnant2010-09-0425-93/+93
| | | | | | flags, and renamed _LIBCPP_MOVE to _LIBCPP_HAS_NO_RVALUE_REFERENCES to be more consistent with the rest of the libc++'s flags, and with clang's nomenclature. llvm-svn: 113086
* Fixing whitespace problemsHoward Hinnant2010-08-22123-380/+369
| | | | llvm-svn: 111753
* US 122, N3106Howard Hinnant2010-08-217-18/+81
| | | | llvm-svn: 111742
* Completed [alg.random.shuffle].Howard Hinnant2010-05-263-10/+24
| | | | llvm-svn: 104708
* Wiped out some non-ascii characters that snuck into the copyright.Howard Hinnant2010-05-11143-143/+143
| | | | llvm-svn: 103516
* libcxx initial importHoward Hinnant2010-05-11144-0/+14303
llvm-svn: 103490
OpenPOWER on IntegriCloud