summaryrefslogtreecommitdiffstats
path: root/libcxx/test/thread
Commit message (Collapse)AuthorAgeFilesLines
* Split thread test into two parts. Mark one as XFAIL with ASAN.Eric Fiselier2014-11-152-22/+75
| | | | | | | | The second part of the test checks that std::terminate is called when a running thread is move assigned to. Calling std::terminate prevents some of the destructors to be called and ASAN fires on this. llvm-svn: 222076
* Mark another test as UNSUPPORTED with ASAN and MSANEric Fiselier2014-11-041-0/+2
| | | | llvm-svn: 221275
* Add support for "fancy" pointers to promise and packaged_task.Eric Fiselier2014-10-232-0/+60
| | | | | | | | | | | | | | | | | | | | | Summary: This patch is very closely related to D4859. Please see http://reviews.llvm.org/D4859 for more information. This patch adds support for "fancy" pointers and allocators to promise and packaged_task. The changes made to support this are exactly the same as in D4859. Test Plan: "fancy" pointer tests were added to each constructor affected by the change. Reviewers: danalbert, mclow.lists Reviewed By: mclow.lists Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D4862 llvm-svn: 220471
* Allow libc++ to be built on systems without POSIX threadsJonathan Roelofs2014-09-05196-0/+418
| | | | | | | | | | If you're crazy enough to want this sort of thing, then add -D_LIBCPP_HAS_NO_THREADS to your CXXFLAGS and --param=additiona_features=libcpp-has-no-threads to your lit commnad line. http://reviews.llvm.org/D3969 llvm-svn: 217271
* Handle partial nanosleeps in this_thread::sleep_forDavid Majnemer2014-06-041-0/+20
| | | | | | | | | | Signals may result in nanosleep returning with only some of the requested sleeping performed. Utilize nanosleep's "time-remaining" out parameter to continue sleeping when this occurs. llvm-svn: 210210
* Fix XFAIL condition from r208840Justin Bogner2014-05-311-3/+3
| | | | | | | The XFAILs in r208840 were too general. They were meant to only apply to testing when use_system_lib was set. llvm-svn: 209972
* Work around ABI differences due to LWG 2056 in testsJustin Bogner2014-05-152-1/+16
| | | | | | | | | When testing against the system library, there is a relatively minor ABI breakage that the std::future_errc values have been changed to avoid using zero. Update the tests that rely on the values being consistent. llvm-svn: 208840
* Fix PR19819Marshall Clow2014-04-072-1/+43
| | | | llvm-svn: 205709
* Add tests that should fail when lock() throws. THis is part of LWG issue ↵Marshall Clow2014-03-262-0/+104
| | | | | | #2135. No library changes here. llvm-svn: 204777
* Add a test to make sure we're doing the right thing for throwing exceptions ↵Marshall Clow2014-03-241-0/+19
| | | | | | from deferred functions. This is LWG issue #2186. No change to the library needed. llvm-svn: 204678
* Implement N3891: A proposal to rename shared_mutex to shared_timed_mutexDavid Majnemer2014-03-1727-72/+72
| | | | | | | | | | This is as straightforward as it sounds, a renamed from shared_mutex to shared_timed_mutex. Note that libcxx .dylib and .so files built with c++14 support need to be rebuilt. llvm-svn: 204078
* Albert Wong: Fix thread.thread.id/lt.pass.cpp to not assume thread::id() ↵Howard Hinnant2014-02-041-4/+10
| | | | | | produces a minimal value. This enables this test to pass on andriod arm. llvm-svn: 200793
* Add license headers to a bunch of libc++ files that were missing them. No ↵Marshall Clow2014-01-161-0/+9
| | | | | | functionality change. Fixes 18291. Thanks to Nico for the bug report and the patch. llvm-svn: 199400
* Make cv_status a class enum. Fixes PR18314. Thanks to Andersca for the ↵Marshall Clow2013-12-231-2/+2
| | | | | | report and the patch. llvm-svn: 197921
* LWG Issue 2097: packaged_task constructors should be constrainedMarshall Clow2013-10-123-0/+85
| | | | llvm-svn: 192544
* N3659: Shared locking in C++ Revision 2, c++1y onlyHoward Hinnant2013-09-2136-1/+1780
| | | | llvm-svn: 191127
* Marshall Clow: LWG Issue 2056: future_errc enums start with value 0 ↵Howard Hinnant2013-09-141-3/+3
| | | | | | (invalid value for broken_promise). llvm-svn: 190756
* Constrain launch ~ operator to defined bits.Howard Hinnant2013-07-021-1/+1
| | | | llvm-svn: 185452
* Add operators to make launch a bitmask type. Searched all of the standard, ↵Howard Hinnant2013-06-291-0/+16
| | | | | | and libc++ to see if this error occurred elsewhere and didn't see any other place. This fixes http://llvm.org/bugs/show_bug.cgi?id=16207 llvm-svn: 185265
* Fixed race conditions in thread tests; exposed by UBSanMarshall Clow2013-03-2612-15/+15
| | | | llvm-svn: 178029
* This is a start at making the libc++ test suite friendlier to the ↵Howard Hinnant2013-03-231-1/+6
| | | | | | -fnoexceptions flag. Although this is not a complete solution, it does reduce the number of test failures on OS X from 467 to 128 on OS X when -fno-exceptions is enabled, and does not impact the number of failures at all when -fno-exceptions is not enabled. The bulk of this code was donated anonymously. llvm-svn: 177824
* Fix a bug in mutex_try_to_lock. This was previously trying to unlock a ↵David Chisnall2013-02-191-1/+0
| | | | | | | | | | mutex that it didn't own, causing an assertion failure in mutex.cpp. The issue was that the unique_lock went out of scope, releasing the lock on m, then m.unlock() was called on an already-unlocked mutex. This change removes the spurious m.unlock() call. If this test was previously passing for anyone with assertions enabled, then they should investigate bugs in their pthread implementation, as pthread_unlock() should not return 0 if the mutex is currently unlocked. llvm-svn: 175506
* [tests] Another batch of timeout increases.Daniel Dunbar2013-02-118-12/+12
| | | | llvm-svn: 174902
* [tests] Another batch of timeout increases.Daniel Dunbar2013-02-085-5/+5
| | | | llvm-svn: 174726
* [tests] Increase a bunch of wait limits.Daniel Dunbar2013-02-0811-12/+12
| | | | | | | | | | - Basically I just ran the thread tests many many times on a busy machine and bumped the timeouts whenever I hit a test failure. - This is obviously subpar, but is the best I can do without the tests being rewritten to not depend on arbitrary timeouts. llvm-svn: 174721
* Give a lot more timing latitude to some of the timing tests. Busy buildbots ↵Howard Hinnant2013-02-065-8/+8
| | | | | | are hitting the timing limits too often. llvm-svn: 174539
* Loosen up the timing requirements on 4 more tests.Howard Hinnant2012-08-044-4/+4
| | | | llvm-svn: 161289
* noexcept and constexpr applied to <mutex>.Howard Hinnant2012-07-211-1/+8
| | | | llvm-svn: 160604
* Relax the tolerances on some timing tests.Howard Hinnant2012-07-202-2/+2
| | | | llvm-svn: 160566
* update test for explicit bool operator.Howard Hinnant2012-02-251-3/+3
| | | | llvm-svn: 151461
* Fix http://llvm.org/bugs/show_bug.cgi?id=11428. Fix provided by Alberto ↵Howard Hinnant2011-12-024-12/+13
| | | | | | Ganesh Barbati llvm-svn: 145698
* This commit was accidental. Reverting.Howard Hinnant2011-05-181-2/+2
| | | | llvm-svn: 131514
* A bunch of future tests got invalidated with the latest updates to thread. ↵Howard Hinnant2011-05-1717-47/+47
| | | | | | Fixed the tests. llvm-svn: 131509
* Clean up a bunch of warnings in the tests, 3 of which actually turned out to ↵Howard Hinnant2011-05-173-3/+3
| | | | | | be test bugs. llvm-svn: 131479
* Brought call_once variadic call up to current spec, which allows move-only ↵Howard Hinnant2011-05-161-0/+20
| | | | | | functors and move-only arguments, but disallows functors with non-const lvalue reference parameters. llvm-svn: 131414
* Brought thread variadic constructor up to current spec, which allows ↵Howard Hinnant2011-05-161-0/+20
| | | | | | move-only functors and move-only arguments, but disallows functors with non-const lvalue reference parameters. llvm-svn: 131413
* Implemented N3194Howard Hinnant2010-11-3018-695/+37
| | | | llvm-svn: 120458
* Update testsuite strucuture to latest draftHoward Hinnant2010-11-237-0/+84
| | | | llvm-svn: 120064
* Update testsuite strucuture to latest draftHoward Hinnant2010-11-2315-608/+0
| | | | llvm-svn: 120058
* Update testsuite strucuture to latest draftHoward Hinnant2010-11-2315-0/+608
| | | | llvm-svn: 120057
* Update testsuite strucuture to latest draftHoward Hinnant2010-11-2312-0/+0
| | | | llvm-svn: 120054
* N3188 - Revision to N3113: Async Launch Policies (CH 36)Howard Hinnant2010-11-232-8/+8
| | | | llvm-svn: 120027
* N3191: C++ Timeout SpecificationHoward Hinnant2010-11-2011-15/+15
| | | | llvm-svn: 119909
* license changeHoward Hinnant2010-11-16211-422/+422
| | | | llvm-svn: 119395
* Relaxing timing test a bit to avoid spurious test failures under loadHoward Hinnant2010-10-071-2/+2
| | | | llvm-svn: 115920
* fixing whitespaceHoward Hinnant2010-09-281-1/+1
| | | | llvm-svn: 114967
* Fix whitespaceHoward Hinnant2010-09-041-1/+1
| | | | llvm-svn: 113089
* Changed __config to react to all of clang's currently documented has_feature ↵Howard Hinnant2010-09-0415-34/+34
| | | | | | 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
* [futures.atomic_future] and notify_all_at_thread_exit. This completes the ↵Howard Hinnant2010-09-0311-2/+747
| | | | | | header <future> and all of Chapter 30 (for C++0x enabled compilers). llvm-svn: 113017
* [futures.shared_future]Howard Hinnant2010-09-0311-0/+864
| | | | llvm-svn: 112990
OpenPOWER on IntegriCloud