History log of /system/core/include/cutils/atomic.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c56648948c93ba6223770755609fafeab2c23cb5 05-Oct-2014 Hans Boehm <hboehm@google.com> Second attempt to "Rewrite atomic.h to use stdatomic.h."

This should not be committed until win_sdk and aarch64 builds are
fixed in the presence of this CL.

This reverts commit 2789faabfa9cdf16902a52a1de3fc4a7ae98efed.

We additionally remove uniprocessor support from the earlier CL,
thus avoiding a potential compiler code reordering issue.

Change-Id: I7207a5ca2efa907a6f757f172d7090a62b2311fe
/system/core/include/cutils/atomic.h
2789faabfa9cdf16902a52a1de3fc4a7ae98efed 04-Oct-2014 Hans Boehm <hboehm@google.com> Revert "Rewrite atomic.h to use stdatomic.h."

This reverts commit cb344d464009337c283431dec4441b70481d1a49.

Change-Id: Ib17cd8d00695062177ce863cedc4ec7148012317
/system/core/include/cutils/atomic.h
cb344d464009337c283431dec4441b70481d1a49 01-Oct-2014 Hans Boehm <hboehm@google.com> Rewrite atomic.h to use stdatomic.h.

Replace atomic-inl.h with a file that just includes atomic.h.
Remove platform specific implementations.

Change-Id: If16d74fbe0af7836ed8c1296c17e13a2d0d20f64
/system/core/include/cutils/atomic.h
9959ed953069ac9a7f08bebd2df55440e9370c0f 01-Aug-2014 Hans Boehm <hboehm@google.com> Remove android_... store_barriers and 64-bit atomics.

These are no longer used, and we want to strongly discourage future use.
Keep the 32-bit variants while there are still uses. All users should move
to C11 or C++11 atomics.

Change-Id: I122b541cfd29ef4a6c932647f85d0d6a9d802061
/system/core/include/cutils/atomic.h
5af7877950ea5f96b6522e5210966365ece04e25 12-Jul-2014 Hans Boehm <hboehm@google.com> Add comment to discourage use of cutils/atomic.h.

Change-Id: Ib05c745158fdf5a11fd4697c3665a6370ffc04f5
/system/core/include/cutils/atomic.h
c15d2ce5fcb98bdf2261e365ce8f59122173172a 13-Nov-2013 Ashok Bhat <ashok.bhat@arm.com> AArch64: Add atomic functions

This patch adds atomic functions for AArch64. The functions
will be revisited later for potential optimizations using
assembly or otherwise.

This patch also introduces new 64-bit atomic functions for
LP64 platforms.

Change-Id: Id2127dd01cea65025f939e955d73d27e95d8687e
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
/system/core/include/cutils/atomic.h
0a16d839698e46e87268707e79e66f51a42b932e 23-Jan-2011 Carl Shapiro <cshapiro@google.com> Remove unconditional swap from the android atomic operations suite.

Bug: 3381237
Change-Id: I7bdc7c8eb4c1cc6303d96e40ca2f196a007c4dd2
/system/core/include/cutils/atomic.h
d55f0adfb5ec4202ad5bd5d188e66c0f6a27b0aa 28-Sep-2010 Carl Shapiro <cshapiro@google.com> Qualify the source argument of atomic loads as a const pointer.

Also normalizes the opening brace placment in a few locations.

Change-Id: I8f518e933094337d5d3371321326ffc03b3a5f5a
/system/core/include/cutils/atomic.h
93b0cb40c18cae594c931677be2b9214420610b7 04-Jun-2010 Carl Shapiro <cshapiro@google.com> Define inline atomic operations for x86 and ARM.

This change moves the ARM definitions into GCC extended inline
assembler. In addition, the same set of x86 definitions are now
shared among all x86 targets.

Change-Id: I6e5aa3a413d0af2acbe5d32994983d35a01fdcb3
/system/core/include/cutils/atomic.h
8dfa47da8cb33ebaf7aae6db6548e75ed86e8f1e 27-May-2010 Andy McFadden <fadden@android.com> Atomic/SMP update, part 2.

Added new atomic functions, renamed some old ones. Some #defines have
been added for backward compatibility.

Merged the pre- and post-ARMv6 implementations into a single file.

Renamed the semi-private __android_membar_full_smp to USE_SCREAMING_CAPS
since that's more appropriate for a macro.

Added lots of comments.

Note Mac OS X primitives have not been tested.

Change-Id: If827260750aeb61ad5c2b760e30658e29dbb26f2
/system/core/include/cutils/atomic.h
ac322da69ee48aa792baf5c48cfb719ce077f67e 20-May-2010 Andy McFadden <fadden@android.com> Atomic/SMP update.

Added atomic-inline.h. Added a platform-specific memory barrier call
there.

Added android_atomic_acquire_cmpxchg() and android_atomic_release_store().
Not tested on Mac OS X or SH.

Added memory barrier calls to linux-x86 atomics. Mac OS X has barrier
functions already. sh isn't really SMP-ready. linux-arm needs work
(to be done in a separate change).

Updated the makefile to make the SMP state visible to the code here.
Note that host binaries are NOT built with SMP enabled; while our hosts
are very likely SMP, it's not worth figuring out e.g. whether it's okay
to use the SSE2 mfence instruction or have to use something else. We
haven't had barriers enabled in host tools before, so there's probably
no need to stat now.

Removed quasiatomic 64-bit calls (now part of Dalvik).

Change-Id: I49e5e6c8abe70f304cdedb9d7b8e6e65f8925815
/system/core/include/cutils/atomic.h
dd7bc3319deb2b77c5d07a51b7d6cd7e11b5beb0 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/system/core/include/cutils/atomic.h
e54eebbf1a908d65ee8cf80bab62821c05666d70 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/system/core/include/cutils/atomic.h
4f6e8d7a00cbeda1e70cc15be9c4af1018bdad53 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/system/core/include/cutils/atomic.h