summaryrefslogtreecommitdiff
path: root/boost/memory_order.hpp
diff options
context:
space:
mode:
authorChanho Park <chanho61.park@samsung.com>2014-12-11 18:55:56 +0900
committerChanho Park <chanho61.park@samsung.com>2014-12-11 18:55:56 +0900
commit08c1e93fa36a49f49325a07fe91ff92c964c2b6c (patch)
tree7a7053ceb8874b28ec4b868d4c49b500008a102e /boost/memory_order.hpp
parentbb4dd8289b351fae6b55e303f189127a394a1edd (diff)
downloadboost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.tar.gz
boost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.tar.bz2
boost-08c1e93fa36a49f49325a07fe91ff92c964c2b6c.zip
Imported Upstream version 1.57.0upstream/1.57.0
Diffstat (limited to 'boost/memory_order.hpp')
-rw-r--r--boost/memory_order.hpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/boost/memory_order.hpp b/boost/memory_order.hpp
index 4945af623b..fbe9034429 100644
--- a/boost/memory_order.hpp
+++ b/boost/memory_order.hpp
@@ -37,15 +37,19 @@ namespace boost
//
// if( mo & ( memory_order_acquire | memory_order_consume ) ) { ...fence... }
//
+// The values are also in the order of increasing "strength"
+// of the fences so that success/failure orders can be checked
+// efficiently in compare_exchange methods.
+//
enum memory_order
{
memory_order_relaxed = 0,
- memory_order_acquire = 1,
- memory_order_release = 2,
- memory_order_acq_rel = 3, // acquire | release
- memory_order_seq_cst = 7, // acq_rel | 4
- memory_order_consume = 8
+ memory_order_consume = 1,
+ memory_order_acquire = 2,
+ memory_order_release = 4,
+ memory_order_acq_rel = 6, // acquire | release
+ memory_order_seq_cst = 14 // acq_rel | 8
};
} // namespace boost