Commit graph

151 commits

Author SHA1 Message Date
Daan Leijen
cc4ed36c7e prepare for new release 2023-04-03 12:30:18 -07:00
Daan Leijen
8e6a475386 add ubsan and tsan to pipeline 2023-03-29 12:13:59 -07:00
Daan Leijen
54ad5e76fd fix warnings for issues #709 2023-03-20 11:43:31 -07:00
Daan Leijen
f58357548c restructure header files 2023-03-20 10:37:39 -07:00
Daan Leijen
9b110090b2 move threadid and mi_get_default_heap to primitives 2023-03-14 20:35:00 -07:00
Daan Leijen
64fb009695 fix warning with zero padding 2023-03-05 22:27:45 -08:00
Daan Leijen
e912697d90 fix warning with zero padding 2023-03-05 22:26:05 -08:00
Daan
6dcebdc303 fix sizes in memory tracking and padding for huge alignments 2023-03-04 14:49:02 -08:00
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
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
969d8bc5fe make huge pages part of the regular page queues again 2022-11-22 20:56:35 -08:00
daan
2daec6c72f add more comments 2022-11-07 11:23:04 -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
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
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
b48040e20a set pages to noaccess explicitly for valgrind precision 2022-10-30 12:23:11 -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
5613ffb508 use heap_stat_increase macros when possible 2022-04-04 17:38:28 -07:00
Daan
a4303c6931 fix link error to _mi_bin with C++; issue #533 2022-01-22 10:08:16 -08:00
Daan
de11349820 remove spurious check and add further assertions (issue #526) 2022-01-16 12:20:32 -08:00
Daan Leijen
d508c3d618 ensure in debug mode that all allocated block are initialized with MI_DEBUG_UNINIT (issue #501) 2021-12-20 12:33:54 -08:00
daan
28896e5b19 prefix UNUSED,KiB,MiB,GiB; add mi_threadid_t type; add mi_ssize_t 2021-11-13 14:46:03 -08:00
Daan
e853f530a0 add noexcept attributes to improve mi_free codegen 2021-11-04 18:54:57 -07:00
Daan
ca9785d40e fix compilation with MI_DEBUG>3, issue #480 2021-10-27 10:06:34 -07:00
hank
1c1571742d fix typo 2021-06-21 22:36:47 +08:00
Daan Leijen
4ba32c3160 Revert "make all includes relative"
This reverts commit 1feb6123d9.
2021-06-07 16:47:57 -07:00
Daan Leijen
1feb6123d9 make all includes relative 2021-06-06 20:31:36 -07:00
Jim Huang
5940d3bcce Bump copyright date
Each source file has been changed according to relevant Git activities.
2021-04-24 16:35:11 +00:00
daan
5d2b925f3e wrap MI_SECURE conditional in #ifdef to avoid warnings (issue #311) 2020-10-11 10:56:57 -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
a9f46dc86f reduce memory order constraints for better efficiency on ARM etc 2020-07-26 11:58:02 -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
5a6d9ba807 fix handling of failing to allocate heap metadata on thread creation, issue #257 2020-06-17 19:07:32 -07:00
daan
a7d2bc8ad6 edit warning messages to be more consistent 2020-05-19 10:16:28 -07:00
daan
29cb8f369a slight cleanup of f10ba4fa, #239 2020-05-05 10:24:16 -07:00
Daan
f10ba4fa44
Merge pull request #239 from asl/oom-collect
In OOM case try to force collect memory and retry the allocation
2020-05-05 10:16:28 -07:00
daan
9c0da9776d fix assertion for huge block size 2020-05-03 11:43:57 -07:00
daan
097c007ba3 reduce page retire cycles based on object size 2020-05-02 00:19:20 -07:00
daan
5cfdc39ff1 remove on-demand page commit option 2020-04-30 18:23:33 -07:00
Anton Korobeynikov
fdd1cd821a In OOM case try to force collect memory and retry the allocation. 2020-04-29 02:10:11 +03:00
daan
7745dde8d2 allow retirement for all object sizes (issue #212) 2020-03-16 15:31:37 -07:00
daan
baf08e8d54 fix size check on overflow when padding is enabled in debug mode 2020-02-17 09:59:34 -08:00
daan
9749c83ca0 fix build with debug and secure both enabled, issue #203 2020-02-13 09:16:41 -08:00