summaryrefslogtreecommitdiff
path: root/src/mpmc.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/mpmc.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/mpmc.rs b/src/mpmc.rs
index ef345f91..a5c327f5 100644
--- a/src/mpmc.rs
+++ b/src/mpmc.rs
@@ -1,6 +1,7 @@
//! A fixed capacity Multiple-Producer Multiple-Consumer (MPMC) lock-free queue
//!
-//! NOTE: This module is not available on targets that do *not* support CAS operations, e.g. ARMv6-M
+//! NOTE: This module is not available on targets that do *not* support CAS operations and are not
+//! emulated by the [`atomic_polyfill`] crate (e.g., MSP430).
//!
//! # Example
//!
@@ -73,8 +74,10 @@
//!
//! # Portability
//!
-//! This module is not exposed to architectures that lack the instructions to implement CAS loops.
-//! Those architectures include ARMv6-M (`thumbv6m-none-eabi`) and MSP430 (`msp430-none-elf`).
+//! This module requires CAS atomic instructions which are not available on all architectures
+//! (e.g. ARMv6-M (`thumbv6m-none-eabi`) and MSP430 (`msp430-none-elf`)). These atomics can be emulated
+//! however with [`atomic_polyfill`], which is enabled with the `cas` feature and is enabled by default
+//! for `thumbv6m-none-eabi` and `riscv32` targets. MSP430 is currently not supported by [`atomic_polyfill`].
//!
//! # References
//!