diff options
Diffstat (limited to 'include/cutils/atomic-x86_64.h')
-rw-r--r-- | include/cutils/atomic-x86_64.h | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/include/cutils/atomic-x86_64.h b/include/cutils/atomic-x86_64.h index 5b5c203..99cb070 100644 --- a/include/cutils/atomic-x86_64.h +++ b/include/cutils/atomic-x86_64.h @@ -41,29 +41,11 @@ void android_compiler_barrier(void) __asm__ __volatile__ ("" : : : "memory"); } -#if ANDROID_SMP == 0 -extern ANDROID_ATOMIC_INLINE -void android_memory_barrier(void) -{ - android_compiler_barrier(); -} -extern ANDROID_ATOMIC_INLINE -void android_memory_store_barrier(void) -{ - android_compiler_barrier(); -} -#else extern ANDROID_ATOMIC_INLINE void android_memory_barrier(void) { __asm__ __volatile__ ("mfence" : : : "memory"); } -extern ANDROID_ATOMIC_INLINE -void android_memory_store_barrier(void) -{ - android_compiler_barrier(); -} -#endif extern ANDROID_ATOMIC_INLINE int32_t android_atomic_acquire_load(volatile const int32_t *ptr) @@ -74,14 +56,6 @@ int32_t android_atomic_acquire_load(volatile const int32_t *ptr) } extern ANDROID_ATOMIC_INLINE -int64_t android_atomic_acquire_load64(volatile const int64_t *ptr) -{ - int64_t value = *ptr; - android_compiler_barrier(); - return value; -} - -extern ANDROID_ATOMIC_INLINE int32_t android_atomic_release_load(volatile const int32_t *ptr) { android_memory_barrier(); @@ -89,13 +63,6 @@ int32_t android_atomic_release_load(volatile const int32_t *ptr) } extern ANDROID_ATOMIC_INLINE -int64_t android_atomic_release_load64(volatile const int64_t *ptr) -{ - android_memory_barrier(); - return *ptr; -} - -extern ANDROID_ATOMIC_INLINE void android_atomic_acquire_store(int32_t value, volatile int32_t *ptr) { *ptr = value; @@ -103,13 +70,6 @@ void android_atomic_acquire_store(int32_t value, volatile int32_t *ptr) } extern ANDROID_ATOMIC_INLINE -void android_atomic_acquire_store64(int64_t value, volatile int64_t *ptr) -{ - *ptr = value; - android_memory_barrier(); -} - -extern ANDROID_ATOMIC_INLINE void android_atomic_release_store(int32_t value, volatile int32_t *ptr) { android_compiler_barrier(); @@ -117,13 +77,6 @@ void android_atomic_release_store(int32_t value, volatile int32_t *ptr) } extern ANDROID_ATOMIC_INLINE -void android_atomic_release_store64(int64_t value, volatile int64_t *ptr) -{ - android_compiler_barrier(); - *ptr = value; -} - -extern ANDROID_ATOMIC_INLINE int android_atomic_cas(int32_t old_value, int32_t new_value, volatile int32_t *ptr) { @@ -136,18 +89,6 @@ int android_atomic_cas(int32_t old_value, int32_t new_value, } extern ANDROID_ATOMIC_INLINE -int64_t android_atomic_cas64(int64_t old_value, int64_t new_value, - volatile int64_t *ptr) -{ - int64_t prev; - __asm__ __volatile__ ("lock; cmpxchgq %1, %2" - : "=a" (prev) - : "q" (new_value), "m" (*ptr), "0" (old_value) - : "memory"); - return prev != old_value; -} - -extern ANDROID_ATOMIC_INLINE int android_atomic_acquire_cas(int32_t old_value, int32_t new_value, volatile int32_t *ptr) { @@ -156,14 +97,6 @@ int android_atomic_acquire_cas(int32_t old_value, int32_t new_value, } extern ANDROID_ATOMIC_INLINE -int64_t android_atomic_acquire_cas64(int64_t old_value, int64_t new_value, - volatile int64_t *ptr) -{ - /* Loads are not reordered with other loads. */ - return android_atomic_cas64(old_value, new_value, ptr); -} - -extern ANDROID_ATOMIC_INLINE int android_atomic_release_cas(int32_t old_value, int32_t new_value, volatile int32_t *ptr) { @@ -172,14 +105,6 @@ int android_atomic_release_cas(int32_t old_value, int32_t new_value, } extern ANDROID_ATOMIC_INLINE -int64_t android_atomic_release_cas64(int64_t old_value, int64_t new_value, - volatile int64_t *ptr) -{ - /* Stores are not reordered with other stores. */ - return android_atomic_cas64(old_value, new_value, ptr); -} - -extern ANDROID_ATOMIC_INLINE int32_t android_atomic_add(int32_t increment, volatile int32_t *ptr) { __asm__ __volatile__ ("lock; xaddl %0, %1" |