1626 Commits

Author SHA1 Message Date
Howard Hinnant
e3120ed1bf N3188 - Revision to N3113: Async Launch Policies (CH 36)
llvm-svn: 120027
2010-11-23 18:33:54 +00:00
Howard Hinnant
3dc6455ff0 N3191: C++ Timeout Specification
llvm-svn: 119909
2010-11-20 19:16:30 +00:00
Howard Hinnant
092980dd65 N3123
llvm-svn: 119906
2010-11-20 18:25:22 +00:00
Howard Hinnant
ca74048398 N3142. Many of these traits are just placeholders with medium quality emulation; waiting on compiler intrinsics to do it right.
llvm-svn: 119854
2010-11-19 22:17:28 +00:00
Howard Hinnant
d518d1c807 LWG 1522
llvm-svn: 119710
2010-11-18 17:34:48 +00:00
Howard Hinnant
908484b147 LWG 1439
llvm-svn: 119703
2010-11-18 17:01:36 +00:00
Howard Hinnant
48d05bd26c LWG 1339
llvm-svn: 119699
2010-11-18 16:13:03 +00:00
Howard Hinnant
fb34010258 LWG 1432
llvm-svn: 119611
2010-11-18 01:47:02 +00:00
Howard Hinnant
a4a1ef1fc2 LWG 1404
llvm-svn: 119609
2010-11-18 01:40:00 +00:00
Howard Hinnant
d09f711dc2 LWG 1325
llvm-svn: 119571
2010-11-17 21:53:14 +00:00
Howard Hinnant
5ba1459c4c LWG 1323
llvm-svn: 119560
2010-11-17 21:11:40 +00:00
Howard Hinnant
601afb30ec LWG 1191
llvm-svn: 119545
2010-11-17 19:52:17 +00:00
Howard Hinnant
ef6168357a LWG 1118
llvm-svn: 119541
2010-11-17 19:22:43 +00:00
Howard Hinnant
57d1ebcc38 Update <string> to use allocator_traits.
llvm-svn: 119522
2010-11-17 17:55:08 +00:00
Howard Hinnant
412dbebe1b license change
llvm-svn: 119395
2010-11-16 22:09:02 +00:00
Howard Hinnant
9b35c8275c 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';
}

