diff --git a/src/libcore/sync/atomic.rs b/src/libcore/sync/atomic.rs index 63d786074639d..7520579447152 100644 --- a/src/libcore/sync/atomic.rs +++ b/src/libcore/sync/atomic.rs @@ -1495,24 +1495,31 @@ unsafe fn atomic_xor(dst: *mut T, val: T, order: Ordering) -> T { /// An atomic fence. /// -/// A fence 'A' which has `Release` ordering semantics, synchronizes with a -/// fence 'B' with (at least) `Acquire` semantics, if and only if there exists +/// A fence 'A' which has [`Release`] ordering semantics, synchronizes with a +/// fence 'B' with (at least) [`Acquire`] semantics, if and only if there exists /// atomic operations X and Y, both operating on some atomic object 'M' such /// that A is sequenced before X, Y is synchronized before B and Y observes /// the change to M. This provides a happens-before dependence between A and B. /// -/// Atomic operations with `Release` or `Acquire` semantics can also synchronize +/// Atomic operations with [`Release`] or [`Acquire`] semantics can also synchronize /// with a fence. /// -/// A fence which has `SeqCst` ordering, in addition to having both `Acquire` -/// and `Release` semantics, participates in the global program order of the -/// other `SeqCst` operations and/or fences. +/// A fence which has [`SeqCst`] ordering, in addition to having both [`Acquire`] +/// and [`Release`] semantics, participates in the global program order of the +/// other [`SeqCst`] operations and/or fences. /// -/// Accepts `Acquire`, `Release`, `AcqRel` and `SeqCst` orderings. +/// Accepts [`Acquire`], [`Release`], [`AcqRel`] and [`SeqCst`] orderings. /// /// # Panics /// -/// Panics if `order` is `Relaxed`. +/// Panics if `order` is [`Relaxed`]. +/// +/// [`Ordering`]: enum.Ordering.html +/// [`Acquire`]: enum.Ordering.html#variant.Acquire +/// [`SeqCst`]: enum.Ordering.html#variant.SeqCst +/// [`Release`]: enum.Ordering.html#variant.Release +/// [`AcqRel`]: enum.Ordering.html#variant.AcqRel +/// [`Relaxed`]: enum.Ordering.html#variant.Relaxed #[inline] #[stable(feature = "rust1", since = "1.0.0")] pub fn fence(order: Ordering) {