daan
9183b1eec0
remove experiment with unsafe_free_with_threadid
2021-11-23 19:04:41 -08:00
daan
3548d8d716
add noinline to avoid warnings
2021-11-23 18:39:03 -08:00
daan
8b60a5ab70
add mi_unsafe_free_with_threadid and mi_get_current_threadid()
2021-11-23 17:59:27 -08:00
daan
1c22650719
remove no-invalid-memory-model supression
2021-11-15 10:52:09 -08:00
daan
09c658dd40
try to allocate within our hint space (partially addresses issue #360 )
2021-11-15 10:10:47 -08:00
daan
0560fc27c0
update readme
v1.7.3
2021-11-14 16:47:50 -08:00
daan
85eccf324f
Merge branch 'master' into dev
2021-11-14 16:44:54 -08:00
daan
6ca454a04a
update readme
2021-11-14 16:41:24 -08:00
Daan
4a590b1447
bump version number to 1.7.3
2021-11-14 15:33:56 -08:00
Daan
07253fb44c
emit error message if out-of-memory in C++
2021-11-14 15:33:04 -08:00
Daan
d67ff1ca9f
add include cstdef for std::size_t in C++
2021-11-14 15:32:43 -08:00
Daan
4ce6821c09
update cmake install for MI_INSTALL_TOPLEVEL
2021-11-14 15:32:21 -08:00
Daan
1ebb74cb7a
Merge pull request #455 from paulip1792/reserve-hugepages-by-numa-node
...
add option to reserve huge os pages at a specific numa node.
2021-11-14 14:56:13 -08:00
Daan
5e55525e5e
Merge pull request #483 from joy4eg/install-dirs-dev
...
cmake: removed hardcoded names for top level configuration
2021-11-14 14:49:48 -08:00
Daan
c235c3cccb
Merge pull request #484 from sblondon/patch-1
...
Fix preload path in documentation example
2021-11-14 14:48:08 -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
4b0cda2012
take overcommit into account for eager commit delay
2021-11-14 11:23:11 -08:00
daan
09e59e0610
use size_t instead of uintptr_t where appropiate
2021-11-13 15:13:16 -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
959845540d
use W4 for msvc compilation
2021-11-13 14:13:03 -08:00
daan
c56be7ac5a
show cflags in cmake; fix -fno-builtin-malloc flag
2021-11-13 13:30:03 -08:00
daan
d52b559b57
use eager delay after 2 threads
2021-11-12 19:59:59 -08:00
daan
f9ac60a90f
suppres eager commit delay for the first 4 threads
2021-11-12 19:03:20 -08:00
daan
d2de66b8fa
do not delay eager commit for the main thread
2021-11-12 18:44:33 -08:00
Daan
f72e5688f5
remove assign in while condition
2021-11-10 11:58:04 -08:00
Daan
fd61997cef
improve aligned support on BSD and MAP_ALIGN systems
2021-11-10 11:26:36 -08:00
Daan
89abbe75d8
improve aligned support on BSD and MAP_ALIGN systems
2021-11-10 11:23:11 -08:00
Daan
8c9ccea2f5
fix huge page madvise in case mmap failed
2021-11-10 10:46:06 -08:00
Daan
e96614961f
fix printf format type mismatches (issue #486 )
2021-11-06 14:19:14 -07:00
daan
f2e3cca213
fix build for missing malloc_good_size
2021-11-04 19:10:15 -07:00
Daan
c47de7eb90
improve macOS overriding
2021-11-04 18:55:12 -07:00
Daan
e853f530a0
add noexcept attributes to improve mi_free codegen
2021-11-04 18:54:57 -07:00
Daan
32ee13f41e
improve macOS M1 performance; use interpose in combination with zone's; add -fno-builtin-malloc flag in building with MI_OVERRIDE
2021-11-02 21:54:44 -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
Daan
74efd6ddac
use load relaxed in mi_free for better code on M1
2021-11-02 21:50:54 -07:00
Daan
dbf8bafc3a
avoid accessing the thread_id after process initialized is set
2021-11-02 21:50:15 -07:00
Daan
d0d47e6489
avoid accessing the thread_id after process initialized is set
2021-11-02 21:49:05 -07:00
dc
5b0e73281f
fix spurious build warning with overflow builtins
2021-10-28 22:43:21 +01:00
sblondon
5a5e4e3036
Fix preload path in documentation example
...
The .so files are usually in `/usr/lib`, not `/usr/bin`. The updated path is the same as below in the text.
2021-10-28 15:01:36 +02:00
Yaroslav Syrytsia
0ead911b6b
cmake: removed hardcoded names for top level configuration
2021-10-28 12:04:48 +03:00
Daan Leijen
1b1c9186a4
suppress warning on discard attribute on forwards
2021-10-27 19:06:27 -07:00
Daan
5fd77aa198
refactor os_overcommit detection
2021-10-27 17:39:11 -07:00
Daan
0335d32766
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-27 17:25:09 -07:00
Daan
88d5349d47
Merge pull request #479 from devnexen/overcommit_if_the_system_approves
...
proposal to not overcommit page unconditionally on Linux and FreeBSD,
2021-10-27 17:24:57 -07:00
Daan
13b30bf2dd
Merge branch 'dev' into overcommit_if_the_system_approves
2021-10-27 17:12:18 -07:00
Daan
f3db35e6b6
Merge commit 'fdcdc4c' into dev
2021-10-27 17:09:30 -07:00
Daan
fdcdc4cf2a
only set visibility attribute when compiling for a shared library (issue #475 )
2021-10-27 17:08:41 -07:00
Daan
6ccf7e87c0
minor edits
2021-10-27 17:08:00 -07:00
Daan
4d8ba61a2d
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-27 17:03:05 -07:00
Daan
a0c7cf56e6
Merge pull request #477 from devnexen/numa_domains_fbsd
...
NUMA base detection on FreeBSD.
2021-10-27 17:01:52 -07:00
Daan
f38956568c
only set visibility attribute when compiling for a shared library
2021-10-27 17:01:12 -07:00
Daan
8cf618a452
Merge pull request #476 from devnexen/malloc_usable_size_fbsd
...
fixes malloc_usable_size signature on FreeBSD.
2021-10-27 12:11:43 -07:00
Daan
ca9785d40e
fix compilation with MI_DEBUG>3, issue #480
2021-10-27 10:06:34 -07:00
David Carlier
00edd9201b
proposal to not overcommit page unconditionally on Linux and FreeBSD,
...
respecting userland settings.
2021-10-24 20:57:58 +01:00
David Carlier
2d2d9af5c6
while at it, doing dragonflybsd too
2021-10-24 11:37:20 +01:00
David Carlier
fc7777ee8c
NUMA base detection on FreeBSD.
2021-10-22 10:11:20 +01:00
David Carlier
898a23ec2b
fixes malloc_usable_size signature on FreeBSD.
2021-10-22 08:12:14 +01:00
Daan
02938b7048
Merge pull request #471 from devnexen/haiku_build_update
...
Haiku build update, since the beta3 few more posix functions are avai…
2021-10-21 15:25:52 -07:00
Daan
2417f6d8a7
Merge pull request #474 from tiran/mi_prefix_os_random
...
Rename _os_random_weak to _mi_os_random_weak
2021-10-21 15:21:19 -07:00
Daan
1fc83cda05
Merge pull request #472 from Brooooooklyn/patch-1
...
Fix ARM64 MSVC linker problem
2021-10-21 15:16:43 -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
LongYinan
45321237b5
Fix ARM64 MSVC linker problem
...
Close https://github.com/microsoft/mimalloc/issues/426
2021-10-21 21:15:08 +08:00
David CARLIER
b5b52b8879
Haiku build update, since the beta3 few more posix functions are available e.g. madvise
2021-10-20 18:33:12 +00:00
Daan
d482555675
Fix warnings on osx with g++ compilation
2021-10-20 09:55:21 -07:00
Daan
e02f88a11c
Fix warnings with g++-11 compilation
2021-10-20 09:55:03 -07:00
Daan
4d89176eb4
add MI_USE_LIBATOMIC to link with -latomic on older systems (see also PR #429 ); rename MI_INTERPOSE to MI_OSX_INTERPOSE
2021-10-20 09:35:58 -07:00
Daan
8dd8db8354
Merge pull request #470 from devnexen/unit_test_clang_build_fix
...
api test conceal gcc pragma
2021-10-20 08:32:28 -07: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
505ea78cae
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-19 15:07:19 -07:00
Daan
ae5aae7e10
allow decommit in arena separate from initial commit
2021-10-19 14:00:40 -07:00
Daan
bb00a5a32e
remove MADV_FREE_REUSABLE from mi_os_reset as it needs MADV_FREE_REUSE to reuse the memory again.
2021-10-19 13:11:11 -07:00
Daan
9a724889ea
refine stat output with new SI units
2021-10-19 12:50:16 -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
2adf69859b
Merge pull request #418 from devnexen/haiku_build_fix
...
haiku biuld fix proposal, warning suppression.
2021-10-19 12:19:44 -07:00
Daan
6068a8bb1b
Merge pull request #420 from hankluo6/typo
...
Fix typo
2021-10-19 12:17:44 -07:00
Daan
62389f34fa
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-10-19 10:56:19 -07:00
Daan
2d821003b0
don't add prefix if build type is None (PR #427 )
2021-10-19 10:56:13 -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
adeef8d403
formatting
2021-10-19 10:31:49 -07:00
Daan
4b52ce4095
Merge pull request #450 from bmalrat/FixStatOnWindowsRealloc
...
Fixed stats in mi_os_mem_alloc_aligned on windows when re-allocate
2021-10-19 10:29:16 -07:00
Daan
b4a5c8459d
Merge pull request #461 from objectx/patch-1
...
fix: Fix a typo
2021-10-19 10:25:16 -07:00
Daan
20a3eee6f0
Merge pull request #449 from bmalrat/FixTypo
...
Fixed typo in header
2021-10-19 10:24:54 -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
f0f9aecfe4
add comment on #if ending
2021-10-19 09:52:20 -07:00
Daan
4841bc1721
Merge pull request #465 from thomcc/no-getenv
...
Add an option to disable environment access inside options.c
2021-10-19 09:49:34 -07:00
Daan
ea46430016
Merge pull request #468 from tiran/default_source
...
Define _DEFAULT_SOURCE for syscall and realpath
2021-10-19 09:40:21 -07:00
Daan
60937b5bc8
add -Wstrict-prototypes flag during compilation
2021-10-19 09:39:33 -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
Daan
d49b3a95a2
Merge pull request #464 from JJL772/master
...
Fix `_mi_error_message` printf formatting error
2021-10-19 09:28:20 -07:00
Christian Heimes
afbcf20f24
Define _DEFAULT_SOURCE for syscall and realpath
...
Define ``_DEFAULT_SOURCE`` in ``random.c`` and ``alloc.c``. The macro
is required for ``syscall()`` and ``realpath()``. Other files like
``os.c`` already define the macro.
Signed-off-by: Christian Heimes <christian@python.org>
2021-10-19 15:07:54 +02: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
22c2fd82cc
ensure managed os memory is at least one arena block in size
2021-10-18 20:44:19 -07:00
Daan Leijen
bcce4d52bf
fix bug in determination of block size in pre-reserved arena memory
2021-10-18 20:39:39 -07:00
Daan
d6bbc08119
prefer monotonic clock for stats (issue #457 )
2021-10-18 18:24:59 -07:00
Daan Leijen
6ef15943cc
fix comments
2021-10-18 16:59:19 -07:00
Daan Leijen
bd8e3fd8e1
increase robustness of primitive windows allocation by always using a fallback to VirtualAlloc
2021-10-18 16:46:06 -07:00
Daan Leijen
0fb61c9eaa
do not call exit if try handler fails but use abort instead
2021-10-18 16:25:10 -07:00
Thom Chiovoloni
3c058f07a9
Add an option to disable automatic use of getenv
inside options.c
2021-10-08 23:59:35 -07:00