[cpp-threads] Comments on D2334
Paul E. McKenney
paulmck at linux.vnet.ibm.com
Mon Jul 16 22:50:40 BST 2007
Hello!
Here are comments on D2334 at:
http://wiki.dinkumware.com/twiki/pub/Wg21toronto/EvolutionWorkingGroup/D2334.html
Thanx, Paul
o 1.10p2: This paragraph describes only atomics, correct?
Non-atomic variables are subject to load/store tearing,
so might see values other than those listed here.
So I believe the modifier "atomic" needs to show up here,
or perhaps "in absence of data races" or some such.
o 1.10p4: I agree with the note here: "We do not include "relaxed"
atomic operations as "synchronization" operations though, like
synchronization operations, they cannot contribute to data races."
As noted in my prior note, N2324 needs to be adjusted to bring
it in agreement.
o 1.10p7: This paragraph needs to be brought into agreement with
1.10p4. One way to do this would be as follows add "non-relaxed"
as follows:
An evaluation A that performs a release operation on
an object M synchronizes with an evaluation B that
performs an acquire operation on M and reads either the
value written by A or, if the following (in modification
order) sequence of updates to M are non-relaxed atomic
read-modify-write operations, a value written by one of
these read-modify-write operations.
(Still need to look at the non-terminating loops and subsequent sections.)
More information about the cpp-threads
mailing list