On 02/08/2012 04:30 PM, Jonathan Wakely wrote:
On 08/02/2012, Andrew MacLeod wrote:
On 02/08/2012 04:59 AM, Jonathan Wakely wrote:
Should they be?
How's this look for a news item and the changes file?  Formatting seems
fine.
  The news item is missing a + in C++

It's not critical for the changes.html page since it's not likely to
be printed, but it's better hyperlink style to say "see the [atomic
wiki]" rather than "see the atomic wiki [here]"
That's what I get for following the same pattern as those TM jokers.

OK, hows this look?  I added a link in the news as well.

Andrew
? K
? gcc-4.7/K
Index: index.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/index.html,v
retrieving revision 1.830
diff -c -p -r1.830 index.html
*** index.html  27 Jan 2012 10:54:58 -0000      1.830
--- index.html  8 Feb 2012 21:48:05 -0000
*************** mission statement</a>.</p>
*** 53,58 ****
--- 53,69 ----
  
  <dl class="news">
  
+ <dt><span>Atomic memory model support</span>
+     <span class="date">[2011-11-06]</span></dt>
+ <dd>C++11/C11 <a href="http://gcc.gnu.org/wiki/Atomic/GCCMM";>memory model</a>
+ support has been added through a new set of built-in __atomic functions.
+ These new functions allow a memory model to be specified for an 
+ operation and some targets may produce more efficient barriers and 
+ synchronization code.  Generic atomic support has also been added to allow 
+ arbitrary sized data to be treated as atomic, and in turn the C++ atomic
+ class has been updated to allow atomic classes to be any size.
+ </dd>
+ 
  <dt><span>Transactional memory support</span>
      <span class="date">[2011-11-15]</span></dt>
  <dd>An implementation of the
Index: gcc-4.7/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.7/changes.html,v
retrieving revision 1.76
diff -c -p -r1.76 changes.html
*** gcc-4.7/changes.html        8 Feb 2012 00:43:12 -0000       1.76
--- gcc-4.7/changes.html        8 Feb 2012 21:48:05 -0000
*************** void foo (char *a, const char *b, const 
*** 223,228 ****
--- 223,249 ----
        see <a href="http://gcc.gnu.org/wiki/TransactionalMemory";>here</a>.
      </p>
    </li>
+ 
+   <li>
+     <p>
+       Support for atomic operations specifying the C++11/C11 memory model 
have 
+       been added.  These new __atomic routines replace the existing __sync
+       built-in routines.
+     </p>
+     <p>
+       Atomic support is also available for memory blocks.  Lock free
+       instructions will be used if a memory block is the same size and 
+       alignment as a supported integer type.  Atomic operations which do not
+       have lock free support are left as function calls.  A set of library 
+       functions are available on the GCC atomic wiki in the "External 
+       Atomics Library" section.
+     </p>
+     <p>
+       For more details on the memory models and features, see the 
+       <a href="http://gcc.gnu.org/wiki/Atomic/GCCMM";>atomic wiki</a>.
+     </p>
+   </li>
+ 
    <li>When a binary operation performed on vector types and one of the 
operands
        is a uniform vector it is possible to replace the vector with the
        generating element. For example:
*************** struct A {
*** 330,335 ****
--- 351,366 ----
    A(): A(42) { } // delegate to the A(int) constructor
  };</pre></blockquote></li>
  
+   <li>G++ now fully implements C++11 atomic classes rather than just integer 
+     derived classes.
+     <blockquote><pre>
+ class POD {
+   int a;
+   int b;
+ };
+ std::atomic&lt;POD> my_atomic_POD;
+ </pre></blockquote></li>
+ 
    <li>G++ now sets the predefined macro <code>__cplusplus</code> to the
      correct value, <code>199711L</code> for C++98/03,
      and <code>201103L</code> for C++11.

Reply via email to