aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2006-01-04 00:20:45 +0000
committerUlrich Drepper <drepper@redhat.com>2006-01-04 00:20:45 +0000
commitb01fe5f792564a4f6606f33f7827b649bdfbd1f4 (patch)
tree968a10dc426c94e9ad8cbf522d19bd1999761641 /sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
parent6d3aff23e2c64b64fe68fe88360185e17b3e936a (diff)
downloadglibc-b01fe5f792564a4f6606f33f7827b649bdfbd1f4.tar
glibc-b01fe5f792564a4f6606f33f7827b649bdfbd1f4.tar.gz
glibc-b01fe5f792564a4f6606f33f7827b649bdfbd1f4.tar.bz2
glibc-b01fe5f792564a4f6606f33f7827b649bdfbd1f4.zip
* sysdeps/unix/sysv/linux/m68k/fchownat.c: Include string.h.
* sysdeps/sparc/sparc32/dl-machine.h (LD_SO_PRELOAD): Remove unused define. * sysdeps/sparc/sparc32/bits/atomic.h: Include stdint.h, add {,u}atomic*_t typedefs. (__sparc32_atomic_do_lock): Add __volatile and memory clobber. (__sparc32_atomic_do_unlock): Add memory barrier. (__sparc32_atomic_do_lock24, __sparc32_atomic_do_unlock24): Define. [!SHARED] (__v9_compare_and_exchange_val_32_acq): Define. (__v7_compare_and_exchange_val_acq, __v7_compare_and_exchange_bool_acq, __v7_exchange_acq, __v7_exchange_and_add, __v7_exchange_24_rel, __v7_compare_and_exchange_val_24_acq, __atomic_is_v9, atomic_exchange_acq, atomic_compare_and_exchange_val_24_acq, atomic_exchange_24_rel): Define. [SHARED] (atomic_exchange_and_add): Define. [!SHARED] (__ATOMIC_HWCAP_SPARC_V9): Define. [!SHARED] (_dl_hwcap): New weak decl. * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h (atomic_exchange_24_rel, atomic_compare_and_exchange_val_24_acq): Define. * sysdeps/sparc/sparc64/bits/atomic.h (atomic_exchange_24_rel, atomic_compare_and_exchange_val_24_acq): Define.
Diffstat (limited to 'sysdeps/sparc/sparc32/sparcv9/bits/atomic.h')
-rw-r--r--sysdeps/sparc/sparc32/sparcv9/bits/atomic.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
index 6d316f37d5..36959a9926 100644
--- a/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
+++ b/sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
@@ -1,5 +1,5 @@
/* Atomic operations. sparcv9 version.
- Copyright (C) 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek <jakub@redhat.com>, 2003.
@@ -79,6 +79,12 @@ typedef uintmax_t uatomic_max_t;
abort (); \
__oldval; })
+#define atomic_compare_and_exchange_val_24_acq(mem, newval, oldval) \
+ atomic_compare_and_exchange_val_acq (mem, newval, oldval)
+
+#define atomic_exchange_24_rel(mem, newval) \
+ atomic_exchange_rel (mem, newval)
+
#define atomic_full_barrier() \
__asm __volatile ("membar #LoadLoad | #LoadStore" \
" | #StoreLoad | #StoreStore" : : : "memory")