Skip to content

Support non-atomic targets #1089

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 1 commit into from
Jul 19, 2018
Merged

Conversation

Nemo157
Copy link
Member

@Nemo157 Nemo157 commented Jul 14, 2018

As of rust-lang/rust#51953 cfg(target_has_atomic) has been updated to separately enable compare-and-swap (CAS) operations from the different supported sizes. Because AtomicWaker uses these CAS operations we need to also gate its inclusion on cfg(target_has_atomic = "cas"). thumv6m is one of the architectures that supports atomic read-write operations on its pointer sized integers, but doesn't support CAS operations.

As of rust-lang/rust#51953
`cfg(target_has_atomic)` has been updated to separately enable
compare-and-swap (CAS) operations from the different supported sizes.
Because `AtomicWaker` uses these CAS operations we need to also gate its
inclusion on `cfg(target_has_atomic = "cas")`. `thumv6m` is one of the
architectures that supports atomic read-write operations on its pointer
sized integers, but doesn't support CAS operations.
@Nemo157 Nemo157 changed the title Non atomic CI Support non-atomic targets Jul 16, 2018
Copy link
Contributor

@seanmonstar seanmonstar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants