diff --git a/library/core/src/ptr/mod.rs b/library/core/src/ptr/mod.rs index 48e1e206a313e..ff3f3755e9c33 100644 --- a/library/core/src/ptr/mod.rs +++ b/library/core/src/ptr/mod.rs @@ -122,6 +122,11 @@ //! Allocations must behave like "normal" memory: in particular, reads must not have //! side-effects, and writes must become visible to other threads using the usual synchronization //! primitives. +//! Allocations must support all atomic operations that are available for the target (as +//! determined by the `target_has_atomic*` set of cfg flags). +//! The precise instructions used for atomic operations are generally not guaranteed, so portable +//! software should place all Rust allocations in memory regions that support all atomic +//! instructions. //! //! For any allocation with `base` address, `size`, and a set of //! `addresses`, the following are guaranteed: