summaryrefslogtreecommitdiff
path: root/misc/py-polars/files/patch-src_allocator.rs
blob: 5bb9726ef847e9ee2b2f97867afaa401c76cd8aa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
- workaround for https://github.com/pola-rs/polars/issues/17034

--- src/allocator.rs.orig	2024-08-04 11:07:42 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,32 +11,10 @@ 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,
-    target_family = "unix",
-    not(allocator = "default"),
-    not(allocator = "mimalloc"),
-))]
-static ALLOC: TracemallocAllocator<Jemalloc> = TracemallocAllocator::new(Jemalloc);
 
 use std::alloc::Layout;
 use std::ffi::{c_char, c_void};