rust/library/stdarch/crates
Alex Crichton 9c4e418fe0 Add a x86_64::cmpxchg16b intrinsic
This intrinsic isn't actually specified by Intel, but it's something
gated with CPUID and can otherwise be a useful thing to have when
building primitives!

There exists an `AtomicU128` type in the standard library but it's only
exposed currently (and it's unstable) when a platform fully supports
128-bit atomics. The x86_64 architecture does not support it *unless*
the `cmpxchg16b` instruction is available, and it isn't always available!

This commit is also a proposal for how we can include support for
128-bit atomics in the standard library on relevant platforms. I'm
thinking that we'll expose this one low-level intrinsic in
`std::arch::x86_64`, and then if desired a crate on crates.io can build
`AtomicU128` from this API.

In any case this is all unstable regardless!
2019-01-02 16:55:53 +01:00
..
assert-instr-macro Rewrite simd128 and wasm support (#620) 2018-12-13 20:17:30 -06:00
coresimd Add a x86_64::cmpxchg16b intrinsic 2019-01-02 16:55:53 +01:00
simd-test-macro Rerun rustfmt 2018-12-14 12:44:51 -08:00
stdsimd Rewrite simd128 and wasm support (#620) 2018-12-13 20:17:30 -06:00
stdsimd-test Add a x86_64::cmpxchg16b intrinsic 2019-01-02 16:55:53 +01:00
stdsimd-verify Add a x86_64::cmpxchg16b intrinsic 2019-01-02 16:55:53 +01:00