Auto merge of #18944 - servo:jemallocator2, r=nox

Stop relying on linking details of std’s default allocator

We’ve been bitten before by symbol names changing: https://github.com/servo/heapsize/pull/46, and upstream is planning to stop using jemalloc by default: https://github.com/rust-lang/rust/issues/33082#issuecomment-309781465

So use the (relatively) new `#[global_allocator]` attribute to explicitly select the system allocator on Windows and jemalloc (now in an external crate) on other platforms. This choice matches current defaults.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/18944)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2017-10-19 09:15:17 -05:00 committed by GitHub
commit 07e9794306
20 changed files with 152 additions and 62 deletions

View file

@ -9,7 +9,13 @@ name = "profile_tests"
path = "lib.rs"
doctest = false
[features]
unstable = ["servo_allocator/unstable"]
[dependencies]
ipc-channel = "0.9"
profile = {path = "../../../components/profile"}
profile_traits = {path = "../../../components/profile_traits"}
# Work around https://github.com/alexcrichton/jemallocator/issues/19
servo_allocator = {path = "../../../components/allocator"}

View file

@ -5,6 +5,7 @@
extern crate ipc_channel;
extern crate profile;
extern crate profile_traits;
extern crate servo_allocator;
#[cfg(test)]
mod time;