summaryrefslogtreecommitdiff
path: root/src/atomic_ops.c
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2011-10-21 12:23:03 +0400
committerIvan Maidanski <ivmai@mail.ru>2011-11-11 16:36:16 +0400
commit18ded03a82b187128679c2b8d87892903201c3a5 (patch)
tree7ad5b472ad0de8a5c90c282f37bebbf058470ad8 /src/atomic_ops.c
parent0709102bf46aca2fe09d9ecc3db4a57266c25326 (diff)
downloadlibatomic_ops-18ded03a82b187128679c2b8d87892903201c3a5.tar.gz
Add FIXMEs to add AO_fetch_compare_and_swap primitives
Diffstat (limited to 'src/atomic_ops.c')
-rw-r--r--src/atomic_ops.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/atomic_ops.c b/src/atomic_ops.c
index 3b86371..bd77bba 100644
--- a/src/atomic_ops.c
+++ b/src/atomic_ops.c
@@ -195,6 +195,7 @@ int AO_compare_and_swap_emulation(volatile AO_t *addr, AO_t old,
sigset_t old_sigs;
block_all_signals(&old_sigs);
# endif
+
lock(my_lock);
if (*addr == old)
{
@@ -210,6 +211,8 @@ int AO_compare_and_swap_emulation(volatile AO_t *addr, AO_t old,
return result;
}
+/* FIXME: implement AO_fetch_compare_and_swap */
+
int AO_compare_double_and_swap_double_emulation(volatile AO_double_t *addr,
AO_t old_val1, AO_t old_val2,
AO_t new_val1, AO_t new_val2)