Hello,
The documentation for the __atomic builtins isn't clear about their
expectations
and behaviour. In particular, assumptions about the C11/C++11
restrictions on
programs should be stated and the different behaviour of memory models
in fences
and in operations should be noted. The behaviour of compare-exchange
when the
compare fails is also confusing and the description of the
implementation of the
__atomics is mixed in with the description of their functionality.
This patch tries to deal with some of these problems.
Tested by looking at the html.
Ok for trunk?
Matthew
2015-04-20 Matthew Wahab <matthew.wahab@arm.com>
* doc/extend.texi (__atomic Builtins): Move implementation details
to the end of the description, rewrite opening paragraphs, state
difference with __sync builtins, state C11/C++11 assumptions,
weaken itemized descriptions, add explanation of memory model
behaviour, expand description of compare-exchange, simplify text.