Some minor updates to atomic acquire/release docs in LangRef.
authorEli Friedman <eli.friedman@gmail.com>
Wed, 24 Aug 2011 20:28:39 +0000 (20:28 +0000)
committerEli Friedman <eli.friedman@gmail.com>
Wed, 24 Aug 2011 20:28:39 +0000 (20:28 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138472 91177308-0d34-0410-b5e6-96231b3b80d8

docs/LangRef.html

index cac0272769d12cc0e7ee64a806c7941e50bbd42e..2b9ee24bf41a66f85632eea4636191e132942bba 100644 (file)
@@ -1634,14 +1634,15 @@ address is written <code>monotonic</code>ally by one thread, and other threads
 eventually see the write. This corresponds to the C++0x/C1x
 <code>memory_order_relaxed</code>.</dd>
 <dt><code>acquire</code></dt>
-<dd>In addition to the guarantees of <code>monotonic</code>, if this operation
-reads a value written by a <code>release</code> atomic operation, it
-<i>synchronizes-with</i> that operation.  This corresponds to the C++0x/C1x
-<code>memory_order_acquire</code>.</dd>
-<dt><code>release</code></dt>
 <dd>In addition to the guarantees of <code>monotonic</code>,
-a <i>synchronizes-with</i> edge may be formed with an <code>acquire</code>
-operation. This is intended to model C++'s <code>memory_order_release</code>.</dd>
+a <i>synchronizes-with</i> edge may be formed with a <code>release</code>
+operation. This is intended to model C++'s <code>memory_order_acquire</code>.</dd>
+<dt><code>release</code></dt>
+<dd>In addition to the guarantees of <code>monotonic</code>, if this operation
+writes a value which is subsequently read by an <code>acquire</code> operation,
+it <i>synchronizes-with</i> that operation.  (This isn't a complete
+description; see the C++0x definition of a release sequence.) This corresponds
+to the C++0x/C1x <code>memory_order_release</code>.</dd>
 <dt><code>acq_rel</code> (acquire+release)</dt><dd>Acts as both an
 <code>acquire</code> and <code>release</code> operation on its address.
 This corresponds to the C++0x/C1x <code>memory_order_acq_rel</code>.</dd>