| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
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.
llvm-svn: 121267
|
|
|
|
| |
llvm-svn: 121204
|
|
|
|
| |
llvm-svn: 121181
|
|
|
|
|
|
| |
And I believe the intrinsic spec at http://libcxx.llvm.org/atomic_design_a.html is still good.
llvm-svn: 121064
|
|
|
|
| |
llvm-svn: 117033
|
|
|
|
|
|
| |
atomic_uint, atomic_long, atomic_ulong, atomic_llong, atomic_ullong, atomic_char16_t, atomic_char32_t and atomic_wchar_t.
llvm-svn: 116860
|
|
|
|
| |
llvm-svn: 116813
|
|
|
|
| |
llvm-svn: 116742
|
|
|
|
| |
llvm-svn: 115614
|
|
|
|
| |
llvm-svn: 115577
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
be made to work without defaulted default constructors.
llvm-svn: 115207
|
|
|
|
| |
llvm-svn: 115145
|
|
|
|
| |
llvm-svn: 115087
|
|
|
|
|
|
| |
implementable on any compiler at my disposal...
llvm-svn: 115054
|
|
|
|
| |
llvm-svn: 114966
|
|
llvm-svn: 114887
|