Daan Leijen
2e6ab0f230
add documentation for tracking tools; rename with prefix MI_TRACK_tool
2023-03-06 09:02:38 -08:00
Daan Leijen
82c85d1a13
fix valgrind mem for large alignment
2023-03-05 18:03:04 -08:00
Daan
6dcebdc303
fix sizes in memory tracking and padding for huge alignments
2023-03-04 14:49:02 -08:00
Daan
cb4fc2c792
reset stats for stress test when using mimalloc
2023-03-04 09:17:35 -08:00
Daan Leijen
6a230f8329
fix compilation of heap specific STL allocators for vs2017
2023-02-07 11:07:52 -08:00
Daan Leijen
9adb032e9c
test non-default heap
2022-12-23 13:04:53 -08:00
Daan Leijen
ef3f651f3f
change implementation of mi_realpath to be more robust; see issue #660
2022-12-19 18:59:33 -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
e42a22c9ca
fix warnings
2022-11-28 09:59:48 -08:00
Daan Leijen
c1299484de
refactor C++ STL allocator definitions (pr #651 )
2022-11-27 13:00:15 -08:00
Daan
81b261e657
add test for #587
2022-11-25 15:44:24 -08:00
Daan
78af17e3b3
add extra alignment test
2022-11-25 14:03:00 -08:00
Daan Leijen
a7bd9c08c8
fix decommit of huge pages
2022-11-23 09:58:45 -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
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
35d332141d
experimental destroy_on_exit option for statically linked mimalloc in a dynamically unloaded DLL
2022-11-18 11:00:23 -08:00
daan
2479d168ad
decommit unused prefix of large aligned blocks
2022-11-07 16:41:40 -08:00
daan
1f12c3dd12
remove MI_ALIGNMENT_MAX and add comments
2022-11-07 11:13:42 -08:00
daan
a200291ae5
further progress on removing aligned limit
2022-11-06 08:26:17 -08:00
daan
6a80fa3ac1
initial progress on removing alignment limit
2022-11-05 14:46:52 -07:00
daan
2d3f0e5b7a
fix align5 test
2022-11-01 16:34:17 -07:00
daan
640376a500
update readme
2022-10-30 14:52:26 -07:00
daan
05a75758dd
fix tests
2022-10-30 14:07:41 -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
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
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
d6f3e74684
fix test macros
2022-04-19 10:49:39 -07:00
Daan Leijen
a158aef235
fix for realloc with size 0: returning NULL from realloc now always indicates an error (issue #574 )
2022-04-19 10:31:55 -07:00
Daan Leijen
8713959498
update test macros; add realloc tests
2022-04-19 10:21:41 -07:00
Daan Leijen
5b172280b0
add nodiscard annotations to fix warnings in msvc
2022-04-19 10:10:10 -07:00
Daan Leijen
016b2ad535
nicer heap walk test
2022-04-09 14:08:27 -07:00
Daan Leijen
e18a8cd72e
add heap walk test
2022-04-08 16:58:32 -07:00
daan
ccbc8ae0bb
add huge allocation test (see #544 by @Tiran)
2022-02-10 11:46:28 -08:00
Daan Leijen
320f95f6cd
further fixes to allow statically linking mimalloc in DLL modules (issue #508 )
2022-01-10 16:07:22 -08:00
Frank Richter
691eb0d8ed
Add tests to check "freed memory fill" behaviour in debug mode
2021-12-21 16:20:59 +01:00
Frank Richter
1cf7ca021d
Add tests for debug mode "uninit fill" behaviour
2021-12-21 16:20:59 +01:00
Frank Richter
969f3a6998
Add tests for zero-initialization functions
2021-12-21 16:20:56 +01:00
Frank Richter
d7105c20a9
Move test macros/helpers to a separate header
2021-12-21 12:48:51 +01:00
daan
f16435447c
fix bug in freeing huge OS page allocation spanning multiple huge OS pages
2021-12-18 11:37:00 -08:00
Daan Leijen
89090510bd
update alignment tests
2021-12-18 11:11:44 -08:00
daan
faf2a7020c
add extra alignment tests
2021-12-17 13:25:38 -08:00
daan
89f583a69b
improve aligned allocation performance
2021-12-17 13:18:05 -08:00
Daan
1b09877bc4
Merge branch 'dev' into netbsd_reallocarr
2021-12-15 16:27:26 -08:00
daan
2d9b8aa6b5
rename VER_DIR to VERSION_DIR
2021-12-15 08:33:14 -08:00
Daan
69b6b24688
further improvements to installation directories
2021-12-14 18:29:14 -08:00
David Carlier
d6a56dd99d
introduces netbsd's reallocarr overriding.
...
and couple of tests.
2021-12-01 22:43:13 +00:00
Daan
4ce6821c09
update cmake install for MI_INSTALL_TOPLEVEL
2021-11-14 15:32:21 -08:00
daan
09e59e0610
use size_t instead of uintptr_t where appropiate
2021-11-13 15:13:16 -08:00
David CARLIER
5834751ca6
api test conceal gcc pragma
2021-10-20 16:17:13 +01:00
Daan Leijen
10c31f9b41
fix warnings
2021-10-19 15:13:01 -07:00
Daan
9769cd4103
Merge pull request #428 from Logarithmus/fix-test-i686
...
Fix 'malloc-nomem1' test for 32-bit architectures
2021-10-19 10:51:17 -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
32c5e4774f
update tests with static
2021-07-26 19:14:29 -07:00
Daan Leijen
a3cf23c19f
add test for #445
2021-07-26 19:10:21 -07:00
Artur Sinila
edb0b93c6f
Fix 'malloc-nomem1' test for 32-bit architectures
2021-06-29 22:38:43 +03:00
Daan Leijen
752594e764
add test for #414
2021-06-17 19:47:41 -07:00
Daan Leijen
a83bca72b3
fixes for M1; disable interpose use zones; fix pedantic warnings
2021-06-17 19:15:09 -07:00
Daan Leijen
e2c095fad2
fix installation directories on unix to use /lib, /include, /share; fix issues #399 , #223 , and #89
2021-05-21 15:15:50 -07:00
Daan Leijen
73c339235c
collect in debug mode in stress test
2021-04-28 16:12:32 -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 Leijen
5f596056c9
use 2-6TiB area for hints to accommodate pre-windows8 better
2021-02-24 15:49:43 -08:00
Daan Leijen
9317256a4f
improved ASLR (issue #372 )
2021-02-24 15:14:17 -08:00
Daan Leijen
92ead2d880
bump version to 1.7.0
2021-01-31 13:51:19 -08:00
Daan Leijen
bb386025b5
update override on macOS with interpose of malloc_default_zone (issues #313 )
2020-12-15 16:03:54 -08:00
David Carlier
e6c2fd44fc
DragonFly support fix (for 5.8.x and forward).
...
The pthread slot approach is somewhat buggy (pretty visible
with the stress unit test which segfault more or less randomly,
but the stats never show up).
Using the default approach instead, the test passes eventough
it s relatively slow (e.g 1.5 sec on FreeBSD vs 4.5 on DragonFly with same
machine).
2020-10-22 11:15:37 +01:00
daan
7114d5424a
fix statistics to include padding correctly (issue #301 )
2020-10-11 13:14:43 -07:00
daan
9d5098c705
bump version to 1.6.7 for further development
2020-09-24 10:16:40 -07:00
daan
f88b4b4c27
extend mi_process_info to include elapsed time
2020-09-24 10:13:25 -07:00
daan
364674185e
add option to limit OS allocation and only allow allocation from arenas
2020-09-08 16:56:51 -07:00
daan
c7272afa9a
add mi_reserve_os_memory/mi_manage_os_memory; allow arena allocations to cross multiple bitmap fields
2020-09-07 21:34:34 -07:00
daan
46ee8952eb
update mi_process_info to not use doubles
2020-09-06 13:53:02 -07:00
daan
ee286919d9
add mi_process_info api call
2020-09-06 13:21:19 -07:00
daan
f09549c98f
use main stats for thread count
2020-09-05 18:00:36 -07:00
daan
0d0b5e3fad
restore stress workload for windows pipeline
2020-09-05 11:19:35 -07:00
daan
78f1f9bd5e
reduce stress workload for windows pipeline
2020-09-05 11:16:40 -07:00
daan
d73d6beb71
add aslr test (issue #289 )
2020-09-04 10:41:10 -07:00
daan
900c97664a
merge from dev-atomic
2020-09-03 09:47:01 -07:00
daan
b4825372ab
small compilation warning fixes (extra semicolon etc)
2020-08-29 19:30:38 -07:00
daan
a9686d6ecf
avoid link error on non-windows
2020-08-06 13:37:11 -07:00
daan
a468430772
strengthen memory order of bit operations; insert memory fences
2020-07-26 14:19:30 -07:00
daan
8769082d63
add pointer validity check in debug mode for mi_usable_size/mi_realloc/mi_expand. Issue #269
2020-07-20 14:33:03 -07:00
daan
7c24edfeb0
add thread-id check for thread local FLS callbacks on Windows with static linking; found by @jasongibson
2020-05-04 14:31:32 -07:00
daan
69a0846478
add MI_PADDING flag to cmake to supress use of padding in debug mode
2020-04-07 10:01:18 -07:00
daan
afc4f79a69
fix for ensuring heap initialization with static linking on windows on huge allocations (issues #221 )
2020-04-06 12:15:12 -07:00
daan
0a3e5bb699
further fixes to compile on mingw without warnings (issue #217 )
2020-04-06 10:56:53 -07:00
daan
faa83a1c47
fix issue number: 212 to #221
2020-04-06 09:19:26 -07:00
daan
c7e9cfd3ed
add test case for issue #212
2020-04-06 08:32:25 -07:00
Daan
1ece3ff6aa
Merge pull request #220 from cormacrelf/usable_size
...
Don't call mi_page_usable_size_of with an aligned pointer
2020-04-06 08:05:34 -07:00
Cormac Relf
414acd49ab
Add test to exercise mi_usable_size on aligned allocations
2020-04-06 22:50:21 +10:00
daan
ec61224db0
fix padding issue with zero sized allocation (issue #209 )
2020-02-18 20:05:30 -08:00
daan
baf08e8d54
fix size check on overflow when padding is enabled in debug mode
2020-02-17 09:59:34 -08:00
daan
e981e9227e
ensure thread delayed freeing is correct during heap_absorb; #204
2020-02-13 13:12:19 -08:00
daan
8a2a52843d
delete all thread owned heaps when a thread is terminated (issue #202 )
2020-02-13 12:15:23 -08:00
daan
946a71c4a9
fix issue #204 (and #205 ) by doing thread delayed free after absorbing the pages
2020-02-13 11:37:48 -08:00
daan
f42b8526d0
fix wrong __declspec(restrict) and __attribute__((malloc)) attributes on reallocation functions
2020-02-13 10:36:39 -08:00
daan
04f1c3b1e2
bump version to v1.6.0
2020-02-09 18:53:39 -08:00