diff options
author | bungeman <bungeman@google.com> | 2016-04-08 06:58:51 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-08 06:58:52 -0700 |
commit | 2c4bd0798e929acb9663668985eabe74d7378c46 (patch) | |
tree | 228e7970c5ab59b655726a28ffc9849a9b8746eb /include/private/SkAtomics.h | |
parent | 6a5d7139ff17a2dfdf136de35f7dd9c94c1f648b (diff) |
Convert SkRefCnt to std::atomic.
This enables removing the more complicated atomic shims from SkAtomics.h.
TBR=reed
This doesn't actually change any API.
CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN-Trybot,Test-Ubuntu-GCC-Golo-GPU-GT610-x86_64-Release-TSAN-Trybot
Review URL: https://codereview.chromium.org/1867863002
Diffstat (limited to 'include/private/SkAtomics.h')
-rw-r--r-- | include/private/SkAtomics.h | 28 |
1 files changed, 0 insertions, 28 deletions
diff --git a/include/private/SkAtomics.h b/include/private/SkAtomics.h index 249723d785..bfe93d8bac 100644 --- a/include/private/SkAtomics.h +++ b/include/private/SkAtomics.h @@ -159,32 +159,4 @@ inline int32_t sk_atomic_add(int32_t* ptr, int32_t v) { return sk_atomic_fetch_a inline int64_t sk_atomic_inc(int64_t* ptr) { return sk_atomic_fetch_add<int64_t>(ptr, +1); } -inline bool sk_atomic_cas(int32_t* ptr, int32_t expected, int32_t desired) { - return sk_atomic_compare_exchange(ptr, &expected, desired); -} - -inline void* sk_atomic_cas(void** ptr, void* expected, void* desired) { - (void)sk_atomic_compare_exchange(ptr, &expected, desired); - return expected; -} - -inline int32_t sk_atomic_conditional_inc(int32_t* ptr) { - int32_t prev = sk_atomic_load(ptr); - do { - if (0 == prev) { - break; - } - } while(!sk_atomic_compare_exchange(ptr, &prev, prev+1)); - return prev; -} - -template <typename T> -T sk_acquire_load(T* ptr) { return sk_atomic_load(ptr, sk_memory_order_acquire); } - -template <typename T> -void sk_release_store(T* ptr, T val) { sk_atomic_store(ptr, val, sk_memory_order_release); } - -inline void sk_membar_acquire__after_atomic_dec() {} -inline void sk_membar_acquire__after_atomic_conditional_inc() {} - #endif//SkAtomics_DEFINED |