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
ddc9841019
fix parameters for mi_track_free
2022-11-28 11:12:35 -08:00
Daan Leijen
10981ab122
add initial support for using mimalloc with address sanitizer support; use -DMI_ASAN=ON
2022-11-28 10:55:19 -08:00
Daan Leijen
76db72814c
fix unused parameter warning in clang
2022-11-28 10:54:45 -08:00
Daan Leijen
e42a22c9ca
fix warnings
2022-11-28 09:59:48 -08:00
Daan Leijen
be2bc9e7ca
better attributes on new/delete overrides for Microsoft visual C++
2022-11-28 09:15:16 -08:00
Vadim Markovtsev
7da4a34dc1
Make "destroy" a compile-time constant + fix const allocator comparisons
2022-11-28 12:04:12 +01:00
Daan Leijen
c1299484de
refactor C++ STL allocator definitions (pr #651 )
2022-11-27 13:00:15 -08:00
Daan
4295b9cc5f
Merge pull request #651 from vmarkovtsev/dry
...
Refactor C++ allocators to be DRY and protected
2022-11-27 12:12:11 -08:00
Daan
8098040c23
add pointer validity check on malloc_size when overriding on macOSX; issue #638
2022-11-25 16:38:20 -08:00
Daan
2d79ae7ecf
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2022-11-25 15:44:31 -08:00
Daan
81b261e657
add test for #587
2022-11-25 15:44:24 -08:00
Daan Leijen
604d4b259b
fix assertion failure (issue #650 )
2022-11-25 14:27:48 -08:00
Daan
78af17e3b3
add extra alignment test
2022-11-25 14:03:00 -08:00
Vadim Markovtsev
4cdfc18888
Refactor C++ allocators to be DRY and protected
2022-11-24 15:13:19 +01:00
Daan Leijen
4b56af178e
remove ,not all freed, messag
...
e from reserved and committed stats (as that is expected at normal process exit)
2022-11-23 10:06:35 -08:00
Daan Leijen
a7bd9c08c8
fix decommit of huge pages
2022-11-23 09:58:45 -08:00
Daan Leijen
e7dac7c405
prevent retiring pages in the huge queue (which may have a small size but huge alignment)
2022-11-22 21:02:05 -08:00
Daan Leijen
db0a69b482
remove comment
2022-11-22 20:57:31 -08:00
Daan Leijen
969d8bc5fe
make huge pages part of the regular page queues again
2022-11-22 20:56:35 -08:00
Daan Leijen
fed883c81f
refactor mi_segment_init fix
2022-11-22 18:44:27 -08:00
Daan Leijen
00a42bf379
refactor mi_segment_init
2022-11-22 18:42:05 -08:00
Daan Leijen
78690fbec2
fix proteced status in stl allocator (pr #625 )#
2022-11-22 18:41:51 -08:00
Daan Leijen
7dce31f743
reenable decommitting of a huge aligned prefix
2022-11-22 18:13:27 -08:00
Daan Leijen
061bbe25b0
update readme
2022-11-22 17:17:14 -08:00
Daan Leijen
9617f16df9
add STL allocators that use a specific heap and can destroy at the end; see original PR #625 by @vmarkovtsev
2022-11-22 16:58:32 -08:00
Daan Leijen
6e2b077b35
rename to heap_alloc_new and heap_alloc_new_n
2022-11-22 14:48:26 -08:00
Daan Leijen
34910664f1
add mi_heap_new_ and mi_heap_new_n
2022-11-22 14:46:23 -08:00
Daan
fe300ca141
fix extern inline definition (issue #643 )
2022-11-22 10:58:02 -08:00
Daan
631f22fbda
change library linkage to PRIVATE (issue #646 )
2022-11-22 10:54:40 -08:00
Daan Leijen
e6ab602ca1
add comment
2022-11-21 10:24:02 -08:00
Daan Leijen
35d332141d
experimental destroy_on_exit option for statically linked mimalloc in a dynamically unloaded DLL
2022-11-18 11:00:23 -08:00
Daan Leijen
18cf94dff6
move keys field in the page struct to keep offsets in the fast path the same for different build variants
2022-11-18 10:14:37 -08:00
Daan Leijen
8834e128e8
improve mi_free codegen
2022-11-18 10:13:51 -08:00
daan
2479d168ad
decommit unused prefix of large aligned blocks
2022-11-07 16:41:40 -08:00
daan
27fc2cf17e
fix random initializer
2022-11-07 14:57:07 -08:00
daan
56ab9ee06a
update azure pipeline to ubuntu 22.04
2022-11-07 14:55:36 -08:00
daan
841172bd7d
fix link error on windows
2022-11-07 14:51:07 -08:00
daan
3e1d800e9b
potential fix for windows static linking with thread creation in dll's
2022-11-07 14:47:53 -08:00
daan
312ce6f916
bump version to v1.7.8 for further development
2022-11-07 11:36:44 -08:00
daan
2daec6c72f
add more comments
2022-11-07 11:23:04 -08:00
daan
1f12c3dd12
remove MI_ALIGNMENT_MAX and add comments
2022-11-07 11:13:42 -08:00
daan
711aad7a75
refactor arena allocation
2022-11-07 11:13:29 -08:00
Daan
d1ae630dec
Merge branch 'dev-align' of https://github.com/microsoft/mimalloc into dev-align
2022-11-06 14:51:37 -08:00
Daan
3eb616f2bf
fix bug in secure mode where adjustment would make the page size less than the blocksize on the first page of a segment
2022-11-06 14:51:06 -08:00
daan
f788e3c9a3
add comment
2022-11-06 14:18:52 -08:00
Daan
d3715132d1
move null ptr check
2022-11-06 09:52:54 -08:00
Daan
f54e64365f
fix assertions with incorrect block size for large alignments
2022-11-06 09:44:12 -08:00
daan
a200291ae5
further progress on removing aligned limit
2022-11-06 08:26:17 -08:00
daan
4b91ff760d
initial working large alignment
2022-11-05 16:40:42 -07:00
daan
6a80fa3ac1
initial progress on removing alignment limit
2022-11-05 14:46:52 -07:00
daan
fe61be80bf
update to v1.7.7
v1.7.7
2022-11-03 17:03:57 -07:00
daan
3bf299cd2b
add comment on crash on Windows server 2019
2022-11-02 10:56:13 -07:00
daan
6e0f10dfd8
potential fix for link error with clang-cl (issue #631 )
2022-11-02 10:25:46 -07:00
daan
5ad06f9997
fix compiler warning on unused parameter (issues #251 )
2022-11-02 09:50:49 -07:00
daan
2d3f0e5b7a
fix align5 test
2022-11-01 16:34:17 -07:00
daan
ad1da7cfc8
fix warnings
2022-11-01 16:29:10 -07:00
daan
e6bd41ba3f
update arena_id api
2022-11-01 16:26:17 -07:00
daan
0a691ca68e
fix off by one in arena id
2022-11-01 14:05:04 -07:00
daan
fe2d5aa8ff
initial work on heaps restricted to specific arena's
2022-11-01 14:00:20 -07:00
daan
65eb5c65ec
relax restriction of size to be an integral multiple of the alignment in 'alloc_aligned' as too many programs need this; see PR #584
2022-10-31 16:07:29 -07:00
daan
3ad4639aea
fix atomic lib reference, see PR #586
2022-10-31 15:53:36 -07:00
daan
7cb1fdc44e
nicer style for pc_libraries
2022-10-31 15:49:04 -07:00
daan
4dcd7e6842
fix version number in pc-config
2022-10-31 15:47:00 -07:00
Daan
907d04c27c
Merge pull request #595 from eli-schwartz/pkg-config
...
cmake: add pkg-config file
2022-10-31 15:42:08 -07:00
Daan
4c241139e9
Merge pull request #588 from TApplencourt/dev
...
Add support for IntelLLVM
2022-10-31 15:32:31 -07:00
daan
d8dd297974
add cmake option MI_WIN_REDIRECT to be able to explicitly disable linking with mimalloc-redirect on windows; always OFF on ARM, fixes issue #591 and #590
2022-10-31 15:26:21 -07:00
daan
c4663463d1
add mi_cdecl to functions to avoid errors when compiling with a different calling convention, see PR #592
2022-10-31 12:16:34 -07:00
daan
698bb2cae7
split out _mi_page_try_use_delayed_free for contention reduction (issue #630 )
2022-10-31 11:01:01 -07:00
daan
7bef5f5f5b
reduce contention on the delayed_free lock; see issue #630
2022-10-31 10:34:55 -07:00
daan
bdc9dc3e4e
update vs project for valgrind
2022-10-31 10:12:13 -07:00
daan
751e456767
possible fix for warning in issue #635
2022-10-31 08:34:20 -07:00
daan
0a8d7d98d8
fix valgrind link
2022-10-30 19:18:02 -07:00
daan
74117d329d
fix realloc memory tracking in valgrind
2022-10-30 19:00:54 -07:00
daan
0ea5235cd1
update readme for valgrind
2022-10-30 14:55:32 -07:00
daan
72c4f0d2ab
update readme
2022-10-30 14:53:11 -07:00
daan
640376a500
update readme
2022-10-30 14:52:26 -07:00
daan
74d002b61c
better cmake process for MI_VALGRIND
2022-10-30 14:20:35 -07:00
daan
05a75758dd
fix tests
2022-10-30 14:07:41 -07:00
daan
886fd7d1b8
add cmakefile MI_VALGRIND option
2022-10-30 12:49:29 -07:00
daan
b48040e20a
set pages to noaccess explicitly for valgrind precision
2022-10-30 12:23:11 -07:00
daan
6e11a054a4
further improve precision of malloc/free tracking in valgrind
2022-10-30 12:03:14 -07:00
daan
84c706508c
fix false positives from valgrind in rptest
2022-10-30 10:45:51 -07:00
daan
a1f5a5d962
fix various false positives in test-stress from valgrind
2022-10-29 14:37:55 -07:00
daan
c61b365e76
valgrind works on test-stress
2022-10-29 11:51:04 -07:00
daan
eee7c40da5
updates to run valgrind on test-api
2022-10-29 11:43:09 -07:00
daan
bc8f23aa0d
rename track macros to lowercase
2022-10-29 10:44:10 -07:00
daan
093724bdef
add test file for valgrind integration
2022-10-28 20:07:31 -07:00
daan
6eeb81ee05
initial progress on valgrind integration
2022-10-28 19:54:56 -07:00
Eli Schwartz
eb97236652
cmake: add pkg-config file
...
pkg-config allows using the library in build systems that are not cmake,
by exporting the same information from the cmake -config files in a
buildsystem-neutral format.
Fixes #16
2022-06-19 14:45:44 -04:00
Thomas Applencourt
8cb6ba2221
add support for IntelLLVM
2022-06-06 16:18:33 +00:00
Daan Leijen
eb29d6b06f
fix warning on windows
2022-05-21 10:21:38 -07:00
Daan Leijen
864e4be5ce
add is_aligned check
2022-04-20 17:33:31 -07:00
Daan Leijen
d9f6ab58c5
comments
2022-04-19 20:16:49 -07:00
Daan Leijen
f76a678c04
fix mi_likely macro in debug build
2022-04-19 19:59:45 -07:00
Daan Leijen
cea47b8560
compile with /Zc:__cplusplus in vs2022
2022-04-19 19:56:53 -07:00
Daan Leijen
7bc602ebb4
redefine mi_likely/mi_unlikely to work with C++ 20 [[likely]] attributes
2022-04-19 19:50:06 -07:00
Daan Leijen
d69d4c861f
add zero parameter to primitive allocation to improve codegen for calloc etc
2022-04-19 18:32:35 -07:00
Daan Leijen
9d69e3ed06
fix further annotation warnings for vs2022
2022-04-19 17:36:04 -07:00
Daan Leijen
f4744bd192
fix further annotation warnings for vs2022
2022-04-19 17:35:07 -07:00