This is an archive of the discontinued LLVM Phabricator instance.

Obey [atomics.types.operations.req]/21 for GCC.
ClosedPublic

Authored by danalbert on Dec 11 2014, 4:41 PM.

Details

Summary

Excerpt from [atomics.types.operations.req]/21:

When only one memory_order argument is supplied, the value of
success is order, and the value of failure is order except that a
value of memory_order_acq_rel shall be replaced by the value
memory_order_acquire and a value of memory_order_release shall be
replaced by the value memory_order_relaxed.

Clean up some copy pasta while I'm here (someone added a return
statement to a void function).

Diff Detail

Event Timeline

danalbert updated this revision to Diff 17199.Dec 11 2014, 4:41 PM
danalbert retitled this revision from to [libcxx] Obey 29.6.5.21 for GCC..
danalbert updated this object.
danalbert edited the test plan for this revision. (Show Details)
danalbert added reviewers: mclow.lists, EricWF, jroelofs.
danalbert added a subscriber: Unknown Object (MLST).
mclow.lists accepted this revision.Jan 6 2015, 10:28 AM
mclow.lists edited edge metadata.

LGTM.

include/atomic
650–651

it's perfectly fine to return the result of a void function (from a function returning void)

This revision is now accepted and ready to land.Jan 6 2015, 10:28 AM
danalbert updated this revision to Diff 17837.Jan 6 2015, 10:33 AM
danalbert edited edge metadata.

Change standard references to use the section names rather than numbers.

danalbert retitled this revision from [libcxx] Obey 29.6.5.21 for GCC. to Obey [atomics.types.operations.req]/21 for GCC..Jan 6 2015, 10:34 AM
danalbert updated this object.
danalbert closed this revision.Jan 6 2015, 10:40 AM