aboutsummaryrefslogtreecommitdiffhomepage
path: root/osdep/atomic.h
Commit message (Collapse)AuthorAge
* ao: simplify hack for float atomicsGravatar wm42017-11-30
| | | | | | | stdatomic.h defines no atomic_float typedef. We can't just use _Atomic unconditionally, because we support compilers without C11 atomics. So just create a custom atomic_float typedef in the wrapper, which uses _Atomic in the C11 code path.
* atomic: remove __atomic builtin usageGravatar wm42017-02-13
| | | | | | | | Using these was a temporary solution while some compilers implemented the underlying atomic mechanisms, but not the C11 language parts (or that's what I guess). Not really useful for us anymore. Also, there is the slight risk of having subtly incorrect semantics by using potentially changing compiler internals and such.
* atomic: drop __sync builtinsGravatar wm42017-01-27
| | | | | | | | | | The correctness of the stdatomic.h emulation via the __sync builtins is questionable, and we've been relying on exact stdatomic semantics for a while, so just get rid of it. Compilers which support __sync but not stdatomic.h will use to the slow mutex fallback. Not sure about the __atomic builtins. It doesn't seem to harm either, so leave it for now.
* osdep: rename atomics.h to atomic.hGravatar wm42016-09-07
The standard header is stdatomic.h, so the extra "s" freaks me out every time I look at it.