Daan Leijen
e937070cf1
Merge branch 'dev' into dev-platform
2023-03-15 20:33:35 -07:00
Daan Leijen
c80e2d5b03
Merge branch 'dev' into dev-slice
2023-03-15 20:33:16 -07:00
Daan Leijen
824fd8a7b1
fix issue #707 ; rename a local template parameter (destroy) to work around two-phase template resolve in msvc 2019
2023-03-15 20:31:52 -07:00
Daan Leijen
65bbe4014f
merge from dev-platform
2023-03-15 15:10:12 -07:00
Daan Leijen
9a2dbf373e
move thread init to primitives
2023-03-15 13:35:23 -07:00
Daan Leijen
9b110090b2
move threadid and mi_get_default_heap to primitives
2023-03-14 20:35:00 -07:00
Daan Leijen
3579d3b861
move mi_thread_id to primitives
2023-03-14 19:38:45 -07:00
Daan Leijen
10f62eb5a1
add c primitives, move getenv into primitives
2023-03-14 18:10:00 -07:00
Daan Leijen
08a01d26dc
initial commit of new primitive layer
2023-03-14 16:54:46 -07:00
Daan Leijen
8184e9de1f
Merge branch 'dev' into dev-slice
2023-03-06 10:29:27 -08:00
Daan Leijen
2e6ab0f230
add documentation for tracking tools; rename with prefix MI_TRACK_tool
2023-03-06 09:02:38 -08:00
Daan Leijen
d0eebedfbf
merge from dev
2023-03-05 22:15:07 -08:00
Daan Leijen
465eb81d30
track free blocks in valgrind for heap_destroy as well
2023-03-05 18:18:41 -08:00
Daan
b3176ada74
merge from dev, fix commit size in asan tracking
2023-03-05 11:17:39 -08:00
Daan
056c2ce45b
match track free size to tracked malloc size
2023-03-05 11:01:51 -08:00
Daan
f32b42e6cc
Merge branch 'dev' into dev-slice
2023-03-04 16:03:22 -08:00
Daan
3c906bde8b
better track_free_size
2023-03-04 15:17:13 -08:00
Daan
e4b9ea918f
merge from dev
2023-03-04 14:52:30 -08:00
Daan
6dcebdc303
fix sizes in memory tracking and padding for huge alignments
2023-03-04 14:49:02 -08:00
Daan Leijen
5fe4a3480f
revert default max align commit back to 16
2023-02-20 12:21:06 -08:00
daan
8be4cee418
change max align size to 8
2023-02-20 12:15:26 -08:00
Daan Leijen
e7b941a136
Merge branch 'dev' into dev-slice
2023-02-07 11:08:10 -08:00
Daan Leijen
6a230f8329
fix compilation of heap specific STL allocators for vs2017
2023-02-07 11:07:52 -08:00
Daan Leijen
28cf67e5b6
bump version to 2.0.9
2022-12-23 13:31:56 -08:00
Daan Leijen
4cebb48062
bump version to v1.7.9
2022-12-23 13:29:06 -08:00
Daan Leijen
9b2dd0d757
Merge branch 'dev' into dev-slice
2022-12-19 18:02:13 -08:00
Daan Leijen
4d1e74aadd
add comment
2022-12-19 18:01:58 -08:00
Daan Leijen
35997c0384
Merge branch 'dev' into dev-slice
2022-12-19 17:38:53 -08:00
Daan Leijen
8c89a77064
add default constructors to stl heap allocators
2022-12-19 17:25:49 -08:00
Daan
51e2be6647
Merge branch 'dev' into fix-const
2022-12-19 17:10:54 -08:00
Daan Leijen
92ffc25d79
merge from dev
2022-12-19 17:08:45 -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
6304bbec6e
Merge branch 'dev' into dev-slice
2022-11-28 11:12:52 -08:00
Daan Leijen
ddc9841019
fix parameters for mi_track_free
2022-11-28 11:12:35 -08:00
Daan Leijen
911ea81630
Merge branch 'dev' into dev-slice
2022-11-28 10:55: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
90c8f0516c
Merge branch 'dev' into dev-slice
2022-11-28 09:18:04 -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
447c2f18c5
Merge branch 'dev' into dev-slice
2022-11-27 13:00:30 -08:00
Daan Leijen
c1299484de
refactor C++ STL allocator definitions (pr #651 )
2022-11-27 13:00:15 -08:00
Vadim Markovtsev
4cdfc18888
Refactor C++ allocators to be DRY and protected
2022-11-24 15:13:19 +01:00
Daan Leijen
ed82aa90ea
merge from dev where huge objects are now part of page queues again
2022-11-22 21:54:58 -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
85b5fa11bc
merge segment_init refactoring from dev
2022-11-22 19:03:26 -08:00
Daan Leijen
78690fbec2
fix proteced status in stl allocator (pr #625 )#
2022-11-22 18:41:51 -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 Leijen
83c027c4bf
fix medium page size to 512k
2022-11-21 18:56:56 -08:00
Daan Leijen
c007747169
back to 64k pages but 32MiB segments and a 1MiB minimal commit size
2022-11-21 15:03:15 -08:00
Daan Leijen
1a7f6f376d
move threadid field
2022-11-21 10:22:50 -08:00
Daan Leijen
163afcce75
merge from dev with the destroy_on_exit option
2022-11-21 10:03:52 -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
7ebd1c6daf
merge from dev
2022-11-18 10:22:45 -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 Leijen
82a765a255
experiment with 32KiB slices and increased MI_MIN_EXTEND
2022-11-18 09:38:01 -08:00
Daan Leijen
b940543cd5
experiment with smaller segment size (32MiB) and finer minimal commit (1MiB)
2022-11-17 18:57:45 -08:00
daan
89ba6cc2fa
merge from dev
2022-11-07 16:48:00 -08:00
daan
2479d168ad
decommit unused prefix of large aligned blocks
2022-11-07 16:41:40 -08:00
daan
c26c5da016
Merge branch 'dev' into dev-slice
2022-11-07 14:51:18 -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
5d6b149ea9
bump version to v2.0.8 for further development
2022-11-07 11:37:22 -08:00
daan
312ce6f916
bump version to v1.7.8 for further development
2022-11-07 11:36:44 -08:00
daan
c55cc260ab
merge from dev-align
2022-11-07 11:29:03 -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
1632dd73c9
remove superfluous asserts
2022-11-06 21:03:23 -08:00
daan
651a99b35d
refine last slice setting for large alignments
2022-11-06 20:57:27 -08:00
daan
562efed54d
fix full SEGMENT_SIZE internal alignment by adding one more slice entry
2022-11-06 20:36:51 -08:00
daan
4814a649be
merge from dev-align
2022-11-06 16:23:42 -08:00
Daan
d3715132d1
move null ptr check
2022-11-06 09:52:54 -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
f859190cba
update to v2.0.7
2022-11-03 17:05:38 -07:00
daan
fe61be80bf
update to v1.7.7
2022-11-03 17:03:57 -07:00
daan
6f8e115980
Merge branch 'dev' into dev-slice
2022-11-02 09:51:03 -07:00
daan
5ad06f9997
fix compiler warning on unused parameter (issues #251 )
2022-11-02 09:50:49 -07:00
daan
933713292c
merge from dev
2022-11-01 16:27:50 -07:00
daan
e6bd41ba3f
update arena_id api
2022-11-01 16:26:17 -07:00
daan
9f36808a7f
initial api for heaps restricted to a certain arena
2022-11-01 16:22:51 -07:00
daan
e961ef705e
merge arena_id from dev
2022-11-01 14:16:49 -07:00
daan
fe2d5aa8ff
initial work on heaps restricted to specific arena's
2022-11-01 14:00:20 -07:00
daan
3f122692eb
Merge branch 'dev' into dev-slice
2022-10-31 11:01:10 -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
4442fda895
Merge branch 'dev' into dev-slice
2022-10-31 10:35:05 -07:00
daan
7bef5f5f5b
reduce contention on the delayed_free lock; see issue #630
2022-10-31 10:34:55 -07:00
daan
c128cf69be
fix alignment_max for 32-bit systems (unfortunately, we need to include stdint.h now)
2022-10-30 19:47:54 -07:00
daan
66525ccae3
merge from dev-track
2022-10-30 14:31:21 -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
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
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
6eeb81ee05
initial progress on valgrind integration
2022-10-28 19:54:56 -07:00
Daan Leijen
cacb387a61
Merge branch 'dev' into dev-slice
2022-04-20 17:34:56 -07:00
Daan Leijen
864e4be5ce
add is_aligned check
2022-04-20 17:33:31 -07:00
Daan Leijen
83d84b8703
increase max alignment limit to 16MiB (issue #576 )
2022-04-20 09:54:24 -07:00
Daan Leijen
413141ae29
merge from dev
2022-04-19 19:55:03 -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
487b401b26
Merge branch 'dev' into dev-slice
2022-04-19 18:43:32 -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
f4744bd192
fix further annotation warnings for vs2022
2022-04-19 17:35:07 -07:00
Daan Leijen
ca0bac743d
maintain backward compatible option order
2022-04-14 16:10:36 -07:00
Daan Leijen
b86bbbff00
merge from dev
2022-04-14 16:07:57 -07:00
Daan Leijen
f87cba9bd8
add max segment reclaim as an option
2022-04-14 16:05:49 -07:00
Daan Leijen
7e492f4420
merge from dev
2022-04-09 15:07:07 -07:00
Daan Leijen
6c91c75b14
remove thread local segment cache
2022-04-09 14:33:20 -07:00
Daan Leijen
774d12f12e
merge from dev
2022-04-09 13:26:38 -07:00
Daan Leijen
e18a8cd72e
add heap walk test
2022-04-08 16:58:32 -07:00
Daan Leijen
5c7ada4b20
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2022-04-08 16:37:08 -07:00
Daan Leijen
2d8f13fb93
Merge branch 'dev-slice' of https://github.com/microsoft/mimalloc into dev-slice
2022-04-08 14:46:33 -07:00
Daan
131b62283b
Merge branch 'dev' into dev-slice
2022-04-08 14:10:08 -07:00
Daan
b7677b6f84
fix atomic warnings on clang14 (issue #571 )
2022-04-08 14:09:38 -07:00
Daan Leijen
6431176f4e
Merge branch 'dev' into dev-slice
2022-04-07 19:09:39 -07:00
Daan Leijen
3c7ce7d3c6
improve mi_realloc codepath
2022-04-07 19:09:31 -07:00
Daan Leijen
332346b685
remove unneeded MI_HUGE_OBJ_SIZE_MAX
2022-04-07 10:38:31 -07:00
Daan
18c1891708
Merge branch 'dev' into dev-slice
2022-02-22 16:46:06 -08:00
Daan
db87d6a99c
add delete nothrow variants for aligned deletion as well (see #551 )
2022-02-22 13:49:39 -08:00
Daan
3c669a70f3
Merge pull request #551 from sicherha/override-nothrow-delete
...
Fix compatibility with GNU libstdc++ < 9
2022-02-22 13:44:01 -08:00
Christoph Erhardt
096b9015dc
Fix compatibility with GNU libstdc++ < 9
...
So far, mimalloc does not override the `nothrow` variants of the
`delete` operator because it assumes that their implementation in the
C++ standard library redirects to the default `delete` operators. This
is not the case for GNU libstdc++ < 9, where `std::free()` is called
directly.
This issue might be the cause for the crashes reported in #261 .
Upstream bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68210
This commit ensures that the `nothrow` `delete` operators are properly
overridden by mimalloc.
2022-02-22 21:30:23 +01:00
Daan
10da1af59b
merge from dev
2022-02-14 16:48:30 -08:00
Daan
ec2265486e
bump version for further development
2022-02-14 16:47:57 -08:00
Daan
19edc880da
merge from dev
2022-02-14 16:36:03 -08:00
Daan
817569dfad
bump to version x.0.5
2022-02-14 16:34:18 -08:00
daan
8ec83f6945
increase min commit to 2 mib
2022-02-05 11:21:47 -08:00
daan
e11100a137
add minimal commit size for increased efficiency (decommit fine grained, commit coarse grained)
2022-02-05 10:57:15 -08:00
daan
0e2df71829
increase minimal commit size to 8*slice-size and add decommit_extend_delay as option
2022-02-04 16:11:38 -08:00
Daan
cbcee4dce4
merge from dev
2022-02-03 15:49:27 -08:00
Daan
c6f32c9533
Merge pull request #528 from michaeljclark/mimalloc-fixes
...
mimalloc-types: amend comment adding medium to list of page kinds
2022-02-02 19:57:50 -08:00
Daan
32da74e032
Merge pull request #539 from devnexen/obsd_asm_fix
...
tls revives inline asm for openbsd
2022-02-02 19:45:39 -08:00
Daan
b365623b13
merge from dev
2022-02-02 19:21:15 -08:00
Daan
f515b80093
update documentation on options
2022-02-02 19:19:03 -08:00
Daan
4e65b5018f
clean up options
2022-02-02 19:01:41 -08:00
Daan
ccfe005731
decommit in abandoned pages on mi_collect
2022-02-02 17:08:05 -08:00
Daan
bd2ac3c92e
collect segment cache on mi_collect
2022-02-02 16:17:21 -08:00
David Carlier
b1e1b0573c
tls revives inline asm for openbsd
2022-01-27 07:01:32 +00:00
Michael Clark
9da8788dae
mimalloc-types: amend comment adding medium to list of page kinds
2022-01-19 10:14:08 +13:00
daan
a74c05c6c0
Merge branch 'dev' into dev-slice
2022-01-10 16:21:15 -08:00
Daan
55b4d5e2b1
Merge pull request #517 from tiran/debug-uninit
...
Allow overrides of MI_DEBUG memory constants
2022-01-10 16:12:10 -08:00
Daan
f317225a70
ignore reset_decommits option in the 2.x / dev-slice version
2022-01-10 12:10:18 -08:00
Daan
0842004b61
Merge branch 'dev' into dev-slice
2022-01-10 12:04:47 -08:00
Daan
4fc63358a6
update copyright year
2022-01-10 12:01:26 -08:00
Daan
9f9c77e6b6
Merge branch 'dev' into dev-slice
2022-01-10 11:41:12 -08:00
Daan
4b63c76861
avoid conditional load on macos
2022-01-10 11:40:36 -08:00
Christian Heimes
0353fc38dd
Allow overrides of MI_DEBUG memory constants
...
CPython and Windows CRT debug builds use different values for uninit,
freed, and padding bytes. Make ``MI_DEBUG_*`` constants conditional to
allow embedders to override the constants.
Windows dbgheap:
```
_bNoMansLandFill = 0xFD
_bDeadLandFill = 0xDD
_bCleanLandFill = 0xCD
```
Python memory debug
```
PYMEM_CLEANBYTE 0xCD
PYMEM_DEADBYTE 0xDD
PYMEM_FORBIDDENBYTE 0xFD
```
Signed-off-by: Christian Heimes <christian@python.org>
2022-01-05 13:22:47 +01:00
daan
3eac4a912c
Merge branch 'dev' into dev-slice
2022-01-01 16:24:41 -08:00
daan
43e5cd2671
revise assembly test for the _mi_threadid(); fix issue #495 with musl libc on arm; test specifically for bionic libc on Android
2022-01-01 15:54:06 -08:00
Daan
6ead2840ec
Merge pull request #504 from res2k/tweak-stats-doc
...
Tweak documentation for mi_heap_area_t::used.
2021-12-20 17:44:52 -08:00
Frank Richter
ff3bb5ce7b
Tweak documentation for mi_heap_area_t::used.
...
For microsoft/mimalloc#503 .
2021-12-19 14:51:15 +01:00
daan
72a33c37ef
merge from dev
2021-12-18 11:34:02 -08:00
Daan Leijen
78e2e580f8
Merge branch 'dev' into dev-slice
2021-12-18 11:11:54 -08:00
Daan Leijen
89090510bd
update alignment tests
2021-12-18 11:11:44 -08:00
daan
30a99e2c51
default to portable C for the thread id on arm 32-bit, issue #495
2021-12-17 13:48:39 -08:00
daan
abbff9c030
merge from dev (MI_ALIGNED_MAX)
2021-12-17 13:23:24 -08:00
daan
89f583a69b
improve aligned allocation performance
2021-12-17 13:18:05 -08:00
daan
684c2c82a7
restrict max aligment boundary to prevent bug with segment determination (found by Matthew Parkinson).
2021-12-17 11:40:46 -08:00
daan
2af1db7f3a
Merge branch 'dev' into dev-slice
2021-12-15 19:29:04 -08:00
daan
55ccc94707
wip: fix zero init for sbrk; add lock around sbrk
2021-12-15 19:28:34 -08:00
daan
82a0e56f35
fix warning on mi_reallocarr
2021-12-15 18:54:57 -08:00
Daan
4a586808f7
merge
2021-12-15 16:52:36 -08:00
Daan
317093d78b
fix Android overriding (issue #381 and PR #487 )
2021-12-15 16:48:57 -08:00
Daan
17456f18d1
Merge pull request #489 from devnexen/remove_dfbsd_warning
...
removes dragonflybsd warning since the api and library overriding wor…
2021-12-15 16:37:56 -08:00
Daan
1b09877bc4
Merge branch 'dev' into netbsd_reallocarr
2021-12-15 16:27:26 -08:00
Daan
523e6d5c9b
fix thread slot on arm32 (issue #495 )
2021-12-15 16:05:07 -08:00
Daan
d15f5fae64
merge from dev
2021-12-14 18:29:58 -08:00
Daan
69b6b24688
further improvements to installation directories
2021-12-14 18:29:14 -08:00
Daan
c858690dea
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-12-12 10:35:19 -08:00
Daan
3a212d1895
fix assembly for mi_tls_slot_set on x32 and x64. Issue #488
2021-12-12 10:35:13 -08:00
David Carlier
d6a56dd99d
introduces netbsd's reallocarr overriding.
...
and couple of tests.
2021-12-01 22:43:13 +00:00
DC
20e37bf7c1
removes dragonflybsd warning since the api and library overriding works, also
...
for the os doc report purpose.
2021-11-28 08:14:21 +00:00
daan
5f6246b2cb
merge from dev
2021-11-23 19:05:19 -08:00
daan
9183b1eec0
remove experiment with unsafe_free_with_threadid
2021-11-23 19:04:41 -08:00
daan
ef6ea7e718
merge from dev
2021-11-23 18:00:12 -08:00
daan
8b60a5ab70
add mi_unsafe_free_with_threadid and mi_get_current_threadid()
2021-11-23 17:59:27 -08:00
daan
f412df7a2b
make segment size smaller on 32-bit
2021-11-14 16:52:10 -08:00
daan
5a1c3c8a4a
Merge branch 'dev' into dev-slice
2021-11-14 16:48:04 -08:00
daan
85eccf324f
Merge branch 'master' into dev
2021-11-14 16:44:54 -08:00
Daan
18fc788201
merge from dev
2021-11-14 15:39:05 -08:00
Daan
4a590b1447
bump version number to 1.7.3
2021-11-14 15:33:56 -08:00
Daan
d67ff1ca9f
add include cstdef for std::size_t in C++
2021-11-14 15:32:43 -08:00
Daan
9c9c3a0311
Merge pull request #485 from devnexen/builtin_overflow_sig_fix
...
fix spurious build warning with overflow builtins
2021-11-14 14:47:38 -08:00
daan
70547b5f16
fix slice count
2021-11-14 12:09:20 -08:00
daan
32170897dd
make decommit size equal to slice size
2021-11-14 11:45:28 -08:00
daan
c46a6f66c6
Merge branch 'dev-slice' into dev-slice-cmask
2021-11-14 11:26:47 -08:00
daan
a4ea2205ba
merge from dev
2021-11-14 11:25:51 -08:00
daan
4b0cda2012
take overcommit into account for eager commit delay
2021-11-14 11:23:11 -08:00
daan
511a8996f3
increase commit mask blocks to 2xslice size
2021-11-13 20:12:03 -08:00
daan
12bfd18ba7
fix commit mask for huge segments
2021-11-13 16:15:03 -08:00
daan
627892852c
merge from dev-slice
2021-11-13 15:53:57 -08:00
daan
b72065f04b
move commit mask functions to segment.c
2021-11-13 15:50:26 -08:00
daan
f1ce9228a1
use size_t for bitmask
2021-11-13 15:29:57 -08:00
daan
88e6b52b88
fix types to size_t
2021-11-13 15:25:51 -08:00
daan
f9597ba7cb
merge from dev-slice
2021-11-13 15:18:56 -08:00
daan
721486c82b
merge from dev
2021-11-13 14:52:11 -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
9afc253726
add comments, renaming
2021-11-13 14:03:16 -08:00
daan
6ace2fe4e0
Merge branch 'dev-slice' into dev-slice-cmask
2021-11-12 19:04:35 -08:00
daan
5c08f75d69
merge from dev
2021-11-12 19:04:18 -08:00
daan
f9ac60a90f
suppres eager commit delay for the first 4 threads
2021-11-12 19:03:20 -08:00
daan
335d554438
merge from dev-slice
2021-11-12 18:38:14 -08:00
daan
b1aff903f5
fix decommit bug
2021-11-11 17:45:41 -08:00
daan
998c2de633
merge from dev-slice
2021-11-10 16:49:43 -08:00
daan
49d64dbc95
save decommit_mask for segments in the segment cache
2021-11-10 16:30:21 -08:00
daan
8cc7d0c019
increase segment size to 64MiB
2021-11-10 16:29:53 -08:00
daan
49c75a3157
wip: increase commit mask resolution
2021-11-09 20:19:31 -08:00
Daan
464cba833e
Merge branch 'dev' into dev-slice
2021-11-04 18:55:34 -07:00
Daan
e853f530a0
add noexcept attributes to improve mi_free codegen
2021-11-04 18:54:57 -07:00
Daan
f3ffa663f1
merge from dev
2021-11-02 22:42:25 -07:00
Daan
751a2249c8
add mi_decl_externc, nice layout
2021-11-02 21:53:20 -07:00
Daan
5360639748
add mi_malloc_good_size
2021-11-02 21:52:00 -07:00
dc
5b0e73281f
fix spurious build warning with overflow builtins
2021-10-28 22:43:21 +01:00
Daan
db223e4adb
merge from dev
2021-10-27 18:09:16 -07:00
Daan
f38956568c
only set visibility attribute when compiling for a shared library
2021-10-27 17:01:12 -07:00
Daan
725fe2ac7d
Merge branch 'dev' into dev-slice
2021-10-21 16:17:31 -07:00
Christian Heimes
13de1920ae
Rename _os_random_weak to _mi_os_random_weak
...
The ``_os_random_weak`` function is the only non-static function
besides ``_ZSt15get_new_handlerv`` that is not prefixed with ``mi`` or
``_mi``.
The discrepancy was discovered by CPython's smelly script. The checker
looks for exported symbols that don't have well-defined prefixes.
Signed-off-by: Christian Heimes <christian@python.org>
2021-10-21 21:40:45 +02:00
Daan
aeb73b0cd4
merge from dev
2021-10-19 12:55:10 -07:00
Daan
75987e4590
Merge pull request #410 from jserv/enforce-binary-prefix
...
Distinguish SI and Binary Prefixes
2021-10-19 12:28:33 -07:00
Daan
6068a8bb1b
Merge pull request #420 from hankluo6/typo
...
Fix typo
2021-10-19 12:17:44 -07:00
Daan
20a3eee6f0
Merge pull request #449 from bmalrat/FixTypo
...
Fixed typo in header
2021-10-19 10:24:54 -07:00
Daan
a4078df9d5
Merge branch 'dev' into dev-slice
2021-10-19 10:17:53 -07:00
Daan
5b9409f4d6
add space after _Atomic to prevent errors on msvc without /TP (see PR #452 )
2021-10-19 10:17:30 -07:00
Daan
1917fbd847
Merge pull request #467 from tiran/strict_prototypes
...
Fix strict function prototype warnings
2021-10-19 09:35:40 -07:00
Christian Heimes
7c73e3996d
Fix strict function prototype warnings
...
Fix warning ``warning: function declaration isn’t a prototype`` when
building mimalloc with ``-Wstrict-prototypes`` flag. In C argumentless
functions should be declared as ``func(void)``.
Reproducer:
```shell
$ cmake ../.. -DCMAKE_C_FLAGS="-Wstrict-prototypes"
$ make VERBOSE=1
```
Co-authored-by: Sam Gross <colesbury@gmail.com>
Co-authored-by: Neil Schemenauer <nas@arctrix.com>
Signed-off-by: Christian Heimes <christian@python.org>
2021-10-19 10:48:26 +02:00
Daan Leijen
54659aec9e
merge from dev
2021-10-18 16:28:08 -07:00
Daan Leijen
e6b58052da
add start offset to pages to reduce cache/page effects
2021-10-02 11:13:00 -07:00
Daan Leijen
9c5928060e
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-01 15:10:42 -07:00
Daan Leijen
d7ac4478a8
Merge branch 'dev' into dev-slice
2021-10-01 15:05:41 -07:00
Daan Leijen
679aad0659
update wasm support with emscripten compilation; now using sbrk instead of wasm_memory_grow
2021-10-01 15:05:01 -07:00
paulip1792
a2c3b0f8af
add option to reserve huge os pages at a specific numa node.
2021-08-10 16:30:44 +08:00
bmalrat
30be78d97a
Fixed typo in headers
2021-08-04 17:31:48 -04:00
Jim Huang
4369fe4323
Eliminate preprocessor warnings due to undefined "__GNUC__" with ClangCL
...
When building some code against mimalloc with C inside Visual Studio
with ClangCL, the compiler complains about __GNUC__ being undefined.
Reported by Mojca Miklavec.
Close #422
2021-06-24 17:29:06 +08:00
hank
1c1571742d
fix typo
2021-06-21 22:36:47 +08:00
Daan Leijen
b3b0fb5832
merge from dev
2021-06-17 20:05:40 -07:00
Daan Leijen
728be93977
fix for #414 making numa node count atomic
2021-06-17 19:38:51 -07:00
Daan Leijen
5869c85749
merge from dev
2021-06-17 19:18:57 -07:00
Daan Leijen
a83bca72b3
fixes for M1; disable interpose use zones; fix pedantic warnings
2021-06-17 19:15:09 -07:00
Daan
8af2511e66
Merge pull request #412 from diorszeng/dev-slice
...
fix typo
2021-06-07 16:55:03 -07:00
Daan Leijen
aeb62c2711
fix double quote includes
2021-06-07 16:50:31 -07:00
Daan Leijen
4ba32c3160
Revert "make all includes relative"
...
This reverts commit 1feb6123d90f5557a0fc1bc2afc72401e58f8cb0.
2021-06-07 16:47:57 -07:00
Daan Leijen
7b595bd957
Merge branch 'dev' into dev-slice
2021-06-06 20:31:53 -07:00
Daan Leijen
1feb6123d9
make all includes relative
2021-06-06 20:31:36 -07:00
diorszeng
0611058974
Update mimalloc-types.h
...
fix typo
2021-05-31 15:02:17 +08:00
Jim Huang
0f57425f80
Distinguish SI and Binary Prefixes
...
SI prefixes [the decimal prefixes] refer strictly to powers of 10. They
should not be used to indicate powers of 2. e.g., one kilobit
represents 1000 bits instead of 1024 bits. IEC 60027‐2 symbols are
formed adding a "i" to the SI symbol (e.g. G + i = Gi).
2021-05-30 20:13:28 +08:00
Daan Leijen
10ce8839fa
merge from dev
2021-04-28 13:23:46 -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
766f1f9345
Merge pull request #388 from nico-abram/patch-2
...
Fix typo in comment
2021-04-22 10:34:13 -07:00