2685 Commits

Author SHA1 Message Date
Daan
a7c033caed avoid unused warning 2024-04-19 10:14:27 -07:00
Daan
da1d64f05a Merge branch 'dev' into dev-slice 2024-04-19 10:08:57 -07:00
Daan
e21801fa02 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2024-04-19 10:08:02 -07:00
Daan
c13c17f1d0
Merge pull request #864 from rHermes/fix-passing-heap
Avoid compilation error when passing in heap_t to C++ allocators
2024-04-19 10:07:55 -07:00
Daan
78418b3d24 fix overflow of slice count, PR #877 2024-04-19 10:03:14 -07:00
Daan
5050b63038 define MI_MAX_ALLOC_SIZE as PTRDIFF_MAX (related to #877) 2024-04-19 09:53:21 -07:00
Daan
06b510c42d fix build pipeline for ASAN 2024-04-19 09:41:24 -07:00
Daan
764aa44598 remove macOS preprocessor macros that do not exist (anymore). issue #879 2024-04-19 09:38:40 -07:00
Teodor Spæren
10721ddbfd Remove unneeded include 2024-03-31 23:18:52 +02:00
Daan
f199b888b4 Merge branch 'dev' into dev-slice 2024-03-29 11:17:36 -07:00
Daan
8f7d1e9a41 fix free in realpath when using ASAN 2024-03-29 11:17:21 -07:00
Daan
bcf975c028 merge from dev 2024-03-25 17:00:06 -07:00
Daan
6b4f3f6223 further ASAN fix 2024-03-25 16:37:46 -07:00
Daan
c6077376d4 merge from dev 2024-03-25 16:33:04 -07:00
Daan
a522899236 fix compilation with ASAN 2024-03-25 16:32:19 -07:00
Daan
415127ba31 Merge branch 'dev' into dev-slice 2024-03-25 16:28:30 -07:00
Daan
1d8997236c add comment on concurrent access in ptr_unalign 2024-03-25 16:28:15 -07:00
daanx
630521e8db merge from dev 2024-03-25 16:05:39 -07:00
Daan Leijen
460278f110 comments 2024-03-25 16:02:20 -07:00
Daan Leijen
c1d7d7f563 merge from dev 2024-03-25 15:32:56 -07:00
Daan Leijen
0022802177 commend and make at least 8 tries for reclaim 2024-03-25 15:25:04 -07:00
Daan Leijen
cc8d89a085 update comments 2024-03-25 07:35:49 -07:00
Daan Leijen
7c17c3d33e optimize page struct layout 2024-03-24 22:41:33 -07:00
Daan Leijen
af3f2f9168 fix assertions and warnings on gcc 2024-03-24 22:32:32 -07:00
Daan Leijen
3c85983a35 merge from dev with new page fields (block_size and is_huge) 2024-03-24 22:12:33 -07:00
daanx
006ae2d055 add is_huge page flag to ensure the right page queue is returned (see #868) 2024-03-24 17:07:28 -07:00
Daan Leijen
9c96d05ee4 abandoned reclaim on free is on by default 2024-03-24 14:52:50 -07:00
Daan Leijen
a8a53e3e85 fix double counting of free-ing for non-thread-local free calls 2024-03-24 14:50:15 -07:00
Daan Leijen
b5665f0eec add full block_size and page_start to page info 2024-03-24 14:17:17 -07:00
Daan Leijen
6688b45fbd rename MI_ALIGNMENT_MAX to MI_BLOCK_ALIGNMENT_MAX for clarity 2024-03-24 10:57:02 -07:00
Daan Leijen
f141ca12a4 add extra runtime check to ensure we never insert large or huge pages in the segment free queue (issue #870) 2024-03-24 10:53:39 -07:00
Daan Leijen
e363f477a7 Merge branch 'dev' into dev-slice 2024-03-24 10:39:39 -07:00
Daan Leijen
07ae64bd81 faster check for NULL in mi_free by combining with masking 2024-03-24 10:39:22 -07:00
Daan Leijen
6399dbdc30 merge from dev (new free.c) 2024-03-24 09:56:26 -07:00
Daan Leijen
86475a7b9b use MI_MAX_ALIGN_SIZE to adjust block_offset_adj 2024-03-24 09:03:01 -07:00
Daan Leijen
ea6137a501 use MI_MAX_ALIGN_SIZE to adjust block_offset_adj 2024-03-24 09:01:58 -07:00
Daan Leijen
4f809aadb7 use free field for expiration instead of used 2024-03-24 08:29:56 -07:00
Daan Leijen
60c4a0fe56 fix compilation warnings for new uint16_t size for used field 2024-03-24 08:10:35 -07:00
Daan
9085596eab update comment 2024-03-23 08:57:29 -07:00
Daan
34d37fa204 nicer organisation of free.c 2024-03-18 03:47:54 -07:00
Daan
d08b4219e9 improve used decrement code gen 2024-03-18 03:32:06 -07:00
Daan
cc809b0cd4 take 16 bits from used field to create a fast unalign path 2024-03-18 01:40:03 -07:00
Daan
355f44f373 split free routines in a separate file 2024-03-17 08:44:11 -07:00
Daan
18ebeb8a83 fix (benign) race condition on the page flags has_aligned flag and refactor free-ing code (issue 865) 2024-03-17 08:33:09 -07:00
Daan
a42707908f fix typo, issue #866 2024-03-17 06:33:40 -07:00
Teodor Spæren
3d89f6388e Fix std::shared_pointer calling free on provided heap pointers 2024-03-09 15:14:32 +01:00
Teodor Spæren
068dc014ec Avoid compilation error when passing in heap to allocators
Before it would not work to create the mi_heap_stl_allocator types with
passing in a "mi_heap_t*", since sizeof is used and it gives a
compilation error. This change fixes that.
2024-03-09 14:13:33 +01:00
Daan
db52999d85 update used block comment (issue #861) 2024-03-08 09:01:26 -08:00
Joshua Root
f508ae5528
Only interpose strndup if it exists
Added in the macOS 10.7 SDK.
2024-03-05 01:28:10 +11:00
Joshua Root
2e96bc9ee4
Fix min macOS for pressure_relief
This field exists in the 10.7 and later SDKs.
2024-03-05 01:12:06 +11:00