skia2/include/ports
mtklein a669bc7a7a 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:

Review URL: https://codereview.chromium.org/896553002
2015-02-02 12:22:07 -08:00
..
SkAtomics_atomic.h Atomics overhaul. 2015-02-02 12:22:07 -08:00
SkAtomics_std.h Atomics overhaul. 2015-02-02 12:22:07 -08:00
SkAtomics_sync.h Atomics overhaul. 2015-02-02 12:22:07 -08:00
SkFontConfigInterface.h SkTypeface to use SkStreamAsset. 2015-01-27 05:39:10 -08:00
SkFontMgr_indirect.h SkTypeface to use SkStreamAsset. 2015-01-27 05:39:10 -08:00
SkFontMgr.h SkTypeface to use SkStreamAsset. 2015-01-27 05:39:10 -08:00
SkMutex_pthread.h Move sync code to include/, switch from using platform define to a proxy header in core/ 2015-01-21 13:13:31 -08:00
SkMutex_win.h Move sync code to include/, switch from using platform define to a proxy header in core/ 2015-01-21 13:13:31 -08:00
SkRemotableFontMgr.h Remove SK_FM_NEW_MATCH_FAMILY_STYLE_CHARACTER. 2014-11-10 13:29:33 -08:00
SkTypeface_android.h Delete the old font management implementation based on SkFontConfigInterface, now that SkFontMgr_Android is live. 2014-08-13 10:41:25 -07:00
SkTypeface_mac.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTypeface_win.h Pass the IDWriteFactory instead of relying on a global creator. 2014-03-31 19:18:07 +00:00