http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56028



--- Comment #8 from Paul E. McKenney <paulmck at linux dot vnet.ibm.com> 
2013-01-19 12:35:12 UTC ---

Indeed, different hardware implementations can cause all sorts of mischief. 

Nevertheless, the compiler should not also provide mischief in these cases.



In addition, as noted in comment 5, there is legacy software.  I understand and

completely support use of atomics when they are generally available (having

assisted in their definition), but many projects will need to work with older

compilers for quite some time to come.  Therefore, volatile loads, which are

only idiom available in these older compilers, needs to continue to provide the

needed functionality.  Again as noted in comment 5, volatile stores of

reasonably-sized basic types must be atomic.

Reply via email to