Commit Graph

2159 Commits

Author SHA1 Message Date
daan
8be4cee418 change max align size to 8 2023-02-20 12:15:26 -08:00
Daan Leijen
e7b941a136 Merge branch 'dev' into dev-slice 2023-02-07 11:08:10 -08:00
Daan Leijen
6a230f8329 fix compilation of heap specific STL allocators for vs2017 2023-02-07 11:07:52 -08:00
Daan Leijen
507f75b56c update vs2017 project files 2023-02-07 11:07:08 -08:00
Daan Leijen
1a136c7e3d Merge branch 'dev' into dev-slice 2023-02-01 11:28:22 -08:00
Daan Leijen
389b004cd0 update mimalloc-redirect for win11; potential fix for issue #657, attempt 3 2023-02-01 11:28:01 -08:00
Daan Leijen
efb7a159d5 Merge branch 'dev' into dev-slice 2023-02-01 11:23:37 -08:00
Daan Leijen
23868f0801 update mimalloc-redirect for win11; potential fix for issue #657, attempt 2 2023-02-01 11:23:20 -08:00
Daan Leijen
a6f092a6f5 Merge branch 'dev' into dev-slice 2023-01-31 21:08:55 -08:00
Daan Leijen
fca492aacc update mimalloc-redirect for win11; potential fix for issue #657 2023-01-31 21:08:43 -08:00
Daan Leijen
1e4b6b734e fix assertion that was too strict (issue #691) 2023-01-31 16:02:35 -08:00
Daan Leijen
7bb34e056c fix readme 2022-12-23 13:35:50 -08:00
Daan Leijen
28cf67e5b6 bump version to 2.0.9 2022-12-23 13:31:56 -08:00
Daan Leijen
4cebb48062 bump version to v1.7.9 2022-12-23 13:29:06 -08:00
Daan Leijen
e87badaa1b Merge branch 'dev' into dev-slice 2022-12-23 13:05:05 -08:00
Daan Leijen
9adb032e9c test non-default heap 2022-12-23 13:04:53 -08:00
Daan Leijen
e68f2c1479 fix recursion issue on exit on windows, #672 2022-12-23 13:02:16 -08:00
Daan Leijen
d1fff1119a reorganize span free code 2022-12-21 12:19:09 -08:00
Daan Leijen
a873ddc4fa merge from dev 2022-12-21 12:10:46 -08:00
Daan Leijen
37d5ce9498 comment out include 2022-12-21 12:09:52 -08:00
Daan Leijen
aa2d00fde8 make heap_new inline again 2022-12-21 10:28:58 -08:00
Daan Leijen
0f796a56a9 fix bug where eager committed memory would be immediatedy decommitted; possible fix for issue #669 2022-12-20 18:59:55 -08:00
Daan Leijen
11ddba7a06 Merge branch 'dev' into dev-slice 2022-12-19 18:59:45 -08:00
Daan Leijen
ef3f651f3f change implementation of mi_realpath to be more robust; see issue #660 2022-12-19 18:59:33 -08:00
Daan Leijen
94b8cb870e quote path in post-build event (issue #666 2022-12-19 18:40:12 -08:00
Daan Leijen
b701d4cbfa bump cmake minimal version to 3.13 to support CMAKE_INTERPROCEDURAL_OPTIMIZATION -- see PR 656. 2022-12-19 18:39:52 -08:00
Daan Leijen
ab99eb5830 quote path in post-build event (issue #666 2022-12-19 18:12:27 -08:00
Daan Leijen
9b2dd0d757 Merge branch 'dev' into dev-slice 2022-12-19 18:02:13 -08:00
Daan Leijen
4d1e74aadd add comment 2022-12-19 18:01:58 -08:00
Daan Leijen
d862c8a3eb Merge branch 'dev' into dev-slice 2022-12-19 17:53:51 -08:00
Daan Leijen
95b61b8c3d forward libc interface used by wasi-libc; originally by @anuraaga in PR #667 but rebased to the dev branch 2022-12-19 17:45:15 -08:00
Daan Leijen
35997c0384 Merge branch 'dev' into dev-slice 2022-12-19 17:38:53 -08: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
8c89a77064 add default constructors to stl heap allocators 2022-12-19 17:25:49 -08:00
Daan
95e88a699e
Merge pull request #653 from vmarkovtsev/fix-const
Make "destroy" a compile-time constant + fix const allocator comparisons
2022-12-19 17:11:16 -08:00
Daan
51e2be6647
Merge branch 'dev' into fix-const 2022-12-19 17:10:54 -08:00
Daan Leijen
92ffc25d79 merge from dev 2022-12-19 17:08:45 -08:00
Daan Leijen
4f2fdf76a0 add braces 2022-12-19 16:59:24 -08:00
Daan Leijen
dfc95f34c4 first try WriteFile for a redirected stderr 2022-12-19 16:57:50 -08:00
Daan Leijen
505a14bbd8 cleanup on-demand loading of psapi and bcrypt on windows 2022-12-19 16:50:13 -08:00
Daan
59ea84cadc
Merge pull request #654 from dscho/git-for-windows-assorted-fixes
Assorted fixes from the Git for Windows project
2022-12-19 16:40:48 -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
edb181c377 Lazy-link to bcrypt
Let's not make `bcrypt.dl` a link-time bound library. Instead, load the
`BCryptGenRandom()` function dynamically. When needed. If needed.

This helps reduce the start-up cost of any mimalloc user because the
time spent on loading dynamic libraries is non-negligible.

Note: In contrast to how `os.c` loads libraries and obtains function
addresses, we cannot call `FreeLibrary(hDll)` here because that would
unload the `bcrypt` library before we want to use it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 01:13:00 +01:00
Johannes Schindelin
948a0c44df Lazy-load psapi.dll
Let's load the `GetProcessMemoryInfo()` function dynamically. When
needed. If needed.

This is necessary because the start-up cost spent on loading dynamic
libraries is non-negligible.

Note: In contrast to how `os.c` loads libraries and obtains function
addresses, we cannot call `FreeLibrary(hDll)` here because that would
unload the `bcrypt` library before we want to use it.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2022-12-03 01:12:59 +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
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
6304bbec6e Merge branch 'dev' into dev-slice 2022-11-28 11:12:52 -08:00
Daan Leijen
ddc9841019 fix parameters for mi_track_free 2022-11-28 11:12:35 -08:00
Daan Leijen
911ea81630 Merge branch 'dev' into dev-slice 2022-11-28 10:55:35 -08:00