ports/misc/py-polars/files/patch-src_allocator.rs
2024-06-17 21:17:26 -07:00

44 lines
1.4 KiB
Rust

- workaround for https://github.com/pola-rs/polars/issues/17034
--- src/allocator.rs.orig 2024-06-01 09:47:54 UTC
+++ src/allocator.rs
@@ -1,14 +1,3 @@
-#[cfg(all(
- target_family = "unix",
- not(allocator = "default"),
- not(allocator = "mimalloc"),
-))]
-use jemallocator::Jemalloc;
-#[cfg(all(
- not(debug_assertions),
- not(allocator = "default"),
- any(not(target_family = "unix"), allocator = "mimalloc"),
-))]
use mimalloc::MiMalloc;
#[cfg(all(
@@ -22,24 +11,7 @@ use crate::memory::TracemallocAllocator;
#[global_allocator]
#[cfg(all(
not(debug_assertions),
- not(allocator = "mimalloc"),
not(allocator = "default"),
- target_family = "unix",
-))]
-static ALLOC: Jemalloc = Jemalloc;
-
-#[global_allocator]
-#[cfg(all(
- not(debug_assertions),
- not(allocator = "default"),
any(not(target_family = "unix"), allocator = "mimalloc"),
))]
static ALLOC: MiMalloc = MiMalloc;
-
-// On Windows tracemalloc does work. However, we build abi3 wheels, and the
-// relevant C APIs are not part of the limited stable CPython API. As a result,
-// linking breaks on Windows if we use tracemalloc C APIs. So we only use this
-// on Unix for now.
-#[global_allocator]
-#[cfg(all(debug_assertions, not(allocator = "default"), target_family = "unix",))]
-static ALLOC: TracemallocAllocator<Jemalloc> = TracemallocAllocator::new(Jemalloc);