Azat Khuzhin
0d4f2ff914
Relax aligned_alloc() restrictions
...
"Passing a size which is not an integral multiple of alignment" is too
strict, and lots of code relies on it, i.e.:
(gdb) bt
0 mi_aligned_alloc (alignment=8, size=44) at alloc-posix.c:88
1 0x000000002dc55fdd in aligned_alloc (alignment=8, size=44) at alloc-override.c:251
2 0x0000000017be85b6 in Memory::newImpl<std::align_val_t> (size=44, align=(unknown: 8)) at memory.h:47
3 operator new (size=44, align=(unknown: 8)) at new_delete.cpp:60
4 0x000000002ba66c5d in llvm::allocate_buffer(unsigned long, unsigned long) ()
5 0x000000002898eba1 in llvm::MallocAllocator::Allocate(unsigned long, unsigned long) ()
6 0x000000002b9e95ee in llvm::StringMapEntry<llvm:🆑 :Option*>* llvm::StringMapEntry<llvm:🆑 :Option*>::Create<llvm::MallocAllocator, llvm:🆑 :Option*>(llvm::StringRef, llvm::MallocAllocator&, llvm:🆑 :Option*&&) ()
7 0x000000002b9e9428 in std::__1::pair<llvm::StringMapIterator<llvm:🆑 :Option*>, bool> llvm::StringMap<llvm:🆑 :Option*, llvm::MallocAllocator>::try_emplace<llvm:🆑 :Option*>(llvm::StringRef, llvm:🆑 :Option*&&) ()
8 0x000000002b9e925f in llvm::StringMap<llvm:🆑 :Option*, llvm::MallocAllocator>::insert(std::__1::pair<llvm::StringRef, llvm:🆑 :Option*>) ()
9 0x000000002b9dc689 in (anonymous namespace)::CommandLineParser::addOption(llvm:🆑 :Option*, llvm:🆑 :SubCommand*) ()
10 0x000000002b9cf219 in (anonymous namespace)::CommandLineParser::addOption(llvm:🆑 :Option*, bool) ()
11 0x000000002b9ce831 in llvm:🆑 :Option::addArgument() ()
2022-05-18 01:14:43 +03:00
Daan Leijen
f2712f4a8f
Merge branch 'dev' into dev-slice
2022-04-14 16:54:04 -07:00
Daan Leijen
8d6a9df752
update windows pipeline to 2022
2022-04-14 16:47:43 -07:00
Daan Leijen
45044da101
do not turn on C++ compilation on msvc by default
2022-04-14 16:43:10 -07:00
Daan Leijen
85e89a33b1
update readme
2022-04-14 16:32:08 -07:00
Daan Leijen
0b72d8a2ef
update readme for v1.7.6 release
2022-04-14 16:28:05 -07:00
Daan Leijen
f819dbb4e4
fix trailing comma
2022-04-14 16:12:02 -07:00
Daan Leijen
12a3a4c51a
merge from dev
2022-04-14 16:11:29 -07:00
Daan Leijen
ca0bac743d
maintain backward compatible option order
2022-04-14 16:10:36 -07:00
Daan Leijen
f9416ce71c
merge from dev
2022-04-14 16:09:12 -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
fed9b254a1
extra check in VirtualFree for Windows on mi_os_mem_free
2022-04-14 15:42:13 -07:00
Daan
dd929659ab
fix wrong assertion
2022-04-14 11:28:40 -07:00
Daan Leijen
4b95e8ea1d
Merge branch 'dev' into dev-slice
2022-04-10 13:02:38 -07:00
Daan Leijen
9afdf762a6
fix c++ compilation warning for an unused parameter
2022-04-10 12:55:59 -07:00
Daan Leijen
2ab70f3c84
remove ifdefs around mi_os_aligned_hint
2022-04-10 12:55:36 -07:00
Daan Leijen
a3ced56b18
merge from dev
2022-04-09 16:22:10 -07:00
Daan Leijen
f4b7ea9e9e
fix compile warnings
2022-04-09 16:20:27 -07:00
Daan Leijen
96bf3a8039
fix warning
2022-04-09 16:16:11 -07:00
Daan Leijen
0a1d0bbcbf
Merge branch 'dev' into dev-slice
2022-04-09 15:59:11 -07:00
Daan Leijen
c825851404
define MEM_EXTENDED_PARAMETER structure ourselves on Windows in order to compile with older SDK's
2022-04-09 15:59:05 -07:00
Daan Leijen
7e492f4420
merge from dev
2022-04-09 15:07:07 -07:00
Daan Leijen
faca422b71
fix msvc warnings at level 4
2022-04-09 14:48:30 -07:00
Daan Leijen
6c91c75b14
remove thread local segment cache
2022-04-09 14:33:20 -07:00
Daan Leijen
157c9b0966
Merge branch 'dev' into dev-slice
2022-04-09 14:08:36 -07:00
Daan Leijen
016b2ad535
nicer heap walk test
2022-04-09 14:08:27 -07:00
Daan Leijen
12c91999ac
Merge branch 'dev' into dev-slice
2022-04-09 13:48:30 -07:00
Daan Leijen
adc8b3187c
fix Windows C++ compilation in combination with dynamic overriding by preferring RtlGenRandom
2022-04-09 13:48:16 -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
ea0f5b8779
use new MI_ATOMIC_VAR_INIT
2022-04-08 14:52:15 -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
862f07bc76
Merge branch 'dev' into dev-slice
2022-04-08 14:44:35 -07:00
Daan
674ee63fa7
Merge pull request #548 from Biswa96/strict_prototypes
...
Fix strict function prototype warnings
2022-04-08 14:33:25 -07:00
Daan
588f327f6a
Merge pull request #563 from devnexen/cpp_override_fix
...
c++ operators override multiple definitions fix.
2022-04-08 14:31:46 -07:00
Daan
324242e0e4
Merge pull request #553 from romange/Pr2
...
Fix wrong reporting of area used bytes
2022-04-08 14:25:13 -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
984e946f76
Merge branch 'dev' into dev-slice
2022-04-07 20:26:43 -07:00
daan
185f296513
improve atomic operations for the thread metadata cache
2022-04-07 20:26:35 -07:00
daan
196ceeac59
merge from dev
2022-04-07 20:18:52 -07:00
daan
6e5788d076
add small cache for thread metadata for programs that create/destroy many OS threads
2022-04-07 20:17:48 -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
2a4a3dfa23
Merge branch 'dev' into dev-slice
2022-04-07 16:12:30 -07:00
Daan
25ecec3c3b
fix for dynamic overriding on macOS; add warning about C++ compilation (as that does not interact well with interpose)
2022-04-07 16:12:16 -07:00
Daan
0075a81879
Merge branch 'dev' into dev-slice
2022-04-07 13:02:53 -07:00
Daan
82dd094ec4
fix assertion failure with mixed pointer errors
2022-04-07 13:02:40 -07:00