Daan Leijen
479ef4bf4c
fix precise free size in aligned allocation
2023-03-15 19:07:35 -07:00
Daan Leijen
9b110090b2
move threadid and mi_get_default_heap to primitives
2023-03-14 20:35:00 -07:00
Daan Leijen
08a01d26dc
initial commit of new primitive layer
2023-03-14 16:54:46 -07:00
Daan Leijen
4f2fdf76a0
add braces
2022-12-19 16:59:24 -08:00
Johannes Schindelin
2c40e0d02f
Allow running in Windows Nano Server containers
...
The `GetNumaProcessorNode()` symbol is not defined in Nano Server's DLLs
(because that function is long deprecated). This causes problems with
any executable that uses mimalloc when trying to run on Nano Server.
Instead of importing this function statically, try to import it
dynamically, and fall back gracefully if it cannot be loaded.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 00:24:43 +01:00
Johannes Schindelin
745a34f475
Fix whitespace
...
This mostly deletes trailing spaces.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 00:24:20 +01:00
Daan Leijen
969d8bc5fe
make huge pages part of the regular page queues again
2022-11-22 20:56:35 -08:00
daan
1f12c3dd12
remove MI_ALIGNMENT_MAX and add comments
2022-11-07 11:13:42 -08:00
daan
6a80fa3ac1
initial progress on removing alignment limit
2022-11-05 14:46:52 -07:00
daan
751e456767
possible fix for warning in issue #635
2022-10-31 08:34:20 -07:00
daan
eee7c40da5
updates to run valgrind on test-api
2022-10-29 11:43:09 -07:00
Daan Leijen
eb29d6b06f
fix warning on windows
2022-05-21 10:21:38 -07:00
Daan Leijen
7bc602ebb4
redefine mi_likely/mi_unlikely to work with C++ 20 [[likely]] attributes
2022-04-19 19:50:06 -07:00
Daan Leijen
fed9b254a1
extra check in VirtualFree for Windows on mi_os_mem_free
2022-04-14 15:42:13 -07:00
Daan Leijen
2ab70f3c84
remove ifdefs around mi_os_aligned_hint
2022-04-10 12:55:36 -07:00
Daan Leijen
96bf3a8039
fix warning
2022-04-09 16:16:11 -07:00
Daan Leijen
c825851404
define MEM_EXTENDED_PARAMETER structure ourselves on Windows in order to compile with older SDK's
2022-04-09 15:59:05 -07:00
Daan
674ee63fa7
Merge pull request #548 from Biswa96/strict_prototypes
...
Fix strict function prototype warnings
2022-04-08 14:33:25 -07:00
Daan
b7677b6f84
fix atomic warnings on clang14 (issue #571 )
2022-04-08 14:09:38 -07:00
Daan Leijen
a799b214a2
fix issue with log messages sometimes failing on Windows if the console cannot be locked; use direct console output now
2022-04-07 12:33:25 -07:00
Daan Leijen
58af58d084
fix debug edit
2022-04-07 10:21:49 -07:00
Daan Leijen
049d37c349
fix formatting flags for warning messages
2022-04-07 10:19:26 -07:00
Daan Leijen
72ab945e28
improve fallback code for aligned allocation on Windows
2022-04-02 11:38:07 -07:00
Daan Leijen
3fa53244c2
add better warning messages if aligning or freeing OS memory fails
2022-04-02 10:11:36 -07:00
Biswapriyo Nath
cf89fc6338
Fix strict function prototype warnings
...
Fix warning: function declaration isn't a prototype [-Wstrict-prototypes]
In C int foo() and int foo(void) are different functions.
2022-02-18 12:06:08 +05:30
daan
8cf985ac8f
fix warning on freebsd
2022-02-14 15:44:50 -08:00
Daan Leijen
807a7ff08d
improve commit/decommit on Linux
2022-01-10 15:39:49 -08:00
daan
8c50aa65ee
fix warnings on Solaris, issue #520
2022-01-10 15:26:22 -08:00
daan
f16435447c
fix bug in freeing huge OS page allocation spanning multiple huge OS pages
2021-12-18 11:37:00 -08:00
daan
60790e9013
remove accidental define
2021-12-16 15:35:53 -08:00
daan
5bbb2ff416
reenable the use of sbrk on wasm as it seems more stable than direct memory_grow
2021-12-16 15:34:52 -08:00
daan
27e24e619b
use wasm_memory_grow instead of sbrk on wasm
2021-12-16 15:11:47 -08:00
daan
b0a866685d
improve sbrk/wasm_memory_grow implementation
2021-12-16 14:54:10 -08:00
daan
55ccc94707
wip: fix zero init for sbrk; add lock around sbrk
2021-12-15 19:28:34 -08:00
Daan
8612d1228a
wip: initial fix for race condition on sbrk/wasm_memory_grow; issue #497
2021-12-15 18:04:02 -08:00
daan
0be71a2cac
fix prefix
2021-11-24 12:54:54 -08:00
daan
09c658dd40
try to allocate within our hint space (partially addresses issue #360 )
2021-11-15 10:10:47 -08:00
daan
4b0cda2012
take overcommit into account for eager commit delay
2021-11-14 11:23:11 -08:00
daan
09e59e0610
use size_t instead of uintptr_t where appropiate
2021-11-13 15:13:16 -08:00
daan
28896e5b19
prefix UNUSED,KiB,MiB,GiB; add mi_threadid_t type; add mi_ssize_t
2021-11-13 14:46:03 -08:00
Daan
f72e5688f5
remove assign in while condition
2021-11-10 11:58:04 -08:00
Daan
fd61997cef
improve aligned support on BSD and MAP_ALIGN systems
2021-11-10 11:26:36 -08:00
Daan
89abbe75d8
improve aligned support on BSD and MAP_ALIGN systems
2021-11-10 11:23:11 -08:00
Daan
8c9ccea2f5
fix huge page madvise in case mmap failed
2021-11-10 10:46:06 -08:00
Daan
e96614961f
fix printf format type mismatches (issue #486 )
2021-11-06 14:19:14 -07:00
Daan
5fd77aa198
refactor os_overcommit detection
2021-10-27 17:39:11 -07:00
Daan
0335d32766
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-27 17:25:09 -07:00
Daan
13b30bf2dd
Merge branch 'dev' into overcommit_if_the_system_approves
2021-10-27 17:12:18 -07:00
Daan
6ccf7e87c0
minor edits
2021-10-27 17:08:00 -07:00
David Carlier
00edd9201b
proposal to not overcommit page unconditionally on Linux and FreeBSD,
...
respecting userland settings.
2021-10-24 20:57:58 +01:00