Is there further documentation of core.atomic.MemoryOrder?

Johan Engelen j at j.nl
Sun Sep 17 21:41:28 UTC 2017


On Wednesday, 13 September 2017 at 14:40:55 UTC, Nathan S. wrote:
> Is there a formal description of "hoist-load", "hoist-store", 
> "sink-load", and "sink-store" as used in 
> core.atomic.MemoryOrder 
> (https://dlang.org/library/core/atomic/memory_order.html)?

You can read this:
https://llvm.org/docs/Atomics.html#atomic-orderings

And use this:
```
         static if (ms == MemoryOrder.acq) {
             enum _ordering = AtomicOrdering.Acquire;
         } else static if (ms == MemoryOrder.rel) {
             enum _ordering = AtomicOrdering.Release;
         } else static if (ms == MemoryOrder.seq) {
             enum _ordering = 
AtomicOrdering.SequentiallyConsistent;
         } else static if (ms == MemoryOrder.raw) {
             enum _ordering = AtomicOrdering.Monotonic;
         }
```

-Johan


More information about the Digitalmars-d-learn mailing list