Enable generalization of all variants of CAS via fetch_compare_and_swap
authorIvan Maidanski <ivmai@mail.ru>
Thu, 3 Jan 2013 15:18:11 +0000 (19:18 +0400)
committerIvan Maidanski <ivmai@mail.ru>
Thu, 3 Jan 2013 18:18:46 +0000 (22:18 +0400)
commit45f058c48ad1a8889a5d4fc2c2c50cfb70c5c5ed
tree92977ce07b68d7505d03384638f67623da830152
parent3ed6b5169517ab99cfa860af35d2ac75ce241008
Enable generalization of all variants of CAS via fetch_compare_and_swap

* src/atomic_ops/generalize.h (AO_compare_and_swap_full,
AO_compare_and_swap_acquire, AO_compare_and_swap_release,
AO_compare_and_swap, AO_TS_COMPARE_AND_SWAP_FULL,
AO_TS_COMPARE_AND_SWAP_ACQUIRE, AO_TS_COMPARE_AND_SWAP_RELEASE,
AO_TS_COMPARE_AND_SWAP): Define (in this file) only if required for
AO_test_and_set_X generalization.
* src/atomic_ops/generalize-arithm.template
(AO_XSIZE_compare_and_swap_write, AO_XSIZE_compare_and_swap_read,
AO_XSIZE_compare_and_swap_release_write,
AO_XSIZE_compare_and_swap_acquire_read,
AO_XSIZE_compare_and_swap_dd_acquire_read): Add missing variant of
generalized template CAS primitives based fetch_compare_and_swap; add
the corresponding AO_HAVE_XSIZE_compare_and_swap_X macros.
* src/atomic_ops/generalize-arithm.h: Regenerate.
src/atomic_ops/generalize-arithm.h
src/atomic_ops/generalize-arithm.template
src/atomic_ops/generalize.h