Howard Hinnant
|
1b18a48e28
|
cleaning up...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121275 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-08 20:09:09 +00:00 |
|
Howard Hinnant
|
770d1c4ea7
|
After a long break to wait for the atomic spec to settle, this completes the library part of <atomic>. It currently won't even parse as it depends on the existence of the intrinsics specified at http://libcxx.llvm.org/atomic_design_a.html. Everything has been tested using fake intrinsics which have now been removed. As the intrinsics come online, the ATOMIC_* macros will need to be adjusted to reflect which operations are lock-free. These macros will probably need to be #ifdef'd for each supported platform.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121267 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-08 17:20:28 +00:00 |
|
Michael J. Spencer
|
c9f5d9fca6
|
test: Rename string_op+= to string_op_plus_equal. Windows git doesn't like it.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121265 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-08 17:06:47 +00:00 |
|
Howard Hinnant
|
d2f6afbfab
|
atomics ...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121204 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-07 23:24:41 +00:00 |
|
Howard Hinnant
|
57e5e87323
|
atomics ...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121203 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-07 23:24:09 +00:00 |
|
Howard Hinnant
|
f02417b600
|
atomics ...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121202 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-07 23:20:28 +00:00 |
|
Howard Hinnant
|
91e2f26fec
|
Work on <atomic> continues. The file size is actually sane now...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121181 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-07 20:46:14 +00:00 |
|
Howard Hinnant
|
4777bf2799
|
Getting <atomic> warmed back up. We have a hopefully more stable spec now. And I believe the intrinsic spec at http://libcxx.llvm.org/atomic_design_a.html is still good.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121064 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-06 23:10:08 +00:00 |
|
Howard Hinnant
|
7a0248d2d7
|
Add a couple more std-qualifers.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@121002 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-06 15:11:48 +00:00 |
|
Howard Hinnant
|
d42c4beeff
|
oops, forgot std::
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120915 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-04 19:56:43 +00:00 |
|
Howard Hinnant
|
1f970ad73a
|
Fix up uses of new/terminate/unexpected handlers to use the new getters.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120914 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-04 19:54:11 +00:00 |
|
Howard Hinnant
|
55ddb21dd4
|
Add typeinfo for char16_t, char32_t and nullptr.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120810 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-03 17:25:24 +00:00 |
|
Howard Hinnant
|
a445151f4a
|
N3189 Observers for the three handler functions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120712 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-12-02 16:45:21 +00:00 |
|
Howard Hinnant
|
7de47902d0
|
Implemented N3194
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120458 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-30 20:23:32 +00:00 |
|
Howard Hinnant
|
ac417faebc
|
Minor fixup in <ratio> and add optional support for shared_mutex and upgrade_mutex which must be opted into with #define _LIBCPP_SHARED_LOCK
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120258 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-28 19:41:07 +00:00 |
|
Howard Hinnant
|
d397d03651
|
Add template alias emulation to <ratio>
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120098 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-24 17:05:06 +00:00 |
|
Howard Hinnant
|
c706565c88
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120064 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 22:13:07 +00:00 |
|
Howard Hinnant
|
6051e24e45
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120058 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:55:56 +00:00 |
|
Howard Hinnant
|
adaa6266fe
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120057 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:55:36 +00:00 |
|
Howard Hinnant
|
8771430346
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120054 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:47:09 +00:00 |
|
Howard Hinnant
|
46ab5def62
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120052 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:45:26 +00:00 |
|
Howard Hinnant
|
fa5043d878
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120050 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:41:07 +00:00 |
|
Howard Hinnant
|
83b6979fa2
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120047 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:29:54 +00:00 |
|
Howard Hinnant
|
59a5ddbbd1
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120046 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:27:28 +00:00 |
|
Howard Hinnant
|
afff5aacd6
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120045 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:26:48 +00:00 |
|
Howard Hinnant
|
17c3a81048
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120043 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:25:10 +00:00 |
|
Howard Hinnant
|
5711e4daf0
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120041 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:22:13 +00:00 |
|
Howard Hinnant
|
6587dfe980
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120040 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 20:21:36 +00:00 |
|
Howard Hinnant
|
73d2f94f6b
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120036 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 19:52:19 +00:00 |
|
Howard Hinnant
|
091f2ab44f
|
Update testsuite strucuture to latest draft
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120029 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 19:15:49 +00:00 |
|
Howard Hinnant
|
6689564040
|
N3188 - Revision to N3113: Async Launch Policies (CH 36)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@120027 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-23 18:33:54 +00:00 |
|
Howard Hinnant
|
f8f852138f
|
N3191: C++ Timeout Specification
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119909 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-20 19:16:30 +00:00 |
|
Howard Hinnant
|
f048fe3a09
|
N3123
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119906 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-20 18:25:22 +00:00 |
|
Howard Hinnant
|
1468b668aa
|
N3142. Many of these traits are just placeholders with medium quality emulation; waiting on compiler intrinsics to do it right.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119854 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-19 22:17:28 +00:00 |
|
Howard Hinnant
|
01feecb789
|
type_traits intrinsics design
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119776 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-19 01:48:13 +00:00 |
|
Howard Hinnant
|
9835d76169
|
type_traits intrinsics design
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119775 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-19 01:38:58 +00:00 |
|
Howard Hinnant
|
995676a98e
|
LWG 1522
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119710 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-18 17:34:48 +00:00 |
|
Howard Hinnant
|
9650b6cce3
|
LWG 1439
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119703 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-18 17:01:36 +00:00 |
|
Howard Hinnant
|
2f6a627394
|
LWG 1339
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119699 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-18 16:13:03 +00:00 |
|
Howard Hinnant
|
278bf2d289
|
LWG 1432
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119611 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-18 01:47:02 +00:00 |
|
Howard Hinnant
|
47761071be
|
LWG 1404
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119609 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-18 01:40:00 +00:00 |
|
Howard Hinnant
|
34d6b19721
|
LWG 1325
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119571 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-17 21:53:14 +00:00 |
|
Howard Hinnant
|
7b2cb48cc1
|
LWG 1323
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119560 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-17 21:11:40 +00:00 |
|
Howard Hinnant
|
cd2254b454
|
LWG 1191
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119545 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-17 19:52:17 +00:00 |
|
Howard Hinnant
|
86ed8aefb2
|
LWG 1118
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119541 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-17 19:22:43 +00:00 |
|
Howard Hinnant
|
e32b5e2f23
|
Update <string> to use allocator_traits.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119522 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-17 17:55:08 +00:00 |
|
Howard Hinnant
|
b64f8b07c1
|
license change
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119395 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-16 22:09:02 +00:00 |
|
Chris Lattner
|
f38bc6efc5
|
libc++ is now dual licensed under both UIUC and MIT licenses.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119391 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-16 21:40:19 +00:00 |
|
Chris Lattner
|
662497edd2
|
add a credits file for libc++
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119390 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-16 21:39:15 +00:00 |
|
Howard Hinnant
|
28dbbe0596
|
Dave Zarzycki showed how the efficiency of shared_ptr could be significantly
increased. The following program is running 49% faster:
#include <iostream>
#include <memory>
#include <chrono>
#include <vector>
#include "chrono_io"
int main()
{
typedef std::chrono::high_resolution_clock Clock;
Clock::time_point t0 = Clock::now();
{
std::shared_ptr<int> p(new int (1));
std::vector<std::shared_ptr<int> > v(1000000, p);
v.insert(v.begin(), p);
v.insert(v.begin(), p);
v.insert(v.begin(), p);
v.insert(v.begin(), p);
}
Clock::time_point t1 = Clock::now();
std::cout << (t1-t0) << '\n';
}
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@119388 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-11-16 21:33:17 +00:00 |
|