Daan Leijen
05e7931b94
prevent pedantic warning
2023-04-01 11:28:34 -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
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
959845540d
use W4 for msvc compilation
2021-11-13 14:13:03 -08:00
Daan
f0f9aecfe4
add comment on #if ending
2021-10-19 09:52:20 -07:00
Daan
4841bc1721
Merge pull request #465 from thomcc/no-getenv
...
Add an option to disable environment access inside options.c
2021-10-19 09:49:34 -07:00
Christian Heimes
7c73e3996d
Fix strict function prototype warnings
...
Fix warning ``warning: function declaration isn’t a prototype`` when
building mimalloc with ``-Wstrict-prototypes`` flag. In C argumentless
functions should be declared as ``func(void)``.
Reproducer:
```shell
$ cmake ../.. -DCMAKE_C_FLAGS="-Wstrict-prototypes"
$ make VERBOSE=1
```
Co-authored-by: Sam Gross <colesbury@gmail.com>
Co-authored-by: Neil Schemenauer <nas@arctrix.com>
Signed-off-by: Christian Heimes <christian@python.org>
2021-10-19 10:48:26 +02:00
Thom Chiovoloni
3c058f07a9
Add an option to disable automatic use of getenv
inside options.c
2021-10-08 23:59:35 -07:00
paulip1792
a2c3b0f8af
add option to reserve huge os pages at a specific numa node.
2021-08-10 16:30:44 +08:00
Daan Leijen
4ba32c3160
Revert "make all includes relative"
...
This reverts commit 1feb6123d9
.
2021-06-07 16:47:57 -07:00
Daan Leijen
1feb6123d9
make all includes relative
2021-06-06 20:31:36 -07:00
Jim Huang
5940d3bcce
Bump copyright date
...
Each source file has been changed according to relevant Git activities.
2021-04-24 16:35:11 +00:00
Jim Huang
3402c6cc3f
Revise the use of macOS predefined macro
...
Quoted from "Porting UNIX/Linux Applications to OS X,"[1]
* macro __MACH__ is defined if Mach system calls are supported;
* macro __APPLE__ is defined in any Apple computer.
__MACH__ is not specific to macOS since GNU/Hurd runs on a Mach-based
microkernel (gnumach) [2]. __MACH__ is defined by the compiler,
leading to potential confusions. The solution is just changing the
checked identifier (i.e. __APPLE__), so it is really used only on
macOS.
[1] https://developer.apple.com/library/archive/documentation/Porting/Conceptual/PortingUnix/compiling/compiling.html
[2] https://www.gnu.org/software/hurd/microkernel/mach/gnumach.html
2021-04-21 15:24:02 +08:00
Daan Leijen
71ac98ab08
rename <Windows.h> include to <windows.h> for mingw compatibility (see pr #367 )
2021-02-22 13:04:11 -08:00
Daan
9b966c3492
Merge pull request #253 from haneefmubarak/memcpy-rep-movsb-windows-201
...
resolve #201 with a platform-selective REP MOVSB implementation
2021-01-29 16:00:00 -08:00
Daan Leijen
bb386025b5
update override on macOS with interpose of malloc_default_zone (issues #313 )
2020-12-15 16:03:54 -08:00
unknown
f37a3db37c
cleanup madv_resuable
2020-12-10 11:51:58 -08:00
unknown
cbc14a9287
count warnings and errors separately
2020-12-10 10:28:54 -08:00