Commit Graph

540 Commits

Author SHA1 Message Date
daan
4609537b8a pick better umul_overflow variant based on intptr size 2019-10-17 09:47:12 -07:00
daan
08d83cc33d disallow regular allocation from the huge reserved area 2019-10-17 09:24:57 -07:00
daan
a96c90db5d remove old windows overriding method 2019-10-17 09:22:23 -07:00
daan
0e188a18a7 update test to match malloc with free 2019-10-17 09:21:20 -07:00
daan
46aa16b432 updated redirection module on windows 2019-10-17 09:20:57 -07:00
daan
9bf9bcb9b9 Merge branch 'master' into dev 2019-10-12 10:42:54 -07:00
daan
7441aa4212 update redirection module to add additional checks 2019-10-12 10:42:34 -07:00
daan
480f7683a9 cleanup delayed output 2019-10-12 10:42:04 -07:00
Daan Leijen
5e9b37dc4e add delayed output buffer 2019-10-12 10:21:42 -07:00
Daan Leijen
e946d56ba0 Merge branch 'master' of https://github.com/microsoft/mimalloc 2019-10-07 12:13:51 -07:00
Daan Leijen
c9d474d298 update mimalloc build version 2019-10-07 12:13:40 -07:00
Daan
8830c7bccc
Update readme.md 2019-10-07 12:08:44 -07:00
Daan Leijen
114d05cd76 bump to version 1.1 2019-10-07 09:54:23 -07:00
daan
1de6c22b49 remove incorrect region_count comment 2019-09-17 18:07:32 -07:00
daan
5744f90882 remove thread init/done verbose messages 2019-09-17 17:35:20 -07:00
daan
60efb62155 make secure a build option only 2019-09-17 17:31:42 -07:00
daan
d72b5350e3 fix error code on mprotect failure 2019-09-17 17:31:25 -07:00
daan
3a697abf1f set SONAME and use symbolic link at install (issue #9 and #58) 2019-09-15 20:26:30 -07:00
daan
33f4ec4ac6 put new-delete overrides in separate header file 2019-09-15 19:19:00 -07:00
daan
adf8e30eda ensure large page privileges are acquired on windows when calling reserve_huge_os_pages 2019-09-14 15:23:28 -07:00
daan
6896408ab1 fix definition of mi_recalloc_tp 2019-09-11 20:49:18 -07:00
daan
c977a1629d update documentation 2019-09-11 20:48:41 -07:00
daan
24777f6a91 limit aligned allocation to power-of-two alignment 2019-09-11 17:49:28 -07:00
daan
050e7cedf4 roll back commit 0aec6d93 on alignment >= size as it breaks assertions in tensorflow 2019-09-11 15:48:44 -07:00
Daan Leijen
1909cfb346 refine mi_os_good_alloc_size and use it for huge pages (to ensure realloc is bounded as in #153 2019-09-10 13:26:51 -07:00
Daan Leijen
d278c26c0e round huge page sizes into 12.5% increments (issue #153) 2019-09-10 07:54:31 -07:00
daan
e2202f6bbe update vs2019 projects 2019-09-09 12:56:15 -07:00
daan
8903d7a526 fix tests for aligned allocation 2019-09-09 08:21:35 -07:00
daan
ce81af1119 use mi_is_power_of_two when possible (pr #118) 2019-09-09 08:12:50 -07:00
daan
b104e434e4 fix volatile declaration on function 2019-09-09 08:07:35 -07:00
daan
efe083a548 Merge branch 'master' into dev 2019-09-09 08:06:35 -07:00
Daan
270e765454
Merge pull request #148 from pitrou/tls-local-dynamic
Fix #147: provide CMake option for alternate TLS mechanism
2019-09-09 08:05:22 -07:00
daan
23155c5d71 add recursion guard to deferred callback 2019-09-09 08:02:41 -07:00
daan
e227341f5b fix mi_collect being called with empty heap (issue #150) 2019-09-09 07:54:36 -07:00
daan
7b63bc4211 add alignment check to aligned_alloc for C11 compliance 2019-09-07 12:02:22 -07:00
daan
0aec6d9302 don't align to sizes greater than than the allocation size 2019-09-07 12:01:54 -07:00
daan
b241910810 don't allocate more than PTRDIFF_MAX on aligned allocations 2019-09-07 11:52:21 -07:00
daan
f2f7c8d0e9 fix volatile declaration on function pointer 2019-09-07 09:18:29 -07:00
daan
89858ab791 improve page_free_extend performance slightly; do not maintain expensive statistics in release mode 2019-09-06 16:48:48 -07:00
daan
47fc73d694 fix c++ compilation; make default output non-atomic 2019-09-06 11:51:22 -07:00
daan
f38fcf79eb ensure addresses of large aligned allocations are randomized 2019-09-06 09:19:26 -07:00
Jakub Szymanski
1a7b1783fa changed strategy to reduce contention for region search and vs2019 project fix 2019-09-05 08:13:52 -07:00
daan
2be3208734 add wrap-around for large aligned allocations on Windows and Linux 2019-09-04 21:03:00 -07:00
daan
e73982c4cf better alignment for large and huge pages inside a segment 2019-09-04 18:42:37 -07:00
daan
3bbc047ba6 reserve huge pages returns actual number of pages reserved 2019-09-04 12:26:02 -07:00
daan
6c43ae2bde add later thread-done invokation; add mi_is_redirected call 2019-09-04 12:00:41 -07:00
Antoine Pitrou
b69a4b52c0 Fix #147: provide CMake option for alternate TLS mechanism
This allows use of dlopen() with mimalloc on Unix.
2019-09-04 12:02:16 +02:00
daan
3c563816c0 read regions count on every loop iteration 2019-09-03 18:25:01 -07:00
daan
aea21486dd fix regions_count tracking in case of concurrent region allocations 2019-09-03 18:20:56 -07:00
daan
a6a956c589 add back zero initialized re-allocation 2019-09-03 10:57:39 -07:00