llvm-svn: 119388
2010-11-16 21:33:17 +00:00
Howard Hinnant
c4931c4746 I have reverted all contributions made by Jesse Towner in revision 110724
llvm-svn: 119383
2010-11-16 21:10:23 +00:00
Howard Hinnant
007b26be68 Fixed bug in random_shuffle to avoid swapping with self
llvm-svn: 117098
2010-10-22 15:26:39 +00:00
Howard Hinnant
a7c2f3eac3 [atomics.types.address]
llvm-svn: 117033
2010-10-21 17:44:19 +00:00
Howard Hinnant
f9c02e15c4 atomic_schar, atomic_uchar, atomic_short, atomic_ushort, atomic_int, atomic_uint, atomic_long, atomic_ulong, atomic_llong, atomic_ullong, atomic_char16_t, atomic_char32_t and atomic_wchar_t.
llvm-svn: 116860
2010-10-19 21:22:10 +00:00
Howard Hinnant
d89b01e521 atomic_char
llvm-svn: 116813
2010-10-19 16:51:18 +00:00
Howard Hinnant
b2b5513dcc Changing <atomic> to follow Design A
llvm-svn: 116742
2010-10-18 20:39:07 +00:00
Howard Hinnant
10e4a48a26 Convert __thread_local_data to the singleton pattern
llvm-svn: 116500
2010-10-14 19:18:04 +00:00
Howard Hinnant
a65a935ba4 Bug 7983 fixed by Bernhard Rosenkraenzer
llvm-svn: 116487
2010-10-14 17:11:39 +00:00
Howard Hinnant
e79d71e2e3 Patch by Marshall Clow to make the assignment operators of piecewise_constant_distribution and piecewise_linear_distribution exception safe.
llvm-svn: 116404
2010-10-13 14:37:09 +00:00
Howard Hinnant
0f444b3b16 Corrected an inconsistency with recent changes in tuple, and perfect forwarding within bind
llvm-svn: 115930
2010-10-07 18:03:23 +00:00
Howard Hinnant
772699070e Make flag type configurable by the compiler
llvm-svn: 115614
2010-10-05 14:02:23 +00:00
Howard Hinnant
69c3cb85ab Thanks Sebastian\!
llvm-svn: 115612
2010-10-05 13:38:23 +00:00
Howard Hinnant
668523a1b8 Filling out the infrastructure in <atomic>
llvm-svn: 115577
2010-10-04 23:55:35 +00:00
Howard Hinnant
d5a97fc683 __has_feature crutch
llvm-svn: 115540
2010-10-04 19:01:30 +00:00
Howard Hinnant
2b672e24a5 Still working on the basic design of <atomic>. I'm working towards a system by which the compiler only needs to define the strongest intrinsics it can. Weaker atomics in the library automatically try stronger and stronger variants, picking the weakest compiler intrinsic available. If no compiler intrinsics are available for a given operation, the library locks a mutex and does the job. Better documentation to follow...
llvm-svn: 115538
2010-10-04 18:52:54 +00:00
Howard Hinnant
2ec672fff5 Tweak to make clang blocks work with std::functional (very fragile)
llvm-svn: 115461
2010-10-03 13:59:56 +00:00
Howard Hinnant
748a5279b1 [atomics.flag] completed. Initialization is not working on clang and can't be made to work without defaulted default constructors.
llvm-svn: 115207
2010-09-30 21:05:29 +00:00
Howard Hinnant
a31e741ac9 Name change of intrinsics as suggested by Jeffrey Yasskin
llvm-svn: 115145
2010-09-30 14:04:35 +00:00
Howard Hinnant
88efc1c7a5 Contemplating this <atomic> reorganization...
llvm-svn: 115087
2010-09-29 21:20:03 +00:00
Howard Hinnant
7387390d6e Wrestling with the slowly dawning realization that <atomic> isn't implementable on any compiler at my disposal...
llvm-svn: 115054
2010-09-29 18:13:54 +00:00
Howard Hinnant
cfe0b0a1ab [atomics.order]
llvm-svn: 114966
2010-09-28 17:13:38 +00:00
Howard Hinnant
cd39d413b4 Getting started on <atomic>
llvm-svn: 114887
2010-09-27 21:17:38 +00:00
Howard Hinnant
f5241d7586 Bugzilla 8231
llvm-svn: 114851
2010-09-27 18:09:23 +00:00
Howard Hinnant
30ad985b6b Cleaning up some tuple code.
llvm-svn: 114848
2010-09-27 17:54:17 +00:00
Howard Hinnant
789847ddbb visibility-decoration sweep completed.
llvm-svn: 114685
2010-09-23 18:58:28 +00:00
Howard Hinnant
e060133553 visibility-decoration.
llvm-svn: 114671
2010-09-23 17:31:07 +00:00
Howard Hinnant
53ec0b4e8e visibility-decoration.
llvm-svn: 114658
2010-09-23 16:27:36 +00:00
Howard Hinnant
3e84caaebb visibility-decoration.
llvm-svn: 114647
2010-09-23 15:13:20 +00:00
Howard Hinnant
392183f99d visibility-decoration.
llvm-svn: 114559
2010-09-22 18:02:38 +00:00
Howard Hinnant
848a5374d0 visibility-decoration.
llvm-svn: 114551
2010-09-22 16:48:34 +00:00
Howard Hinnant
3030b2f1ab visibility-decoration.
llvm-svn: 114545
2010-09-22 15:29:08 +00:00
Howard Hinnant
a3988679f9 visibility-decoration.
llvm-svn: 114543
2010-09-22 14:16:26 +00:00
Howard Hinnant
0af133f941 visibility-decoration.
llvm-svn: 114496
2010-09-21 22:55:27 +00:00
Howard Hinnant
fb100021b7 visibility-decoration.
llvm-svn: 114486
2010-09-21 21:28:23 +00:00