[Bug middle-end/59448] Code generation doesn't respect C11 address-dependency
algrant at acm dot org
gcc-bugzilla@gcc.gnu.org
Mon Feb 17 10:26:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59448
--- Comment #11 from algrant at acm dot org ---
Where do you get that this is racy if the access to data is not atomic? By
design, release/acquire and release/consume sequences don't require wholesale
changes to the way the data payload (in the general case, multiple fields
within a structure) is first constructed and then used. 1.10#13 makes clear
that as a result of the intra-thread sequencing between atomic and non-atomic
operations (1.9#14), and the inter-thread ordering between atomic operations
(1.10 various), there is a resulting ordering on operations to "ordinary" (sic)
objects. Please see the references to the C++ standard in the source example,
for the chain of reasoning here.
More information about the Gcc-bugs
mailing list