diff options
author | Carl Shapiro <cshapiro@google.com> | 2010-09-28 17:38:03 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-09-28 17:38:03 -0700 |
commit | a4176578804e1b300f7652919161be035cf3cfd2 (patch) | |
tree | 2f9a43b7b3f8df2dfbb583bb1be38860973ddb62 /include/cutils | |
parent | 579ca37361b2b1ea9aa62d6b450866e1f48db064 (diff) | |
parent | df2f5a07aecac7be4ac2d1100668a0396fd256e7 (diff) | |
download | system_core-a4176578804e1b300f7652919161be035cf3cfd2.zip system_core-a4176578804e1b300f7652919161be035cf3cfd2.tar.gz system_core-a4176578804e1b300f7652919161be035cf3cfd2.tar.bz2 |
am df2f5a07: am d55f0adf: Qualify the source argument of atomic loads as a const pointer.
Merge commit 'df2f5a07aecac7be4ac2d1100668a0396fd256e7'
* commit 'df2f5a07aecac7be4ac2d1100668a0396fd256e7':
Qualify the source argument of atomic loads as a const pointer.
Diffstat (limited to 'include/cutils')
-rw-r--r-- | include/cutils/atomic-arm.h | 10 | ||||
-rw-r--r-- | include/cutils/atomic-x86.h | 18 | ||||
-rw-r--r-- | include/cutils/atomic.h | 4 |
3 files changed, 20 insertions, 12 deletions
diff --git a/include/cutils/atomic-arm.h b/include/cutils/atomic-arm.h index 3ed9af2..5e27d03 100644 --- a/include/cutils/atomic-arm.h +++ b/include/cutils/atomic-arm.h @@ -65,14 +65,14 @@ extern inline void android_memory_store_barrier(void) } #endif -extern inline int32_t android_atomic_acquire_load(volatile int32_t *ptr) +extern inline int32_t android_atomic_acquire_load(volatile const int32_t *ptr) { int32_t value = *ptr; android_memory_barrier(); return value; } -extern inline int32_t android_atomic_release_load(volatile int32_t *ptr) +extern inline int32_t android_atomic_release_load(volatile const int32_t *ptr) { android_memory_barrier(); return *ptr; @@ -212,11 +212,13 @@ extern inline int32_t android_atomic_add(int32_t increment, } #endif -extern inline int32_t android_atomic_inc(volatile int32_t *addr) { +extern inline int32_t android_atomic_inc(volatile int32_t *addr) +{ return android_atomic_add(1, addr); } -extern inline int32_t android_atomic_dec(volatile int32_t *addr) { +extern inline int32_t android_atomic_dec(volatile int32_t *addr) +{ return android_atomic_add(-1, addr); } diff --git a/include/cutils/atomic-x86.h b/include/cutils/atomic-x86.h index 834379d..bce23ad 100644 --- a/include/cutils/atomic-x86.h +++ b/include/cutils/atomic-x86.h @@ -44,25 +44,29 @@ extern inline void android_memory_store_barrier(void) } #endif -extern inline int32_t android_atomic_acquire_load(volatile int32_t *ptr) { +extern inline int32_t android_atomic_acquire_load(volatile const int32_t *ptr) +{ int32_t value = *ptr; android_compiler_barrier(); return value; } -extern inline int32_t android_atomic_release_load(volatile int32_t *ptr) { +extern inline int32_t android_atomic_release_load(volatile const int32_t *ptr) +{ android_memory_barrier(); return *ptr; } extern inline void android_atomic_acquire_store(int32_t value, - volatile int32_t *ptr) { + volatile int32_t *ptr) +{ *ptr = value; android_memory_barrier(); } extern inline void android_atomic_release_store(int32_t value, - volatile int32_t *ptr) { + volatile int32_t *ptr) +{ android_compiler_barrier(); *ptr = value; } @@ -115,11 +119,13 @@ extern inline int32_t android_atomic_add(int32_t increment, return increment; } -extern inline int32_t android_atomic_inc(volatile int32_t *addr) { +extern inline int32_t android_atomic_inc(volatile int32_t *addr) +{ return android_atomic_add(1, addr); } -extern inline int32_t android_atomic_dec(volatile int32_t *addr) { +extern inline int32_t android_atomic_dec(volatile int32_t *addr) +{ return android_atomic_add(-1, addr); } diff --git a/include/cutils/atomic.h b/include/cutils/atomic.h index 3866848..a50bf0f 100644 --- a/include/cutils/atomic.h +++ b/include/cutils/atomic.h @@ -77,8 +77,8 @@ int32_t android_atomic_or(int32_t value, volatile int32_t* addr); * This is only necessary if you need the memory barrier. A 32-bit read * from a 32-bit aligned address is atomic on all supported platforms. */ -int32_t android_atomic_acquire_load(volatile int32_t* addr); -int32_t android_atomic_release_load(volatile int32_t* addr); +int32_t android_atomic_acquire_load(volatile const int32_t* addr); +int32_t android_atomic_release_load(volatile const int32_t* addr); /* * Perform an atomic store with "acquire" or "release" ordering. |