181496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org/*
281496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org * Copyright 2014 Google Inc.
381496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org *
481496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org * Use of this source code is governed by a BSD-style license that can be
581496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org * found in the LICENSE file.
681496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org */
781496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
881496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org#ifndef SkThreadPriv_DEFINED
981496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org#define SkThreadPriv_DEFINED
1081496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
1181496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org#include "SkTypes.h"
1281496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
1381496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org// SK_ATOMICS_PLATFORM_H must provide inline implementations for the following declarations.
1481496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
1581496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org/** Atomic compare and set, for pointers.
1681496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org *  If *addr == before, set *addr to after.  Always returns previous value of *addr.
1797de357270e54be53acb17e1cb4b4d5e25bacc01commit-bot@chromium.org *  This must issue a release barrier on success, acquire on failure, and always a compiler barrier.
1881496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org */
1981496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.orgstatic void* sk_atomic_cas(void** addr, void* before, void* after);
2081496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
2181496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org#include SK_ATOMICS_PLATFORM_H
2281496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org
2381496fb21637cc8d2a2b45a790e0f9d6d6f769c4commit-bot@chromium.org#endif//SkThreadPriv_DEFINED
24