From 417953f2386c79f043c345c4db43ce5e06455219 Mon Sep 17 00:00:00 2001 From: Ximin Luo Date: Thu, 29 Dec 2016 15:14:30 +0100 Subject: [PATCH 1/2] Disable jemalloc on s390x as well (closes #38596) See also #37320 and #37392 --- src/librustc_back/target/s390x_unknown_linux_gnu.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/librustc_back/target/s390x_unknown_linux_gnu.rs b/src/librustc_back/target/s390x_unknown_linux_gnu.rs index 6e2dd6cd67c93..671fb4f4319b3 100644 --- a/src/librustc_back/target/s390x_unknown_linux_gnu.rs +++ b/src/librustc_back/target/s390x_unknown_linux_gnu.rs @@ -19,6 +19,8 @@ pub fn target() -> TargetResult { // Pass the -vector feature string to LLVM to respect this assumption. base.features = "-vector".to_string(); base.max_atomic_width = Some(64); + // see #36994 + base.exe_allocation_crate = "alloc_system".to_string(); Ok(Target { llvm_target: "s390x-unknown-linux-gnu".to_string(), From cadebc7571074e4c17cef267d7269e91fd12ccf8 Mon Sep 17 00:00:00 2001 From: Ximin Luo Date: Thu, 12 Jan 2017 21:10:31 +0100 Subject: [PATCH 2/2] Disable jemalloc tests on platforms where it is disabled (closes #38612) See also #37392 --- src/test/compile-fail/allocator-rust-dylib-is-jemalloc.rs | 6 ++++-- src/test/run-pass/allocator-default.rs | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/test/compile-fail/allocator-rust-dylib-is-jemalloc.rs b/src/test/compile-fail/allocator-rust-dylib-is-jemalloc.rs index 02c271ab24da3..5d566c0e0b4c7 100644 --- a/src/test/compile-fail/allocator-rust-dylib-is-jemalloc.rs +++ b/src/test/compile-fail/allocator-rust-dylib-is-jemalloc.rs @@ -29,9 +29,11 @@ extern crate allocator_dylib2; // ensure we get the same error. // // So long as we CI linux/OSX we should be good. -#[cfg(any(target_os = "linux", target_os = "macos"))] +#[cfg(any(all(target_os = "linux", any(target_arch = "x86", target_arch = "x86_64")), + target_os = "macos"))] extern crate alloc_system; -#[cfg(not(any(target_os = "linux", target_os = "macos")))] +#[cfg(not(any(all(target_os = "linux", any(target_arch = "x86", target_arch = "x86_64")), + target_os = "macos")))] extern crate allocator1; fn main() { diff --git a/src/test/run-pass/allocator-default.rs b/src/test/run-pass/allocator-default.rs index 32ed2b330118d..0a02e8072b9b3 100644 --- a/src/test/run-pass/allocator-default.rs +++ b/src/test/run-pass/allocator-default.rs @@ -10,7 +10,8 @@ #![feature(alloc_jemalloc)] -#[cfg(any(target_os = "linux", target_os = "macos"))] +#[cfg(any(all(target_os = "linux", any(target_arch = "x86", target_arch = "x86_64")), + target_os = "macos"))] extern crate alloc_jemalloc; fn main() {