From bd4a2996d1ac30e49adfcb241cb8a436730c35ac Mon Sep 17 00:00:00 2001 From: Nicolas Date: Sat, 5 Oct 2019 08:09:23 -0300 Subject: [PATCH] Add test for atomic fences --- tests/run-pass/atomic.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/tests/run-pass/atomic.rs b/tests/run-pass/atomic.rs index f0b8ec06b90..5872a496dbf 100644 --- a/tests/run-pass/atomic.rs +++ b/tests/run-pass/atomic.rs @@ -1,9 +1,10 @@ -use std::sync::atomic::{AtomicBool, AtomicIsize, AtomicU64, Ordering::*}; +use std::sync::atomic::{fence, AtomicBool, AtomicIsize, AtomicU64, Ordering::*}; fn main() { atomic_bool(); atomic_isize(); atomic_u64(); + atomic_fences(); } fn atomic_bool() { @@ -57,6 +58,15 @@ fn atomic_u64() { ATOMIC.store(1, SeqCst); assert_eq!(ATOMIC.compare_exchange(0, 0x100, AcqRel, Acquire), Err(1)); - assert_eq!(ATOMIC.compare_exchange_weak(1, 0x100, AcqRel, Acquire), Ok(1)); + assert_eq!( + ATOMIC.compare_exchange_weak(1, 0x100, AcqRel, Acquire), + Ok(1) + ); assert_eq!(ATOMIC.load(Relaxed), 0x100); } + +fn atomic_fences() { + fence(SeqCst); + fence(Release); + fence(Acquire); +} -- 2.44.0