Commit Graph

400 Commits

Author SHA1 Message Date
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
Jakub Szymanski
ee475fd8cd add warning when no avaiable mem 2019-08-21 11:11:36 -07:00
Daan Leijen
13ca6a088b Merge branch 'dev' into dev-win 2019-08-21 08:11:26 -07:00
Daan Leijen
311794b296 remove debug statement 2019-08-21 08:11:16 -07:00
Daan Leijen
c5546dca3f Merge branch 'dev' into dev-win 2019-08-21 08:09:37 -07:00
Daan Leijen
12257e5bc1 fix thread-id reset on page abandonment 2019-08-21 08:09:28 -07:00
Daan Leijen
cc6d14c55b fix thread-id reset on page abandonment 2019-08-21 08:06:40 -07:00
daan
b005f7cdbf Merge branch 'dev' into dev-win 2019-08-20 09:46:05 -07:00
daan
ff88361329 lower block size for keeping retired pages 2019-08-20 09:45:50 -07:00
daan
d81b800e12 optimize stat counter increase 2019-08-20 08:58:53 -07:00
daan
a5071eb510 Merge branch 'dev' into dev-win 2019-08-20 07:50:03 -07:00
daan
27d794b5f4 fix option_enable call 2019-08-20 07:49:40 -07:00
daan
03d994648a better option interface: option_enable, option_disable, and option_set_enabled 2019-08-20 07:47:50 -07:00
daan
7a2e0df5ea merge from dev 2019-08-20 07:37:46 -07:00
daan
1e0cd575a5 do not export DllEntry on windows 2019-08-20 07:06:53 -07:00
daan
d52e4039b6 remove the reset_discards option 2019-08-20 07:06:11 -07:00
daan
598233135c fix optimization settings on Windows compilation 2019-08-20 07:04:00 -07:00
daan
79487dbedf add checks for right option order 2019-08-20 06:58:51 -07:00
daan
29e73dec22 Merge branch 'dev' into dev-win 2019-08-19 21:25:09 -07:00
daan
8c795cc37d remove test statement 2019-08-19 21:24:38 -07:00
daan
05631ebfc4 Merge branch 'dev' into dev-win 2019-08-19 21:23:04 -07:00
daan
d2324f1c2a always check large_os_pages enabled option so it can be changed during the running of the program 2019-08-19 21:22:24 -07:00
daan
13ef8a049b allow larger large objects to better use segment space 2019-08-19 21:22:09 -07:00
daan
48a7d64bdd if region overcommitting due to contention save it to a further slot 2019-08-19 21:20:24 -07:00
daan
2066e2797d don't allow allocations larger than PTRDIFF_MAX, issue #121 2019-08-19 19:29:27 -07:00
daan
74299646bb fix heap cookie and random order on initialization (issue #131) 2019-08-19 19:22:13 -07:00
daan
b46bacc180 fix absorb heap (issue #132) 2019-08-19 19:19:09 -07:00
daan
770e752578 fix parameter order on mul_overflow to fix static analysis warnings (pr #125) 2019-08-19 19:15:04 -07:00
daan
82e1b40166 Merge branch 'master' into dev 2019-08-19 19:13:25 -07:00
Daan
e2b4127a16
Merge pull request #129 from devnexen/linux_build_fix
linux build correction
2019-08-19 19:04:48 -07:00
daan
228c5e5507 allow larger large objects to better use segment space 2019-08-19 18:20:51 -07:00
daan
a8b24472cb use 1GiB huge pages on windows when reserving upfront 2019-08-19 18:16:12 -07:00
daan
0e639addb0 add environment option to reserve huge pages upfront 2019-08-19 14:14:50 -07:00
daan
741f37e1f0 always check large_os_pages enabled option so it can be changed during the running of the program 2019-08-19 11:17:00 -07:00
daan
42dedb00ec initial implementation of mi_os_reserve_huge_pages 2019-08-19 11:10:06 -07:00
daan
8d28713a35 Merge branch 'dev' into dev-win 2019-08-19 08:13:53 -07:00
daan
61ebaaa403 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2019-08-19 08:10:11 -07:00
Daan Leijen
367fb046ec Merge branch 'dev' into dev-win 2019-08-16 18:40:56 -07:00
Daan Leijen
069c26dbab fix small object size check in mi_segment_page_alloc 2019-08-16 18:40:30 -07:00
daan
6d11e59250 fix to avoid potential linear behavior in page collect 2019-08-14 07:46:38 -07:00
David Carlier
b0003cb101 linux build correction
MAP_HUGE_2MB is linux specific and the related header
is not automatically included.
2019-08-14 15:07:13 +01:00
daan
d3375f2bac fix assertion in mi_free_size 2019-08-12 13:50:41 -07:00
daan
178ea0840c roll back commit #72d8608 to avoid spin lock contention on region allocation 2019-08-12 13:40:19 -07:00
daan
8ca79b5359 Hide MEM_EXTENDED_PARAMETER to compile on older SDK's 2019-08-12 08:58:22 -07:00
daan
62de76a327 fix C++ compilation of stress test 2019-08-12 08:55:20 -07:00
daan
8b2194c160 merge from master 2019-08-12 15:50:21 -07:00
Daan
cbc826beb5
Merge pull request #126 from JeanMiK/fix_C++_signature_of_mi_is_in_heap_region
Fix C++ signature of function mi_is_in_heap_region
2019-08-12 08:45:04 -07:00
JeanMiK
3f43cbe6a1 Fix C++ signature of function mi_is_in_heap_region
Original code did not compile with MI_USE_CXX=ON as function
mi_is_in_heap_region was declared noexcept through macro mi_attr_noexcept
but defined without specification, i.e. implicitly with noexception(false)

Just adding the macro in the definition is enough to fix the issue
(tested with gcc 8.3.5)
2019-08-12 12:43:01 +02:00