]> git.lizzy.rs Git - rust.git/commit - src/tools/rustfmt
Rollup merge of #65214 - Amanieu:cfg_atomic, r=alexcrichton
authorMazdak Farrokhzad <twingoow@gmail.com>
Sun, 13 Oct 2019 17:17:04 +0000 (19:17 +0200)
committerGitHub <noreply@github.com>
Sun, 13 Oct 2019 17:17:04 +0000 (19:17 +0200)
commit7c20a8ddb8efd3998dc4de049ff69e3161a01788
treeca04dbf4f749320ed2a57f7e9a0e97eca43bdd95
parentaa2ae564d391a3da10bca2a79ab529a9925fbe58
parentdfe76a10935cf93fdc72abc47167691b7aa44a7f
Rollup merge of #65214 - Amanieu:cfg_atomic, r=alexcrichton

Split non-CAS atomic support off into target_has_atomic_load_store

This PR implements my proposed changes in https://github.com/rust-lang/rust/issues/32976#issuecomment-518542029 by removing `target_has_atomic = "cas"` and splitting `target_has_atomic` into two separate `cfg`s:

* `target_has_atomic = 8/16/32/64/128`: This indicates the largest width that the target can atomically CAS (which implies support for all atomic operations).
* ` target_has_atomic_load_store = 8/16/32/64/128`: This indicates the largest width that the target can support loading or storing atomically (but may not support CAS).

cc #32976

r? @alexcrichton
src/liballoc/lib.rs
src/libcore/sync/atomic.rs
src/librustc/session/config.rs
src/libsyntax/feature_gate/builtin_attrs.rs
src/libsyntax_pos/symbol.rs