aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc/extend.texi
diff options
context:
space:
mode:
authorAndi Kleen <ak@linux.intel.com>2013-06-21 13:51:37 +0000
committerAndi Kleen <ak@gcc.gnu.org>2013-06-21 13:51:37 +0000
commitcca410b69b25a729ea3a4d3614426e380c688ca4 (patch)
tree45d907e3dab135e9b398f5abd9232aef324d9ffd /gcc/doc/extend.texi
parenta58219532cee0dd01c890ee56ae73d5be845c748 (diff)
downloadgcc-cca410b69b25a729ea3a4d3614426e380c688ca4.zip
gcc-cca410b69b25a729ea3a4d3614426e380c688ca4.tar.gz
gcc-cca410b69b25a729ea3a4d3614426e380c688ca4.tar.bz2
Improve __atomic_clear/test_and_set documentation
Document that __atomic_clear and __atomic_test_and_set should only be used with bool. gcc/: 2013-06-21 Andi Kleen <ak@linux.intel.com> * doc/extend.texi: Document that __atomic_clear and __atomic_test_and_set should only be used with bool. From-SVN: r200303
Diffstat (limited to 'gcc/doc/extend.texi')
-rw-r--r--gcc/doc/extend.texi6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 6ce26ef..213cf00 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -7439,6 +7439,8 @@ This built-in function performs an atomic test-and-set operation on
the byte at @code{*@var{ptr}}. The byte is set to some implementation
defined nonzero ``set'' value and the return value is @code{true} if and only
if the previous contents were ``set''.
+It should be only used for operands of type @code{bool} or @code{char}. For
+other types only part of the value may be set.
All memory models are valid.
@@ -7448,6 +7450,10 @@ All memory models are valid.
This built-in function performs an atomic clear operation on
@code{*@var{ptr}}. After the operation, @code{*@var{ptr}} contains 0.
+It should be only used for operands of type @code{bool} or @code{char} and
+in conjunction with @code{__atomic_test_and_set}.
+For other types it may only clear partially. If the type is not @code{bool}
+prefer using @code{__atomic_store}.
The valid memory model variants are
@code{__ATOMIC_RELAXED}, @code{__ATOMIC_SEQ_CST}, and