diff options
| author | Brian Anderson <banderson@mozilla.com> | 2013-05-09 12:49:14 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2013-05-20 14:41:56 -0700 |
| commit | 7bd421776681285bf4dfba09fe7a6dae4c8eecd5 (patch) | |
| tree | 45095b331846d23abdff09591a9dd57cd1ff8ceb /src/libstd | |
| parent | 26babaafcdbcfdf2e842d84dbeabbed0dae6efef (diff) | |
| download | rust-7bd421776681285bf4dfba09fe7a6dae4c8eecd5.tar.gz rust-7bd421776681285bf4dfba09fe7a6dae4c8eecd5.zip | |
Replace all uses of rust-intrinsic ABI with calls to unstable::intrinsics
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/arena.rs | 15 | ||||
| -rw-r--r-- | src/libstd/priority_queue.rs | 3 |
2 files changed, 6 insertions, 12 deletions
diff --git a/src/libstd/arena.rs b/src/libstd/arena.rs index fd9fba8c1d7..a087a16caa2 100644 --- a/src/libstd/arena.rs +++ b/src/libstd/arena.rs @@ -43,14 +43,7 @@ use core::sys::TypeDesc; use core::sys; use core::uint; use core::vec; - -pub mod rusti { - #[abi = "rust-intrinsic"] - pub extern "rust-intrinsic" { - fn move_val_init<T>(dst: &mut T, src: T); - fn needs_drop<T>() -> bool; - } -} +use core::unstable::intrinsics; pub mod rustrt { use core::libc::size_t; @@ -208,7 +201,7 @@ pub impl Arena { let tydesc = sys::get_type_desc::<T>(); let ptr = self.alloc_pod_inner((*tydesc).size, (*tydesc).align); let ptr: *mut T = transmute(ptr); - rusti::move_val_init(&mut (*ptr), op()); + intrinsics::move_val_init(&mut (*ptr), op()); return transmute(ptr); } } @@ -261,7 +254,7 @@ pub impl Arena { // has *not* been initialized yet. *ty_ptr = transmute(tydesc); // Actually initialize it - rusti::move_val_init(&mut(*ptr), op()); + intrinsics::move_val_init(&mut(*ptr), op()); // Now that we are done, update the tydesc to indicate that // the object is there. *ty_ptr = bitpack_tydesc_ptr(tydesc, true); @@ -276,7 +269,7 @@ pub impl Arena { unsafe { // XXX: Borrow check let this = transmute_mut_region(self); - if !rusti::needs_drop::<T>() { + if !intrinsics::needs_drop::<T>() { return this.alloc_pod(op); } // XXX: Borrow check diff --git a/src/libstd/priority_queue.rs b/src/libstd/priority_queue.rs index 2f5d12d0807..f1e0027146c 100644 --- a/src/libstd/priority_queue.rs +++ b/src/libstd/priority_queue.rs @@ -11,8 +11,9 @@ //! A priority queue implemented with a binary heap use core::old_iter::BaseIter; +use core::unstable::intrinsics::{move_val_init, init}; +use core::unstable::intrinsics::uninit; use core::util::{replace, swap}; -use core::unstable::intrinsics::{init, move_val_init}; pub struct PriorityQueue<T> { priv data: ~[T], |
