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
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
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
75987e4590
Merge pull request #410 from jserv/enforce-binary-prefix
...
Distinguish SI and Binary Prefixes
2021-10-19 12:28:33 -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
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
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
679aad0659
update wasm support with emscripten compilation; now using sbrk instead of wasm_memory_grow
2021-10-01 15:05:01 -07:00
bmalrat
ee0b01c84d
Fixed stats in mi_os_mem_alloc_aligned on windows when re-allocate
...
In the last try the previous mi_os_mem_free decrease stat and mi_win_virtual_alloc doesn't increase it
2021-08-04 17:46:58 -04:00
Daan Leijen
728be93977
fix for #414 making numa node count atomic
2021-06-17 19:38:51 -07:00
Daan Leijen
bb957fcd81
Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev
2021-06-07 17:00:35 -07:00
Daan
cd633b2e2a
Merge pull request #411 from jserv/predict-alloc_size
...
Add branch hint for _mi_os_good_alloc_size
2021-06-07 16:55:39 -07:00
Daan Leijen
4ba32c3160
Revert "make all includes relative"
...
This reverts commit 1feb6123d9
.
2021-06-07 16:47:57 -07:00
Daan Leijen
1feb6123d9
make all includes relative
2021-06-06 20:31:36 -07:00
Jim Huang
d48c93af2c
Add branch hint for _mi_os_good_alloc_size
...
In _mi_os_good_alloc_size, overflow caused by alignment size is rare,
and this patch added the appropriate branch hint during range checks.
2021-05-31 12:01:35 +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
16b3329bd4
Merge pull request #396 from jserv/fix-copyright-date
...
Bump copyright date
2021-04-28 13:11:11 -07:00
Daan Leijen
29ea7a89ab
add braces
2021-04-28 13:08:59 -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
Jim Huang
52943917ad
Rewrite align_down with bitwise operations
...
mi_align_down_ptr was implemented with multiplication and division,
which can be converted to equivalent and deterministic bit operations.
2021-04-21 13:14:53 +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
e64474e06b
add virtiual gaps between hinted allocations in secure mode
2021-02-24 15:30:39 -08:00
Daan Leijen
9317256a4f
improved ASLR (issue #372 )
2021-02-24 15:14:17 -08:00
Daan Leijen
71ac98ab08
rename <Windows.h> include to <windows.h> for mingw compatibility (see pr #367 )
2021-02-22 13:04:11 -08:00
Daan Leijen
0091a641a7
undo previous commit dcae918
due to wrong logic (issue #289 )
2021-02-01 09:55:18 -08:00
Daan Leijen
dcae918b84
always do ASLR in secure mode even in debug mode (issue #289 )
2021-02-01 09:49:12 -08:00
unknown
d1d06b67eb
fix type warning (issue #337 )
2020-12-10 12:13:06 -08:00
unknown
f37a3db37c
cleanup madv_resuable
2020-12-10 11:51:58 -08:00
David Carlier
1deea03bf1
On Darwin, using MADV_FREE_REUSABLE/MADV_FREE_REUSE.
...
The former to notify the pages are available for other processes,
the latter is needed for proper counting in case those pages where
tagged as reusable previously otherwise is a no-op, all for better
RSS reporting for task_info apps.
2020-10-31 22:22:04 +00:00
daan
30b993ecf3
consolidate bit scan operations
2020-09-08 09:27:57 -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
1b571aea06
remove unused local warning
2020-09-05 22:03:47 -07:00
daan
f09549c98f
use main stats for thread count
2020-09-05 18:00:36 -07:00
daan
1ce2e4cb05
use main stats for os statistics
2020-09-05 17:44:15 -07:00
daan
50de0d2358
fix C++ compilation with new atomics
2020-09-05 09:17:42 -07:00
daan
2594b37c56
fix build warning on C++ template deduction on Linux
2020-09-05 08:36:34 -07:00
daan
032eb2a75a
use pragma warning only on msvc (issue #291 )
2020-09-04 13:06:18 -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
47572aceca
improved NUMA node detection on Windows (for AMD Ryzen), issue #282
2020-07-29 14:36:21 -07:00
daan
ef8e5d18a6
replace atomics with C11/C++ atomics with explicit memory order; passes tsan. Issue #130
2020-07-26 18:01:33 -07:00
daan
28014ee2bc
fix atomic access for MADV_FREE in os_reset
2020-07-26 00:16:17 -07:00
daan
09ade02429
bring inline with C11 atomics; no volatile and cas order of expected/desired
2020-07-25 22:52:27 -07:00
David Carlier
2254e20d4c
some apis are available on Illumos which are not available on stock Solaris
...
thus availability evelavated from cflags. discard some sporadically for large pages
support mainly.
2020-07-22 18:26:32 +01:00
Daan
532447fb33
Merge pull request #272 from devnexen/illumos_build
...
illumos support/build fix and large page support
2020-07-21 18:46:28 -07:00
Daan
56b58a8021
Merge pull request #267 from devnexen/haiku_support
...
haiku support.
2020-07-21 18:32:40 -07:00