Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(205)

Issue 896553002: Atomics overhaul. (Closed)

Created:
5 years, 10 months ago by mtklein_C
Modified:
5 years, 10 months ago
Reviewers:
bungeman-skia, mtklein
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

Atomics overhaul. 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: Committed: https://skia.googlesource.com/skia/+/a669bc7a7ae7580c5cd92067aeb95d09e64ea720

Patch Set 1 #

Patch Set 2 : oops #

Patch Set 3 : 64 #

Patch Set 4 : iOS -> sync #

Patch Set 5 : warning #

Unified diffs Side-by-side diffs Delta from patch set Stats (+213 lines, -358 lines) Patch
M gyp/tools.gyp View 1 chunk +2 lines, -4 lines 0 comments Download
M include/core/SkAtomics.h View 1 2 3 1 chunk +70 lines, -1 line 0 comments Download
D include/core/SkBarriers.h View 1 chunk +0 lines, -15 lines 0 comments Download
M include/core/SkMutex.h View 1 chunk +40 lines, -0 lines 0 comments Download
M include/core/SkThread.h View 1 chunk +1 line, -127 lines 0 comments Download
M include/core/SkThreadPriv.h View 1 chunk +1 line, -10 lines 0 comments Download
A include/ports/SkAtomics_atomic.h View 1 chunk +26 lines, -0 lines 0 comments Download
A include/ports/SkAtomics_std.h View 1 chunk +36 lines, -0 lines 0 comments Download
M include/ports/SkAtomics_sync.h View 1 2 3 4 1 chunk +37 lines, -41 lines 0 comments Download
D include/ports/SkAtomics_win.h View 1 chunk +0 lines, -54 lines 0 comments Download
D include/ports/SkBarriers_arm.h View 1 chunk +0 lines, -36 lines 0 comments Download
D include/ports/SkBarriers_tsan.h View 1 chunk +0 lines, -31 lines 0 comments Download
D include/ports/SkBarriers_x86.h View 1 chunk +0 lines, -39 lines 0 comments Download

Messages

Total messages: 6 (2 generated)
mtklein
5 years, 10 months ago (2015-02-02 19:37:04 UTC) #2
bungeman-skia
lgtm, so far as any atomics thing lgtm
5 years, 10 months ago (2015-02-02 20:14:35 UTC) #3
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/896553002/80001
5 years, 10 months ago (2015-02-02 20:15:41 UTC) #5
commit-bot: I haz the power
5 years, 10 months ago (2015-02-02 20:22:10 UTC) #6
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://skia.googlesource.com/skia/+/a669bc7a7ae7580c5cd92067aeb95d09e64ea720

Powered by Google App Engine
This is Rietveld 408576698