Implement support for non-coalescing maps on MinGW.

- Do not reallocate huge objects in place if the number of backing
  chunks would change.
- Do not cache multi-chunk mappings.

This resolves #213.
This commit is contained in:
Jason Evans
2015-07-24 18:21:42 -07:00
parent 40cbd30d50
commit d059b9d6a1
7 changed files with 44 additions and 4 deletions

View File

@@ -150,7 +150,10 @@ any of the following arguments (not a definitive list) to 'configure':
the virtual memory for later use. munmap() is disabled by default (i.e.
--disable-munmap is implied) on Linux, which has a quirk in its virtual
memory allocation algorithm that causes semi-permanent VM map holes under
normal jemalloc operation.
normal jemalloc operation. Conversely, munmap() (actually VirtualFree()) is
forcefully enabled on MinGW because virtual memory mappings do not
automatically coalesce (nor fragment on demand), and extra bookkeeping
would be required to track mapping boundaries.
--disable-fill
Disable support for junk/zero filling of memory, quarantine, and redzones.