aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/ports/SkAtomics_std.h
Commit message (Collapse)AuthorAge
* Revert of Parallel cache - preliminary (patchset #22 id:420001 of ↵Gravatar herb2015-09-04
| | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1264103003/ ) Reason for revert: Seems to freeze android devices. Original issue's description: > Parallel cache. > > TBR=reed@google.com > > BUG=skia:1330 > > Committed: https://skia.googlesource.com/skia/+/6f2a486040cb25465990196c229feb47e668e87f TBR=reed@google.com,mtklein@google.com,mtklein@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:1330 Review URL: https://codereview.chromium.org/1327703003
* Parallel cache.Gravatar herb2015-09-04
| | | | | | | | TBR=reed@google.com BUG=skia:1330 Review URL: https://codereview.chromium.org/1264103003
* Extract the spinlock from SkOnce as SkSpinlock.Gravatar mtklein2015-03-30
| | | | | | | | | | | This uses slightly newer APIs from SkAtomics.h to make it a bit more efficient. No public API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/1039323002
* SkAtomics: add asserts for valid memory orders.Gravatar mtklein2015-02-09
| | | | | | | | | | | Taken from http://en.cppreference.com/w/cpp/atomic/atomic and https://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html, which agree. No public API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/868843003
* Atomics overhaul.Gravatar mtklein2015-02-02
This merges and refactors SkAtomics.h and SkBarriers.h into SkAtomics.h and some ports/ implementations. The major new feature is that we can express memory orders explicitly rather than only through comments. The porting layer is reduced to four template functions: - sk_atomic_load - sk_atomic_store - sk_atomic_fetch_add - sk_atomic_compare_exchange From those four we can reconstruct all our previous sk_atomic_foo. There are three ports: - SkAtomics_std: uses C++11 <atomic>, used with MSVC - SkAtomics_atomic: uses newer GCC/Clang intrinsics, used on not-MSVC where possible - SkAtomics_sync: uses older GCC/Clang intrinsics, used where SkAtomics_atomic not supported No public API changes. TBR=reed@google.com BUG=skia: Review URL: https://codereview.chromium.org/896553002