daan
4df01218e2
fix msvc compilation with new atomics
2020-09-05 10:03:37 -07:00
daan
644e453709
Merge branch 'dev' into dev-slice
2020-09-05 09:37:38 -07:00
daan
2e311f341b
fix msvc compilation in C mode
2020-09-05 09:37:09 -07:00
daan
dc858f6d29
fix c++ compilation with new atomics for dev-slice
2020-09-05 09:23:22 -07:00
daan
7c2b79bef0
Merge branch 'dev' into dev-slice
2020-09-05 09:17:59 -07:00
daan
50de0d2358
fix C++ compilation with new atomics
2020-09-05 09:17:42 -07:00
daan
2594b37c56
fix build warning on C++ template deduction on Linux
2020-09-05 08:36:34 -07:00
daan
97f56b1e08
merge from dev
2020-09-04 14:21:33 -07:00
daan
ec2c83a633
fix whitespace
2020-09-04 14:20:13 -07:00
daan
032eb2a75a
use pragma warning only on msvc (issue #291 )
2020-09-04 13:06:18 -07:00
daan
d73d6beb71
add aslr test (issue #289 )
2020-09-04 10:41:10 -07:00
daan
f107acb3c8
fix __cplusplus test (pr #287 )
2020-09-04 10:40:05 -07:00
Daan
797c50e0c0
Merge pull request #296 from timblechmann/feature/iOS-compile-fix
...
iOS compile fix
2020-09-04 10:36:48 -07:00
daan
b22401deb3
layout
2020-09-03 20:31:11 -07:00
daan
f6109765d8
update whitespace and comments
2020-09-03 15:04:40 -07:00
Daan Leijen
7058e501cb
use atomic ops for the expire field; passes TSAN now
2020-09-03 13:53:56 -07:00
daan
228b5f6e9d
use atomic load for segment map
2020-09-03 12:19:04 -07:00
daan
03071dec0f
merge from dev-atomic with new atomic interface
2020-09-03 12:13:09 -07:00
daan
ff0d98883e
update comments
2020-09-03 10:00:01 -07:00
daan
900c97664a
merge from dev-atomic
2020-09-03 09:47:01 -07:00
daan
76a68cd7af
bump version to 1.6.6 with new atomics
2020-09-03 09:45:53 -07:00
daan
b4825372ab
small compilation warning fixes (extra semicolon etc)
2020-08-29 19:30:38 -07:00
daan
8033b62979
allow overriding MI_MAX_ALIGN_SIZE
2020-08-29 09:59:15 -07:00
daan
c1a834e886
add checks for when memory commit fails to return NULL
2020-08-28 10:40:46 -07:00
daan
e4ddc75069
set delayed decommit mask more precisely to only decommit currently committed blocks
2020-08-28 08:46:51 -07:00
daan
2cffc3b851
merge from dev
2020-08-27 22:43:57 -07:00
Tim Blechmann
1190e0c053
iOS compile fix
...
`crt_externs.h` is available only available with iOS-13 sdk. we
therefore add a `__has_include` check to see if it is actually available
2020-08-26 11:47:24 +08:00
daan
3f8ff12e66
avoid use of %z format specifier
2020-08-15 11:42:28 -07:00
daan
5805c39916
enable --std=c99 compilation; fix mingw compilation
2020-08-09 17:55:17 -07:00
daan
a9686d6ecf
avoid link error on non-windows
v1.6.4
list
2020-08-06 13:37:11 -07:00
daan
0de92e406c
prepare readme for release
2020-08-06 13:29:09 -07:00
daan
d88a7470a0
merge from master
2020-08-06 13:19:01 -07:00
Daan
a9adae90d2
Merge pull request #285 from wavenator/patch-1
...
Adding conditional _DEFAULT_SOURCE definition
2020-08-06 13:17:20 -07:00
Gal Ben David
1583a73c66
Adding conditional _DEFAULT_SOURCE definition
...
In order to avoid `_DEFAULT_SOURCE` redefinition warnings, I've wrapped the define statement with an `ifndef`.
2020-08-06 14:29:25 +03:00
daan
9e7322f900
collect memory on process exit for statically linked library (issue #281
2020-07-29 21:27:01 -07:00
daan
47572aceca
improved NUMA node detection on Windows (for AMD Ryzen), issue #282
2020-07-29 14:36:21 -07:00
daan
ac0c121c68
update documentation for 1.6.4 release
2020-07-27 08:55:26 -07:00
daan
cc6bd44827
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2020-07-27 08:33:40 -07:00
Daan
5da3ef4ca1
Merge pull request #280 from devnexen/haiku_stats
...
Haiku stats
2020-07-27 08:33:25 -07:00
Daan
3d0b91457e
Merge pull request #278 from devnexen/illumos_prevent_some_flags
...
some apis are available on Illumos which are not available on stock S…
2020-07-27 08:32:01 -07:00
daan
ef8e5d18a6
replace atomics with C11/C++ atomics with explicit memory order; passes tsan. Issue #130
2020-07-26 18:01:33 -07:00
daan
a468430772
strengthen memory order of bit operations; insert memory fences
2020-07-26 14:19:30 -07:00
daan
a9f46dc86f
reduce memory order constraints for better efficiency on ARM etc
2020-07-26 11:58:02 -07:00
daan
116159cd40
use RtlGenRandom on windows to enable compilation as C++ even with dynamic override
2020-07-26 11:57:14 -07:00
David Carlier
d964be2caa
getting resident mem at least
2020-07-26 18:56:10 +00:00
David Carlier
eb1188a1dd
Enables subset of stats for haiku.
2020-07-26 17:00:54 +00:00
daan
53cbc68de3
display compiler in cmake summary
2020-07-26 00:21:10 -07:00
daan
28014ee2bc
fix atomic access for MADV_FREE in os_reset
2020-07-26 00:16:17 -07:00
daan
ebf951e851
extra checks for atomic ptr exchange; extend mi_atomic_yield for win32
2020-07-26 00:15:57 -07:00
daan
95afd0509f
make segment abandoned_next atomic; tsan passes without warnings now (issue #130 )
2020-07-25 23:50:22 -07:00
daan
09ade02429
bring inline with C11 atomics; no volatile and cas order of expected/desired
2020-07-25 22:52:27 -07:00
daan
e27422adca
switch to using C++ atomics in MSVC as well
2020-07-25 20:55:45 -07:00
daan
73c109a04e
add cmake option to build with ubsan
2020-07-25 19:55:36 -07:00
daan
afe29cb8f5
fix ub on shift, issue #279
2020-07-25 19:33:02 -07:00
daan
a9a21f39d8
fix memory order for CAS failure, issue #130
2020-07-23 15:52:02 -07:00
daan
b74caddcc1
fix memory order to acq_rel for atomic and/or, issue #130 , thanks @mpoeter!
2020-07-23 15:00:49 -07:00
daan
70be91d6b8
reduce tsan warning by ensuring a require edge; issue #130
2020-07-22 15:28:14 -07:00
daan
8aa18d3661
fix TSAN warning for statistics maximum, issue #130
2020-07-22 14:16:18 -07:00
daan
444afa934f
fix memory order for weak CAS, issue #130 , thanks @mary3000!
2020-07-22 13:58:00 -07:00
daan
2e1b4f512d
make max update in the stats atomic
2020-07-22 13:45:04 -07:00
daan
529d74a282
use O1 with thread sanitizer
2020-07-22 12:45:53 -07:00
daan
341048f61e
avoid atomic operations on statistics if zero
2020-07-22 11:08:16 -07:00
David Carlier
2254e20d4c
some apis are available on Illumos which are not available on stock Solaris
...
thus availability evelavated from cflags. discard some sporadically for large pages
support mainly.
2020-07-22 18:26:32 +01:00
daan
c5406f327e
move include 'limits.h' outside of definition
2020-07-21 18:51:25 -07:00
Daan
532447fb33
Merge pull request #272 from devnexen/illumos_build
...
illumos support/build fix and large page support
2020-07-21 18:46:28 -07:00
Daan
e5ede9c723
Merge pull request #264 from DerVogel2020/dev
...
use stored pointer #257
2020-07-21 18:35:51 -07:00
Daan
56b58a8021
Merge pull request #267 from devnexen/haiku_support
...
haiku support.
2020-07-21 18:32:40 -07:00
daan
76756ad63c
update documentation
2020-07-21 18:27:54 -07:00
Daan
6ed59c21e0
Merge pull request #271 from DerVogel2020/fix-doc
...
Fix documentation
2020-07-21 18:22:18 -07:00
daan
01da026314
add option to build with thread sanitizer
2020-07-21 09:10:45 -07:00
Daan
71160e2bac
Fix glibc version (issue #270 )
2020-07-21 08:49:21 -07:00
daan
8769082d63
add pointer validity check in debug mode for mi_usable_size/mi_realloc/mi_expand. Issue #269
2020-07-20 14:33:03 -07:00
Daan
457fcbd9d5
Merge pull request #274 from Tyler-IN/agnostic-posix-musl-support
...
Posix / Musl Compatibility
2020-07-20 11:34:58 -07:00
daan
5f51c97fbd
override aligned_alloc always if using C compilation (issue #276 )
2020-07-20 11:27:42 -07:00
daan
892ec12611
Support Windows Vista and XP for NUMA aware alloction (issue #277 )
2020-07-20 11:10:45 -07:00
David Carlier
0c550d1626
illumos support/build fix and large page support
2020-07-10 03:26:14 +01:00
Tyler Young
b9a7f5cfae
fix mman.h ref
2020-07-09 10:58:47 -04:00
Wanja Vogel
736c1f08e7
Update documentation-header to current source code after 03d9946
...
fix #266
2020-07-08 21:50:51 +02:00
Wanja Vogel
a608241900
Update documentation-header to current source code after 03d9946
...
fix #266
2020-07-08 21:49:34 +02:00
Wanja Vogel
82f4e5c48e
Update documentation-header to current source code after 03d9946
2020-07-08 21:45:43 +02:00
David Carlier
7e48eb033c
haiku support.
...
TLS unsupported thus disabled.
2020-06-28 13:53:45 +00:00
Wanja Vogel
2599512e8f
use stored pointer #257
2020-06-18 18:20:26 +02:00
daan
4ecce78d66
Merge branch 'master' into dev
2020-06-17 19:28:15 -07:00
daan
38c264ccdf
merge from dev
2020-06-17 19:25:03 -07:00
daan
5a6d9ba807
fix handling of failing to allocate heap metadata on thread creation, issue #257
2020-06-17 19:07:32 -07:00
daan
32b3608581
simplify initial main tld declaration
2020-06-17 13:12:05 -07:00
Daan
07c6e60a5a
Merge pull request #259 from DerVogel2020/master
...
fix: avoid warning
2020-06-16 11:47:45 -07:00
Wanja Vogel
d5475a58a1
fix: avoid warning
...
warning C26451: Arithmetic overflow: Using operator '+' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator '+' to avoid overflow (io.2).
2020-06-10 07:47:50 +02:00
daan
66048cb6cc
fix return value for page_unreset
2020-05-19 13:31:24 -07:00
daan
cb05ef9f2c
merge from dev
2020-05-19 10:43:46 -07:00
daan
6f73cc8b1d
Merge branch 'master' into dev
2020-05-19 10:41:08 -07:00
daan
a09a64e29b
add extra check in mi_page_unreset to not unreset for huge OS pages
2020-05-19 10:40:46 -07:00
Daan
0ed478089e
Merge pull request #242 from devnexen/ios_build_fix
...
IOS build fix, large pages unsupported.
2020-05-19 10:21:32 -07:00
daan
a7d2bc8ad6
edit warning messages to be more consistent
2020-05-19 10:16:28 -07:00
daan
74986c1dd1
weaken aligmenment assertion (issue #245 )
2020-05-19 09:56:37 -07:00
daan
a52b38342d
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2020-05-19 09:55:08 -07:00
daan
82e29f47b3
weaken assertion, #245
2020-05-18 18:51:06 -07:00
Daan Leijen
c9ffe30513
weaken alignment requirement to not need to be a multiple of sizeof(void*); see #246
2020-05-18 10:17:58 -07:00
Daan Leijen
bf6b781e40
fix semicolon ( #247 )
2020-05-18 10:08:18 -07:00
David Carlier
0ea4e3f279
IOS build fix, large pages unsupported.
2020-05-07 20:09:16 +01:00