daan
0aed30b387
update redirection modules; more robust and works on older windows versions
2019-08-29 23:37:51 -07:00
daan
f35f643508
merge from dev
2019-08-29 09:52:22 -07:00
daan
7bf12c7b5f
make output function configurable; remove <stdio.h> from standard includes
2019-08-29 09:42:50 -07:00
daan
4819d3f78f
expose mi_stats_merge function
2019-08-29 09:01:00 -07:00
daan
4b39c0b06e
fix eager_delay test, and allow large OS pages even without eager commit enabled
2019-08-29 07:55:57 -07:00
daan
64c1d6de86
fix mi_likely branch that was marked as unlikely
2019-08-29 07:50:35 -07:00
daan
e8c7505853
only set has_aligned flag if really necessary
2019-08-29 07:49:40 -07:00
daan
154fd471a1
fix comparison warning
2019-08-29 07:48:15 -07:00
daan
d381fcd9fa
rename lazy to eager_commit_delay
2019-08-28 12:09:23 -07:00
daan
9af51506a6
track commit and is_large status more precisely
2019-08-28 11:58:30 -07:00
daan
a551f3abc4
more precise commit statistics
2019-08-27 18:08:03 -07:00
daan
18e02c3766
try allocating non-eager segments in non-fixed memory
2019-08-27 17:02:56 -07:00
daan
23b5593af6
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2019-08-27 16:40:47 -07:00
Daan
a7d0d19b07
Merge pull request #141 from devnexen/mac_os_anon_pg_option
...
macOS: anonymous page ID make it as env var.
2019-08-27 16:39:26 -07:00
David Carlier
b72a2d9659
macOS: anonymous page ID make it as env var.
2019-08-27 19:17:41 +01:00
daan
cf7bb70117
Merge branch 'master' into dev
2019-08-27 10:01:20 -07:00
Daan
1b9c68667b
Merge pull request #140 from jserv/fix-rt-linkage
...
Link with -lrt for older glibc
2019-08-27 09:56:59 -07:00
daan
db8d443ae6
track more precisely if memory is fixed or committed
2019-08-26 22:45:26 -07:00
daan
eea093000a
graceful fallback for huge page allocation on Linux
2019-08-26 13:47:52 -07:00
daan
f0a12699c2
remove atomic_iread
2019-08-26 12:42:25 -07:00
daan
3d8c331a1c
search regions always from the lowest index
2019-08-26 12:41:59 -07:00
daan
8b06ab1e49
fix check on gigabyte alignment of huge os pages on windows
2019-08-26 12:41:35 -07:00
daan
a654732d99
merge from dev new atomics
2019-08-26 12:30:03 -07:00
daan
2c19388bcf
initialize mimalloc options at process load
2019-08-26 11:44:41 -07:00
daan
7ce9c02fd4
make cas weak use release memory order; improve free assembly
2019-08-26 08:20:26 -07:00
daan
5c7c106d62
strengthen some atomic operations for weak memory models
2019-08-26 08:11:58 -07:00
daan
2159c22415
fix atomic declaration on windows
2019-08-25 23:06:18 -07:00
daan
baabc77503
use proper atomic initialization macros
2019-08-25 23:02:41 -07:00
daan
e8664001f7
Use standard _Atomic declarations and clean up atomic operations
2019-08-25 22:59:12 -07:00
daan
6e360d34ee
fix 1GB huge page flag on Linux
2019-08-25 13:15:26 -07:00
daan
23c35f4aba
merge from dev
2019-08-25 13:07:07 -07:00
daan
b86c851cca
put segment cache behind an option and disable by default
2019-08-25 12:35:14 -07:00
daan
038e8fd7d6
reduce retire size
2019-08-25 12:10:18 -07:00
daan
c3c6401633
merge from master; fix windows environment reading
2019-08-25 11:36:34 -07:00
daan
7972b64a82
resolve race on option initialization
2019-08-25 11:18:16 -07:00
daan
a431d80fc3
better object sizes for large objects
2019-08-25 10:20:03 -07:00
daan
23812cc0ac
do not keep a queue of huge pages and free them directly
2019-08-24 15:45:14 -07:00
Jim Huang
99e071cf2c
Link with -lrt for older glibc
...
Quoted from Linux Programmer's Manual (2017-09-15):
#include <time.h>
int clock_gettime(clockid_t clk_id, struct timespec *tp);
Link with -lrt (only for glibc versions before 2.17).
This patch adds additional checks for librt availability and append
target_link_libraries accordingly. librt is absent on macOS.
Fixed #139
2019-08-24 21:24:56 +08:00
daan
d04d379f66
fix merge conflicts
2019-08-23 21:44:07 -07:00
daan
d3224d0bba
Merge branch 'dev' into dev-win
2019-08-23 21:42:32 -07:00
daan
6c6fcad242
remove threadid from pages and keep page flags separate (cherry picked)
2019-08-23 21:42:24 -07:00
daan
15552eba79
ensure volatile declaration for abandoned_next field
2019-08-23 21:39:27 -07:00
daan
25ea9cf142
on windows use 4TiB area for aligned allocation
2019-08-23 21:38:45 -07:00
daan
acde83543f
remove threadid from pages and keep page flags separate
2019-08-23 14:08:00 -07:00
daan
b511309709
ensure volatile declaration for abandoned_next field
2019-08-23 13:44:43 -07:00
daan
a1c5218ff5
use 4TiB area on windows 64-bit for aligned allocation
2019-08-23 11:33:06 -07:00
daan
5d3bf1c844
don't commit or reset in huge OS pages
2019-08-23 11:22:35 -07:00
Daan
7f29dec44a
Merge pull request #134 from kile0/kile/vs2019
...
Add VS solutions that can leverage the MSVC 2019 runtime
2019-08-21 16:00:03 -07:00
daan
71121a7457
Merge branch 'dev-win' into dev-exp
2019-08-21 11:12:25 -07:00
daan
e7bd8c5d14
merge with dev-win
2019-08-21 11:11:40 -07:00