]> git.lizzy.rs Git - rust.git/commitdiff
Remove redundant Atomic{Ui,I}nt types from unstable::sync
authorBen Blum <bblum@andrew.cmu.edu>
Tue, 2 Jul 2013 17:46:04 +0000 (13:46 -0400)
committerBen Blum <bblum@andrew.cmu.edu>
Sat, 20 Jul 2013 09:08:55 +0000 (05:08 -0400)
src/libstd/unstable/sync.rs

index 0da05dd167d2d279c79bb426e0b74ef8020ca31f..cfdbb4930ebcfdce19abfe0ef512322e85da567c 100644 (file)
@@ -205,50 +205,6 @@ fn compare_and_swap(address: &mut int, oldval: int, newval: int) -> bool {
     fn rust_unlock_little_lock(lock: rust_little_lock);
 }
 
-/* *********************************************************************/
-
-//FIXME: #5042 This should be replaced by proper atomic type
-pub struct AtomicUint {
-    priv inner: uint
-}
-
-impl AtomicUint {
-    pub fn new(val: uint) -> AtomicUint { AtomicUint { inner: val } }
-    pub fn load(&self) -> uint {
-        unsafe { intrinsics::atomic_load(cast::transmute(self)) as uint }
-    }
-    pub fn store(&mut self, val: uint) {
-        unsafe { intrinsics::atomic_store(cast::transmute(self), val as int); }
-    }
-    pub fn add(&mut self, val: int) -> uint {
-        unsafe { intrinsics::atomic_xadd(cast::transmute(self), val as int) as uint }
-    }
-    pub fn cas(&mut self, old:uint, new: uint) -> uint {
-        unsafe { intrinsics::atomic_cxchg(cast::transmute(self), old as int, new as int) as uint }
-    }
-}
-
-pub struct AtomicInt {
-    priv inner: int
-}
-
-impl AtomicInt {
-    pub fn new(val: int) -> AtomicInt { AtomicInt { inner: val } }
-    pub fn load(&self) -> int {
-        unsafe { intrinsics::atomic_load(&self.inner) }
-    }
-    pub fn store(&mut self, val: int) {
-        unsafe { intrinsics::atomic_store(&mut self.inner, val); }
-    }
-    pub fn add(&mut self, val: int) -> int {
-        unsafe { intrinsics::atomic_xadd(&mut self.inner, val) }
-    }
-    pub fn cas(&mut self, old: int, new: int) -> int {
-        unsafe { intrinsics::atomic_cxchg(&mut self.inner, old, new) }
-    }
-}
-
-
 #[cfg(test)]
 mod tests {
     use super::*;
@@ -307,28 +263,4 @@ fn exclusive_poison() {
             }
         }
     }
-
-    #[test]
-    fn atomic_int_smoke_test() {
-        let mut i = AtomicInt::new(0);
-        i.store(10);
-        assert!(i.load() == 10);
-        assert!(i.add(1) == 10);
-        assert!(i.load() == 11);
-        assert!(i.cas(11, 12) == 11);
-        assert!(i.cas(11, 13) == 12);
-        assert!(i.load() == 12);
-    }
-
-    #[test]
-    fn atomic_uint_smoke_test() {
-        let mut i = AtomicUint::new(0);
-        i.store(10);
-        assert!(i.load() == 10);
-        assert!(i.add(1) == 10);
-        assert!(i.load() == 11);
-        assert!(i.cas(11, 12) == 11);
-        assert!(i.cas(11, 13) == 12);
-        assert!(i.load() == 12);
-    }
 }