From 91cec5b57e1e0961d1f75ede168d37f4748f9478 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Wed, 21 Jan 2015 13:55:14 -0800 Subject: [PATCH] Revert "Use assume to inform the optimiser about refcount invariants" This reverts commit a729a404945de10f99e2530a5c28952996532b29. --- src/liballoc/rc.rs | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/src/liballoc/rc.rs b/src/liballoc/rc.rs index ce160eec1035..5e82c4f1adea 100644 --- a/src/liballoc/rc.rs +++ b/src/liballoc/rc.rs @@ -160,7 +160,6 @@ use core::option::Option::{Some, None}; use core::ptr::{self, PtrExt}; use core::result::Result; use core::result::Result::{Ok, Err}; -use core::intrinsics::assume; use heap::deallocate; @@ -752,20 +751,10 @@ trait RcBoxPtr { fn strong(&self) -> uint { self.inner().strong.get() } #[inline] - fn inc_strong(&self) { - let strong = self.strong(); - // The reference count is always at least one unless we're about to drop the type - unsafe { assume(strong > 0); } - self.inner().strong.set(strong + 1); - } + fn inc_strong(&self) { self.inner().strong.set(self.strong() + 1); } #[inline] - fn dec_strong(&self) { - let strong = self.strong(); - // The reference count is always at least one unless we're about to drop the type - unsafe { assume(strong > 0); } - self.inner().strong.set(strong - 1); - } + fn dec_strong(&self) { self.inner().strong.set(self.strong() - 1); } #[inline] fn weak(&self) -> uint { self.inner().weak.get() }