Commit Graph

60 Commits

Author SHA1 Message Date
Daan
e8206e9f6f merge from dev improved aligned allocation 2024-05-11 07:08:48 -07:00
Daan
7128db7bba simplified aligned allocation; improved codegen; fix mi_good_size with padding included; add MI_MAX_ALIGN_GUARANTEE 2024-05-11 06:43:52 -07:00
Daan
6c5d6e1f72 fix max allocation size on 32-bit systems (issue #882) 2024-05-10 17:24:52 -07:00
Daan
70782c3670 merge from dev 2024-04-20 16:47:48 -07:00
Daan
7247b9e326 allow configuring page and segment sizes (pr #753 and pr #862) 2024-04-20 16:45:49 -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 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
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
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
6399dbdc30 merge from dev (new free.c) 2024-03-24 09:56:26 -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
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
cc809b0cd4 take 16 bits from used field to create a fast unalign path 2024-03-18 01:40:03 -07:00
Daan
db52999d85 update used block comment (issue #861) 2024-03-08 09:01:26 -08:00
daanx
abb8eab9b2 merge from dev 2024-03-03 17:43:52 -08:00
daanx
5fe83bf327 limit reclaim from free to half the segments to prevent a pure freeing thread to reclaim too many segments 2024-03-03 17:38:50 -08:00
Daan
bcb8ce94f1 merge from dev-abandon 2024-03-03 14:17:07 -08:00
Daan
56d1a859ca Merge branch 'dev' into dev-abandon 2024-03-03 09:37:53 -08:00
Daan
027b22aaf2 add arena stats 2024-03-03 09:37:46 -08:00
daanx
8fb51aae4d merge from dev-abandon 2024-02-29 15:51:37 -08:00
daanx
bdda13b880 track abandoned segments in an arena bitmap instead of with a list 2024-02-29 14:27:28 -08:00
daanx
56c0a8025a merge from dev 2023-04-24 09:06:56 -07:00
daanx
632edf9996 rename was_zero/committed to initially_zero/committed 2023-04-24 09:03:43 -07:00
daanx
672e3dde8f Merge branch 'dev' into dev-slice 2023-04-18 19:19:51 -07:00
daanx
e6f3647556 track os alignment and base 2023-04-18 19:00:50 -07:00
daanx
eff7940f30 merge from dev 2023-04-18 17:54:07 -07:00
daanx
09e42aea4e clarify is_zero meaing 2023-04-18 17:41:18 -07:00
daanx
fb07276d48 merge from dev 2023-04-18 17:33:01 -07:00
daanx
4d976270eb review is_zero flag 2023-04-18 17:18:39 -07:00
daanx
b845be241a wip: use memid for OS allocation 2023-04-18 16:38:47 -07:00
daanx
7de3201767 Merge branch 'dev-slice' into dev-slice-reset 2023-04-17 09:49:43 -07:00
daanx
a8c581059b Merge branch 'dev' into dev-reset 2023-04-17 09:48:58 -07:00
daanx
4dce9c0f00 merge from dev 2023-04-17 09:37:27 -07:00
daanx
43be9c2909 possible fix for warnings on armv6 (issue #719) 2023-04-17 09:25:41 -07:00
daanx
becf379ecd merge from dev-reset 2023-04-16 12:32:20 -07:00
daanx
d48b988c40 clean up os api 2023-04-16 11:21:45 -07:00
daanx
b0104ef4fd merge from dev 2023-04-16 11:01:25 -07:00
daanx
0fc4de1440 use rich memid's to simplify the internal API's and invariants 2023-04-15 21:31:17 -07:00
daanx
991d04b2b1 merge from dev-reset 2023-04-13 13:37:56 -07:00
daanx
c90a2bbd0a make memid's abstract for safety 2023-04-13 12:17:52 -07:00
daanx
269e0ea80b merge from dev-reset 2023-04-08 17:51:50 -07:00
daanx
eb62caeda0 allow per page purging instead of reset 2023-04-08 17:37:58 -07:00
daanx
2715191f58 merge from dev-reset 2023-04-05 11:22:36 -07:00