Commit graph

132 commits

Author SHA1 Message Date
daanx
c9541ac6e8 use sysinfo call on linux to determine physical memory (as _SC_PHYSPAGES may cause allocation) (issue #1100) 2025-06-10 11:28:03 -07:00
Daan
53f88dce76 add physical memory detection on macOS/freeBSD 2025-06-10 11:00:20 -07:00
daanx
99ed3ea754 enable building for xbox, based on pr #1084 by @maxbachmann 2025-06-08 16:41:04 -07:00
Daan Leijen
c1249a4b15 do not automatically call mi_process_done if mi_option_destroy_on_exit > 1 2025-06-07 10:12:53 -07:00
Daan
d7431402c5 fall back to MADV_DONTNEED if MADV_FREE_REUSABLE fails on macOS; disable use of MADV_FREE_REUSE on a reset (issue #1097) 2025-06-06 20:15:16 -07:00
Daan
2696627aaf add MI_UNUSED for unix _mi_prim_reuse 2025-06-06 20:07:37 -07:00
Daan
d389819cc9 add initial support for _mi_prim_reuse and MADV_FREE_REUSABLE on macOS (issue #1097) 2025-06-06 17:59:46 -07:00
Daan
15c917ef15 fix syntax error 2025-05-13 17:45:10 -07:00
daanx
41cc1bfe51 add guarded TLS test for Windows fixed TLS 2025-05-13 17:38:16 -07:00
Daan
0ae310327f fix debug assertion for windows TLS 2025-05-13 16:22:08 -07:00
daanx
341149391f fix include of prctl.h on alpine linux x86 2025-05-13 15:33:29 -07:00
daanx
c84d996e88 fix TLS initialization for MI_WIN_USE_FIXED_TLS with redirection 2025-05-05 10:23:52 -07:00
daanx
303b196d40 fix MI_WIN_USE_FIXED_TLS conditions 2025-05-04 22:09:56 -07:00
daanx
52b75693c4 use TlsAlloc with a dynamic offset for MI_WIN_USE_FIXED_TLS by default (issue #1078) 2025-05-04 22:03:10 -07:00
daanx
417e8176bd add unix large page size constant and adjust aligment to the large page size for large allocations 2025-05-02 16:27:00 -07:00
daanx
f3e92b1edd Use second user TLS slot to avoid using reserved fields in the TEB (issue #1078) 2025-05-02 16:12:20 -07:00
daanx
6bfb1c656c allow size==0 for mi_prim_free (issue #1041) 2025-05-02 08:40:21 -07:00
Daan
951538d469 fix prctl.h includes for alpine linux/musl (hopefully fixes #1065, #1066, #1067) 2025-04-08 13:56:31 -07:00
Daan
77b622511a fix alpine compilation with prctl.h (issue #1059) 2025-03-31 14:44:46 -07:00
Daan
6ed451c555 fix linux compile by including linux/prctl.h 2025-03-21 16:48:50 -07:00
Daan
01ee3568c1 name anonymous mmap address ranges for debugging on Linux (based on PR #1032 by @zhuker) 2025-03-21 16:19:54 -07:00
Daan
783c3ba486 improve QNX support 2025-03-06 20:40:52 -08:00
Timothy Kielan
c8880e1ba0
support building for QNX 2025-02-21 15:16:22 +01:00
Daan
566ab5038b do not use syscall on android (issue #1015) 2025-02-18 16:02:52 -08:00
daanx
ece1defe5b parameter of clz/ctz is size_t 2025-02-11 14:35:21 -08:00
daanx
d3897635ad fix compilation warning 2025-02-11 09:22:31 -08:00
daanx
0c8069adab use physical memory in kib to avoid overflow of size_t (issue #1010) 2025-02-11 09:18:23 -08:00
daanx
ec4aa62b65 use physical memory in kib to avoid overflow of size_t (issue #1010) 2025-02-11 09:12:29 -08:00
Daan Leijen
5f9b42685e remove declspec(dllexport) from DllMain on Windows (issue #1008) 2025-02-08 12:51:06 -08:00
Daan
90b7a694eb syntax error fix (#992) 2025-01-22 12:29:41 -08:00
Daan
5e71dfc336 check dynamically for getPhysicallyInstalledSystemMemory on windows (issue #992) 2025-01-22 12:03:58 -08:00
daanx
4fcf56af2e use consistent naming on Windows vs other platforms. Use mimalloc.dll.lib for the dll import library to avoid a clash with the static mimalloc.lib library 2025-01-09 20:57:08 -08:00
Daan Leijen
5764845c4d fix build on msvc in C compilation; fix build with clang-cl on Windows 2025-01-06 10:27:46 -08:00
Daan Leijen
2451b5685c fix large OS page behaviour on Linux; default is now 2 which only uses large OS pages (not huge) through madvise 2025-01-03 20:00:40 -08:00
Daan
b5ef802313
Merge pull request #909 from kdrag0n/patch-1
Change macOS mmap tag to fix conflict with IOAccelerator
2024-12-30 12:30:21 -08:00
Daan
f33aa58d88
Merge branch 'dev' into dev 2024-12-30 12:27:46 -08:00
Daan
e05aae944f
Merge pull request #917 from rui314/missing-include
Add a missing #include
2024-12-30 12:20:08 -08:00
daanx
47b5f48b29 renamed vcxproj 2024-12-26 10:08:19 -08:00
daanx
0e76fe3798 add address hint to primitive allocation API 2024-11-16 16:57:37 -08:00
daanx
b27d154ffd add virtual address bits and physical memory to the mem config 2024-11-16 15:37:08 -08:00
Daan
f126b50382 update comments, set constructor priority to 101 on macOS 2024-10-27 21:10:46 -07:00
Daan
925efaeac9 improve windows static library initialization to account for thread local destructors (issue #944) 2024-10-23 01:10:00 -07:00
Daan
dfdb9cb877 cleanup process init/done 2024-10-22 06:52:34 -07:00
Daan
46e9e7fdd0 fix win32 compilation 2024-10-22 06:06:15 -07:00
Daan
e55ae0aeb7 fix duplicate definition on windows 2024-10-21 23:09:14 -07:00
Daan
f971bd6d74 fix build on windows 2024-10-21 23:05:51 -07:00
Daan
aa881733d7 reorganize primitives for process initialization; use special data segment on Windows for thread termination by default on Windows now (issue #869) 2024-10-21 22:56:59 -07:00
daanx
b5c6495f69 don't consider memory as large OS pages if only madvise'd 2024-08-20 15:58:36 -07:00
Rui Ueyama
566b2c51fc Add a missing #include
This change fixes the "implicit declaration of function 'getenv'" warning.
Since stdlib.h is completely portable, as it is defined by the C standard,
we can safely include it unconditionally.
2024-07-22 09:43:43 +09:00
QuarticCat
632421da3a
fix typos 2024-06-19 10:49:03 +08:00