Commit graph

197 commits

Author SHA1 Message Date
daanx
814dac26a1 add KiB to size options 2023-05-19 18:00:46 -07:00
daanx
c1218883a4 more format specifiers for _mi_vsnprintf 2023-05-19 17:48:07 -07:00
daanx
e10467f673 add libc primitives to reduce dependencies 2023-05-19 11:57:10 -07:00
daanx
4a85f32f8e add libc.c source file 2023-05-19 10:24:39 -07:00
daanx
a59ae585c7 remove allow_purge option 2023-04-23 13:04:50 -07:00
daanx
8027fcfecd Merge branch 'dev' into dev-reset 2023-04-15 17:59:01 -07:00
Daan
9535726528 fix warnings on latest macOS 2023-04-14 09:42:04 -07:00
daanx
eb62caeda0 allow per page purging instead of reset 2023-04-08 17:37:58 -07:00
daanx
96e9e6f570 clean up option naming 2023-04-05 10:11:54 -07:00
daanx
8d56c155f9 set page_free to 0 by default 2023-04-04 16:58:58 -07:00
daanx
4fc597d4f4 more tight purge delay 2023-04-04 15:05:29 -07:00
daanx
77766e20a6 use only arena's instead of regions 2023-04-04 14:58:06 -07:00
daanx
449aad0635 wip: purgeable arenas; update option names and improve arena reservation 2023-04-04 12:15:57 -07:00
daanx
a5b47fe17b Merge branch 'dev' into dev-reset 2023-04-03 12:46:00 -07:00
Daan Leijen
05e7931b94 prevent pedantic warning 2023-04-01 11:28:34 -07:00
Daan Leijen
7cf60deb12 wip: initial delayed purging of arenas 2023-03-31 14:07:59 -07:00
Daan Leijen
6eee9e4be2 add option eager_reserve 2023-03-30 16:20:11 -07:00
Daan
96b55bd0bb potential fix for macOS issue #697 2023-03-22 09:48:40 -07:00
Daan Leijen
f58357548c restructure header files 2023-03-20 10:37:39 -07:00
Daan Leijen
84ef963a47 remove conioinclude 2023-03-15 14:43:35 -07:00
Daan Leijen
4348a05d0f small fixes 2023-03-14 18:24:38 -07:00
Daan Leijen
10f62eb5a1 add c primitives, move getenv into primitives 2023-03-14 18:10:00 -07:00
Daan Leijen
2b0421a25c fix -Wunused-function for mi_strn-cmp; originally by @rui314 in PR #662 but rebased to dev branch 2022-12-19 17:38:39 -08:00
Daan Leijen
dfc95f34c4 first try WriteFile for a redirected stderr 2022-12-19 16:57:50 -08:00
Johannes Schindelin
089e85b113 Make MIMALLOC_SHOW_STATS work with redirected stderr
Setting `MIMALLOC_SHOW_STATS` to ask mimalloc to print out something
after the process is done is the easiest way to verify that a
mimalloc-enabled Git is running.

So it better work and not try to write to a Win32 Console when it got a
regular file handle instead or, as is the case in Git for Windows'
regular Git Bash window, an emulated pseudo terminal.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 01:13:00 +01:00
Johannes Schindelin
11cab6a0c0 Avoid %z format
This format is not supported by MSVC runtimes targeted by the mingw-64
toolchain.

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
e42a22c9ca fix warnings 2022-11-28 09:59:48 -08:00
Daan Leijen
35d332141d experimental destroy_on_exit option for statically linked mimalloc in a dynamically unloaded DLL 2022-11-18 11:00:23 -08:00
daan
c4663463d1 add mi_cdecl to functions to avoid errors when compiling with a different calling convention, see PR #592 2022-10-31 12:16:34 -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
ca0bac743d maintain backward compatible option order 2022-04-14 16:10:36 -07:00
Daan Leijen
f87cba9bd8 add max segment reclaim as an option 2022-04-14 16:05:49 -07:00
Daan Leijen
faca422b71 fix msvc warnings at level 4 2022-04-09 14:48:30 -07:00
Daan Leijen
6c91c75b14 remove thread local segment cache 2022-04-09 14:33:20 -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
d1db0ffb72 when MIMALLOC_VERBOSE is set, the all errors/warnings are shown 2022-04-02 11:26:56 -07:00
Daan Leijen
b2598e7ee4 allow setting MIMALLOC_MAX_ERRORS/WARNINGS to -1 to get unlimited error/warning messages 2022-04-02 09:46:25 -07:00
Daan Leijen
73012bf654 add thread id to trace, warning, and error messages 2022-04-02 09:29:09 -07:00
Daan
7d06234724 comments 2021-12-19 15:29:58 -08:00
Daan
5a7685de0e for safety do not print illegal environment values 2021-12-19 10:37:10 -08:00
Daan
4808ef762b small rewrite of PR #505 2021-12-19 10:35:12 -08:00
Daan
babe57aa99 fix too early tlv access on macOS in the recursion check 2021-12-19 10:22:48 -08:00
Daan
1ca48210fb small rewrite of pr #506 2021-12-19 10:01:53 -08:00
Daan
6424cfab41 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2021-12-19 09:52:20 -08:00
Frank Richter
f7c821fe79 options: Always print a warning if the 'verbose' option value is bogus 2021-12-19 15:56:26 +01:00
Frank Richter
5d92b5f6d3 Avoid a possible infinite recursion in options parsing.
See microsoft/mimalloc#502, second issue, for a scenario where this occurs.
2021-12-19 15:46:46 +01:00
Frank Richter
dd642ea2a8 Replace mi_strlcpy() and mi_strlcat() with versions written from scratch
They used strncpy() and strncat(), which behave almost, but not
quite like the ...l... functions.
Since these functions are not standard, and not all OSes have
comparable functions available, just add a implementations.

Addresses first issue raised in microsoft/mimalloc#502.
2021-12-19 15:10:36 +01:00
daan
85eccf324f Merge branch 'master' into dev 2021-11-14 16:44:54 -08:00
daan
09e59e0610 use size_t instead of uintptr_t where appropiate 2021-11-13 15:13:16 -08:00