mimalloc/docs/mimalloc-doc_8h_source.html

562 lines
129 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>mi-malloc: mimalloc-doc.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function() { init_search(); });
/* @license-end */
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="mimalloc-doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="mimalloc-logo.svg"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">mi-malloc
&#160;<span id="projectnumber">1.7/2.0</span>
</div>
</td>
<td> <div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.svg"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('mimalloc-doc_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">mimalloc-doc.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/* ----------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">Copyright (c) 2018-2021, Microsoft Research, Daan Leijen</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">This is free software; you can redistribute it and/or modify it under the</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">terms of the MIT license. A copy of the license can be found in the file</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">&quot;LICENSE&quot; at the root of this distribution.</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">-----------------------------------------------------------------------------*/</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160; </div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#error &quot;documentation file only!&quot;</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; </div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; </div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95"> 99</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95">mi_free</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; </div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="group__malloc.html#ga3406e8b168bc74c8637b11571a6da83a"> 105</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga3406e8b168bc74c8637b11571a6da83a">mi_malloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="group__malloc.html#gafdd9d8bb2986e668ba9884f28af38000"> 111</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#gafdd9d8bb2986e668ba9884f28af38000">mi_zalloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="group__malloc.html#ga97fedb4f7107c592fd7f0f0a8949a57d"> 122</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga97fedb4f7107c592fd7f0f0a8949a57d">mi_calloc</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="group__malloc.html#gaf11eb497da57bdfb2de65eb191c69db6"> 136</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#gaf11eb497da57bdfb2de65eb191c69db6">mi_realloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc"> 148</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="group__malloc.html#gaaee66a1d483c3e28f585525fb96707e4"> 163</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#gaaee66a1d483c3e28f585525fb96707e4">mi_expand</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="group__malloc.html#ga0b05e2bf0f73e7401ae08597ff782ac6"> 174</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga0b05e2bf0f73e7401ae08597ff782ac6">mi_mallocn</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="group__malloc.html#ga61d57b4144ba24fba5c1e9b956d13853"> 185</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga61d57b4144ba24fba5c1e9b956d13853">mi_reallocn</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; </div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="group__malloc.html#gafe68ac7c5e24a65cd55c9d6b152211a0"> 203</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#gafe68ac7c5e24a65cd55c9d6b152211a0">mi_reallocf</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; </div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; </div>
<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="group__malloc.html#gac7cffe13f1f458ed16789488bf92b9b2"> 214</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__malloc.html#gac7cffe13f1f458ed16789488bf92b9b2">mi_strdup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; </div>
<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="group__malloc.html#gaaabf971c2571891433477e2d21a35266"> 225</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__malloc.html#gaaabf971c2571891433477e2d21a35266">mi_strndup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* s, <span class="keywordtype">size_t</span> n);</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; </div>
<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="group__malloc.html#ga08cec32dd5bbe7da91c78d19f1b5bebe"> 239</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__malloc.html#ga08cec32dd5bbe7da91c78d19f1b5bebe">mi_realpath</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname, <span class="keywordtype">char</span>* resolved_name);</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; </div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment">// Extended functionality</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; </div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; </div>
<div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="group__extended.html#ga1ea64283508718d9d645c38efc2f4305"> 253</a></span>&#160;<span class="preprocessor">#define MI_SMALL_SIZE_MAX (128*sizeof(void*))</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; </div>
<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="group__extended.html#ga7136c2e55cb22c98ecf95d08d6debb99"> 262</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__extended.html#ga7136c2e55cb22c98ecf95d08d6debb99">mi_malloc_small</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; </div>
<div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="group__extended.html#ga220f29f40a44404b0061c15bc1c31152"> 271</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__extended.html#ga220f29f40a44404b0061c15bc1c31152">mi_zalloc_small</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; </div>
<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee"> 287</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee">mi_usable_size</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; </div>
<div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="group__extended.html#gac057927cd06c854b45fe7847e921bd47"> 298</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__extended.html#gac057927cd06c854b45fe7847e921bd47">mi_good_size</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; </div>
<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="group__extended.html#ga421430e2226d7d468529cec457396756"> 307</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga421430e2226d7d468529cec457396756">mi_collect</a>(<span class="keywordtype">bool</span> force);</div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; </div>
<div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2"> 313</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2">mi_stats_print</a>(<span class="keywordtype">void</span>* out);</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; </div>
<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79"> 320</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79">mi_stats_print_out</a>(<a class="code" href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; </div>
<div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99"> 323</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99">mi_stats_reset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; </div>
<div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1"> 326</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1">mi_stats_merge</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; </div>
<div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17"> 331</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17">mi_thread_init</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; </div>
<div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf"> 337</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf">mi_thread_done</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; </div>
<div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525"> 344</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525">mi_thread_stats_print_out</a>(<a class="code" href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; </div>
<div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="group__extended.html#ga299dae78d25ce112e384a98b7309c5be"> 352</a></span>&#160;<span class="keyword">typedef</span> void (<a class="code" href="group__extended.html#ga299dae78d25ce112e384a98b7309c5be">mi_deferred_free_fun</a>)(<span class="keywordtype">bool</span> force, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> heartbeat, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; </div>
<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece"> 369</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece">mi_register_deferred_free</a>(<a class="code" href="group__extended.html#ga299dae78d25ce112e384a98b7309c5be">mi_deferred_free_fun</a>* deferred_free, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
<div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c"> 376</a></span>&#160;<span class="keyword">typedef</span> void (<a class="code" href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c">mi_output_fun</a>)(<span class="keyword">const</span> <span class="keywordtype">char</span>* msg, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; </div>
<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f"> 384</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f">mi_register_output</a>(<a class="code" href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c">mi_output_fun</a>* out, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; </div>
<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="group__extended.html#ga251d369cda3f1c2a955c555486ed90e5"> 391</a></span>&#160;<span class="keyword">typedef</span> void (<a class="code" href="group__extended.html#ga251d369cda3f1c2a955c555486ed90e5">mi_error_fun</a>)(<span class="keywordtype">int</span> err, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; </div>
<div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45"> 408</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45">mi_register_error</a>(<a class="code" href="group__extended.html#ga251d369cda3f1c2a955c555486ed90e5">mi_error_fun</a>* errfun, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; </div>
<div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6"> 414</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6">mi_is_in_heap_region</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; </div>
<div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767"> 424</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767">mi_reserve_os_memory</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> commit, <span class="keywordtype">bool</span> allow_large);</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; </div>
<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf"> 437</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf">mi_manage_os_memory</a>(<span class="keywordtype">void</span>* start, <span class="keywordtype">size_t</span> size, <span class="keywordtype">bool</span> is_committed, <span class="keywordtype">bool</span> is_large, <span class="keywordtype">bool</span> is_zero, <span class="keywordtype">int</span> numa_node);</div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; </div>
<div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50"> 451</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50">mi_reserve_huge_os_pages_interleave</a>(<span class="keywordtype">size_t</span> pages, <span class="keywordtype">size_t</span> numa_nodes, <span class="keywordtype">size_t</span> timeout_msecs);</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; </div>
<div class="line"><a name="l00465"></a><span class="lineno"><a class="line" href="group__extended.html#ga7795a13d20087447281858d2c771cca1"> 465</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__extended.html#ga7795a13d20087447281858d2c771cca1">mi_reserve_huge_os_pages_at</a>(<span class="keywordtype">size_t</span> pages, <span class="keywordtype">int</span> numa_node, <span class="keywordtype">size_t</span> timeout_msecs);</div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; </div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; </div>
<div class="line"><a name="l00472"></a><span class="lineno"><a class="line" href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f"> 472</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f">mi_is_redirected</a>();</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; </div>
<div class="line"><a name="l00487"></a><span class="lineno"><a class="line" href="group__extended.html#ga7d862c2affd5790381da14eb102a364d"> 487</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__extended.html#ga7d862c2affd5790381da14eb102a364d">mi_process_info</a>(<span class="keywordtype">size_t</span>* elapsed_msecs, <span class="keywordtype">size_t</span>* user_msecs, <span class="keywordtype">size_t</span>* system_msecs, <span class="keywordtype">size_t</span>* current_rss, <span class="keywordtype">size_t</span>* peak_rss, <span class="keywordtype">size_t</span>* current_commit, <span class="keywordtype">size_t</span>* peak_commit, <span class="keywordtype">size_t</span>* page_faults);</div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; </div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; </div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="comment">// Aligned allocation</span></div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="comment">// ------------------------------------------------------</span></div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; </div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; </div>
<div class="line"><a name="l00502"></a><span class="lineno"><a class="line" href="group__aligned.html#ga83c03016066b438f51a8095e9140be06"> 502</a></span>&#160;<span class="preprocessor">#define MI_ALIGNMENT_MAX (1024*1024UL) </span></div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; </div>
<div class="line"><a name="l00516"></a><span class="lineno"><a class="line" href="group__aligned.html#ga68930196751fa2cca9e1fd0d71bade56"> 516</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga68930196751fa2cca9e1fd0d71bade56">mi_malloc_aligned</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00517"></a><span class="lineno"><a class="line" href="group__aligned.html#ga0cadbcf5b89a7b6fb171bc8df8734819"> 517</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga0cadbcf5b89a7b6fb171bc8df8734819">mi_zalloc_aligned</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00518"></a><span class="lineno"><a class="line" href="group__aligned.html#ga53dddb4724042a90315b94bc268fb4c9"> 518</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga53dddb4724042a90315b94bc268fb4c9">mi_calloc_aligned</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00519"></a><span class="lineno"><a class="line" href="group__aligned.html#ga4028d1cf4aa4c87c880747044a8322ae"> 519</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga4028d1cf4aa4c87c880747044a8322ae">mi_realloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; </div>
<div class="line"><a name="l00531"></a><span class="lineno"><a class="line" href="group__aligned.html#ga5850da130c936bd77db039dcfbc8295d"> 531</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga5850da130c936bd77db039dcfbc8295d">mi_malloc_aligned_at</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00532"></a><span class="lineno"><a class="line" href="group__aligned.html#ga5f8c2353766db522565e642fafd8a3f8"> 532</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga5f8c2353766db522565e642fafd8a3f8">mi_zalloc_aligned_at</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="group__aligned.html#ga08647c4593f3b2eef24a919a73eba3a3"> 533</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#ga08647c4593f3b2eef24a919a73eba3a3">mi_calloc_aligned_at</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00534"></a><span class="lineno"><a class="line" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2"> 534</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__aligned.html#gaf66a9ae6c6f08bd6be6fb6ea771faffb">mi_realloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; </div>
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; </div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; </div>
<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="keyword">struct </span>mi_heap_s;</div>
<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; </div>
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>mi_heap_s <a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>;</div>
<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; </div>
<div class="line"><a name="l00557"></a><span class="lineno"><a class="line" href="group__heap.html#ga766f672ba56f2fbfeb9d9dbb0b7f6b11"> 557</a></span>&#160;<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code" href="group__heap.html#ga766f672ba56f2fbfeb9d9dbb0b7f6b11">mi_heap_new</a>();</div>
<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; </div>
<div class="line"><a name="l00566"></a><span class="lineno"><a class="line" href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409"> 566</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409">mi_heap_delete</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; </div>
<div class="line"><a name="l00575"></a><span class="lineno"><a class="line" href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d"> 575</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d">mi_heap_destroy</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; </div>
<div class="line"><a name="l00580"></a><span class="lineno"><a class="line" href="group__heap.html#gab8631ec88c8d26641b68b5d25dcd4422"> 580</a></span>&#160;<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code" href="group__heap.html#gab8631ec88c8d26641b68b5d25dcd4422">mi_heap_set_default</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap);</div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; </div>
<div class="line"><a name="l00584"></a><span class="lineno"><a class="line" href="group__heap.html#ga8db4cbb87314a989a9a187464d6b5e05"> 584</a></span>&#160;<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code" href="group__heap.html#ga8db4cbb87314a989a9a187464d6b5e05">mi_heap_get_default</a>();</div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; </div>
<div class="line"><a name="l00591"></a><span class="lineno"><a class="line" href="group__heap.html#ga5d03fbe062ffcf38f0f417fd968357fc"> 591</a></span>&#160;<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* <a class="code" href="group__heap.html#ga5d03fbe062ffcf38f0f417fd968357fc">mi_heap_get_backing</a>();</div>
<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; </div>
<div class="line"><a name="l00594"></a><span class="lineno"><a class="line" href="group__heap.html#ga7922f7495cde30b1984d0e6072419298"> 594</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__heap.html#ga7922f7495cde30b1984d0e6072419298">mi_heap_collect</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">bool</span> force);</div>
<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; </div>
<div class="line"><a name="l00598"></a><span class="lineno"><a class="line" href="group__heap.html#ga9cbed01e42c0647907295de92c3fa296"> 598</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga9cbed01e42c0647907295de92c3fa296">mi_heap_malloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; </div>
<div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="group__heap.html#gaa1a1c7a1f4da6826b5a25b70ef878368"> 603</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gaa1a1c7a1f4da6826b5a25b70ef878368">mi_heap_malloc_small</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; </div>
<div class="line"><a name="l00607"></a><span class="lineno"><a class="line" href="group__heap.html#ga903104592c8ed53417a3762da6241133"> 607</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga903104592c8ed53417a3762da6241133">mi_heap_zalloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; </div>
<div class="line"><a name="l00611"></a><span class="lineno"><a class="line" href="group__heap.html#gaa6702b3c48e9e53e50e81b36f5011d55"> 611</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gaa6702b3c48e9e53e50e81b36f5011d55">mi_heap_calloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; </div>
<div class="line"><a name="l00615"></a><span class="lineno"><a class="line" href="group__heap.html#ga851da6c43fe0b71c1376cee8aef90db0"> 615</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga851da6c43fe0b71c1376cee8aef90db0">mi_heap_mallocn</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; </div>
<div class="line"><a name="l00619"></a><span class="lineno"><a class="line" href="group__heap.html#ga139d6b09dbf50c3c2523d0f4d1cfdeb5"> 619</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__heap.html#ga139d6b09dbf50c3c2523d0f4d1cfdeb5">mi_heap_strdup</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* s);</div>
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; </div>
<div class="line"><a name="l00623"></a><span class="lineno"><a class="line" href="group__heap.html#ga8e3dbd46650dd26573cf307a2c8f1f5a"> 623</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__heap.html#ga8e3dbd46650dd26573cf307a2c8f1f5a">mi_heap_strndup</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* s, <span class="keywordtype">size_t</span> n);</div>
<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; </div>
<div class="line"><a name="l00627"></a><span class="lineno"><a class="line" href="group__heap.html#ga00e95ba1e01acac3cfd95bb7a357a6f0"> 627</a></span>&#160;<span class="keywordtype">char</span>* <a class="code" href="group__heap.html#ga00e95ba1e01acac3cfd95bb7a357a6f0">mi_heap_realpath</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">char</span>* fname, <span class="keywordtype">char</span>* resolved_name);</div>
<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; </div>
<div class="line"><a name="l00629"></a><span class="lineno"><a class="line" href="group__heap.html#gaaef3395f66be48f37bdc8322509c5d81"> 629</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gaaef3395f66be48f37bdc8322509c5d81">mi_heap_realloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00630"></a><span class="lineno"><a class="line" href="group__heap.html#gac74e94ad9b0c9b57c1c4d88b8825b7a8"> 630</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gac74e94ad9b0c9b57c1c4d88b8825b7a8">mi_heap_reallocn</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00631"></a><span class="lineno"><a class="line" href="group__heap.html#ga4a21070eb4e7cce018133c8d5f4b0527"> 631</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga4a21070eb4e7cce018133c8d5f4b0527">mi_heap_reallocf</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; </div>
<div class="line"><a name="l00633"></a><span class="lineno"><a class="line" href="group__heap.html#gab5b87e1805306f70df38789fcfcf6653"> 633</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gab5b87e1805306f70df38789fcfcf6653">mi_heap_malloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00634"></a><span class="lineno"><a class="line" href="group__heap.html#ga23acd7680fb0976dde3783254c6c874b"> 634</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga23acd7680fb0976dde3783254c6c874b">mi_heap_malloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00635"></a><span class="lineno"><a class="line" href="group__heap.html#gaa450a59c6c7ae5fdbd1c2b80a8329ef0"> 635</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gaa450a59c6c7ae5fdbd1c2b80a8329ef0">mi_heap_zalloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00636"></a><span class="lineno"><a class="line" href="group__heap.html#ga45fb43a62776fbebbdf1edd99b527954"> 636</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga45fb43a62776fbebbdf1edd99b527954">mi_heap_zalloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00637"></a><span class="lineno"><a class="line" href="group__heap.html#ga4af03a6e2b93fae77424d93f889705c3"> 637</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga4af03a6e2b93fae77424d93f889705c3">mi_heap_calloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00638"></a><span class="lineno"><a class="line" href="group__heap.html#ga08ca6419a5c057a4d965868998eef487"> 638</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#ga08ca6419a5c057a4d965868998eef487">mi_heap_calloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00639"></a><span class="lineno"><a class="line" href="group__heap.html#gafc603b696bd14cae6da28658f950d98c"> 639</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gafc603b696bd14cae6da28658f950d98c">mi_heap_realloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00640"></a><span class="lineno"><a class="line" href="group__heap.html#gaf96c788a1bf553fe2d371de9365e047c"> 640</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__heap.html#gaf96c788a1bf553fe2d371de9365e047c">mi_heap_realloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; </div>
<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; </div>
<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; </div>
<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; </div>
<div class="line"><a name="l00654"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga8c292e142110229a2980b37ab036dbc6"> 654</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga8c292e142110229a2980b37ab036dbc6">mi_rezalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size) ;</div>
<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; </div>
<div class="line"><a name="l00657"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gacd71a7bce96aab38ae6de17af2eb2cf0"> 657</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#gacd71a7bce96aab38ae6de17af2eb2cf0">mi_rezalloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00658"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gae8b358c417e61d5307da002702b0a8e1"> 658</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#gae8b358c417e61d5307da002702b0a8e1">mi_rezalloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00659"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga3e7e5c291acf1c7fd7ffd9914a9f945f"> 659</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga3e7e5c291acf1c7fd7ffd9914a9f945f">mi_recalloc_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00660"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga4ff5e92ad73585418a072c9d059e5cf9"> 660</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga4ff5e92ad73585418a072c9d059e5cf9">mi_recalloc_aligned_at</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; </div>
<div class="line"><a name="l00662"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gacfad83f14eb5d6a42a497a898e19fc76"> 662</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#gacfad83f14eb5d6a42a497a898e19fc76">mi_heap_rezalloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00663"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga8648c5fbb22a80f0262859099f06dfbd"> 663</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga8648c5fbb22a80f0262859099f06dfbd">mi_heap_recalloc</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; </div>
<div class="line"><a name="l00665"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga375fa8a611c51905e592d5d467c49664"> 665</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga375fa8a611c51905e592d5d467c49664">mi_heap_rezalloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00666"></a><span class="lineno"><a class="line" href="group__zeroinit.html#gac90da54fa7e5d10bdc97ce0b51dce2eb"> 666</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#gac90da54fa7e5d10bdc97ce0b51dce2eb">mi_heap_rezalloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga9f3f999396c8f77ca5e80e7b40ac29e3"> 667</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga9f3f999396c8f77ca5e80e7b40ac29e3">mi_heap_recalloc_aligned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00668"></a><span class="lineno"><a class="line" href="group__zeroinit.html#ga496452c96f1de8c500be9fddf52edaf7"> 668</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__zeroinit.html#ga496452c96f1de8c500be9fddf52edaf7">mi_heap_recalloc_aligned_at</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> offset);</div>
<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; </div>
<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; </div>
<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; </div>
<div class="line"><a name="l00692"></a><span class="lineno"><a class="line" href="group__typed.html#ga0619a62c5fd886f1016030abe91f0557"> 692</a></span>&#160;<span class="preprocessor">#define mi_malloc_tp(tp) ((tp*)mi_malloc(sizeof(tp)))</span></div>
<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; </div>
<div class="line"><a name="l00695"></a><span class="lineno"><a class="line" href="group__typed.html#gac77a61bdaf680a803785fe307820b48c"> 695</a></span>&#160;<span class="preprocessor">#define mi_zalloc_tp(tp) ((tp*)mi_zalloc(sizeof(tp)))</span></div>
<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; </div>
<div class="line"><a name="l00698"></a><span class="lineno"><a class="line" href="group__typed.html#gae80c47c9d4cab10961fff1a8ac98fc07"> 698</a></span>&#160;<span class="preprocessor">#define mi_calloc_tp(tp,count) ((tp*)mi_calloc(count,sizeof(tp)))</span></div>
<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; </div>
<div class="line"><a name="l00701"></a><span class="lineno"><a class="line" href="group__typed.html#gae5cb6e0fafc9f23169c5622e077afe8b"> 701</a></span>&#160;<span class="preprocessor">#define mi_mallocn_tp(tp,count) ((tp*)mi_mallocn(count,sizeof(tp)))</span></div>
<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; </div>
<div class="line"><a name="l00704"></a><span class="lineno"><a class="line" href="group__typed.html#ga1158b49a55dfa81f58a4426a7578f523"> 704</a></span>&#160;<span class="preprocessor">#define mi_reallocn_tp(p,tp,count) ((tp*)mi_reallocn(p,count,sizeof(tp)))</span></div>
<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; </div>
<div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="group__typed.html#ga653bcb24ac495bc19940ecd6898f9cd7"> 707</a></span>&#160;<span class="preprocessor">#define mi_heap_malloc_tp(hp,tp) ((tp*)mi_heap_malloc(hp,sizeof(tp)))</span></div>
<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; </div>
<div class="line"><a name="l00710"></a><span class="lineno"><a class="line" href="group__typed.html#gad6e87e86e994aa14416ae9b5d4c188fe"> 710</a></span>&#160;<span class="preprocessor">#define mi_heap_zalloc_tp(hp,tp) ((tp*)mi_heap_zalloc(hp,sizeof(tp)))</span></div>
<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; </div>
<div class="line"><a name="l00713"></a><span class="lineno"><a class="line" href="group__typed.html#ga4e5d1f1707c90e5f55e023ac5f45fe74"> 713</a></span>&#160;<span class="preprocessor">#define mi_heap_calloc_tp(hp,tp,count) ((tp*)mi_heap_calloc(hp,count,sizeof(tp)))</span></div>
<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; </div>
<div class="line"><a name="l00716"></a><span class="lineno"><a class="line" href="group__typed.html#ga6b75cb9c4b9c647661d0924552dc6e83"> 716</a></span>&#160;<span class="preprocessor">#define mi_heap_mallocn_tp(hp,tp,count) ((tp*)mi_heap_mallocn(hp,count,sizeof(tp)))</span></div>
<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; </div>
<div class="line"><a name="l00719"></a><span class="lineno"><a class="line" href="group__typed.html#gaf213d5422ec35e7f6caad827c79bc948"> 719</a></span>&#160;<span class="preprocessor">#define mi_heap_reallocn_tp(hp,p,tp,count) ((tp*)mi_heap_reallocn(p,count,sizeof(tp)))</span></div>
<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; </div>
<div class="line"><a name="l00722"></a><span class="lineno"><a class="line" href="group__typed.html#ga3e50a1600958fcaf1a7f3560c9174f9e"> 722</a></span>&#160;<span class="preprocessor">#define mi_heap_recalloc_tp(hp,p,tp,count) ((tp*)mi_heap_recalloc(p,count,sizeof(tp)))</span></div>
<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; </div>
<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; </div>
<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; </div>
<div class="line"><a name="l00738"></a><span class="lineno"><a class="line" href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af"> 738</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af">mi_heap_contains_block</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; </div>
<div class="line"><a name="l00748"></a><span class="lineno"><a class="line" href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377"> 748</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377">mi_heap_check_owned</a>(<a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; </div>
<div class="line"><a name="l00757"></a><span class="lineno"><a class="line" href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5"> 757</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5">mi_check_owned</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; </div>
<div class="line"><a name="l00761"></a><span class="lineno"><a class="line" href="group__analysis.html"> 761</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>mi_heap_area_s {</div>
<div class="line"><a name="l00762"></a><span class="lineno"><a class="line" href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8"> 762</a></span>&#160; <span class="keywordtype">void</span>* <a class="code" href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8">blocks</a>; </div>
<div class="line"><a name="l00763"></a><span class="lineno"><a class="line" href="group__analysis.html#ae848a3e6840414891035423948ca0383"> 763</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="group__analysis.html#ae848a3e6840414891035423948ca0383">reserved</a>; </div>
<div class="line"><a name="l00764"></a><span class="lineno"><a class="line" href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835"> 764</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835">committed</a>; </div>
<div class="line"><a name="l00765"></a><span class="lineno"><a class="line" href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4"> 765</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4">used</a>; </div>
<div class="line"><a name="l00766"></a><span class="lineno"><a class="line" href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41"> 766</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41">block_size</a>; </div>
<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160;} <a class="code" href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a>;</div>
<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; </div>
<div class="line"><a name="l00776"></a><span class="lineno"><a class="line" href="group__analysis.html#gadfa01e2900f0e5d515ad5506b26f6d65"> 776</a></span>&#160;<span class="keyword">typedef</span> bool (<a class="code" href="group__analysis.html#gadfa01e2900f0e5d515ad5506b26f6d65">mi_block_visit_fun</a>)(<span class="keyword">const</span> <a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keyword">const</span> <a class="code" href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a>* area, <span class="keywordtype">void</span>* block, <span class="keywordtype">size_t</span> block_size, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; </div>
<div class="line"><a name="l00789"></a><span class="lineno"><a class="line" href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed"> 789</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed">mi_heap_visit_blocks</a>(<span class="keyword">const</span> <a class="code" href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a>* heap, <span class="keywordtype">bool</span> visit_all_blocks, <a class="code" href="group__analysis.html#gadfa01e2900f0e5d515ad5506b26f6d65">mi_block_visit_fun</a>* visitor, <span class="keywordtype">void</span>* arg);</div>
<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; </div>
<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; </div>
<div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; </div>
<div class="line"><a name="l00800"></a><span class="lineno"><a class="line" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c"> 800</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> mi_option_e {</div>
<div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; <span class="comment">// stable options</span></div>
<div class="line"><a name="l00802"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0"> 802</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0">mi_option_show_errors</a>, </div>
<div class="line"><a name="l00803"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda"> 803</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda">mi_option_show_stats</a>, </div>
<div class="line"><a name="l00804"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777"> 804</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777">mi_option_verbose</a>, </div>
<div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <span class="comment">// the following options are experimental</span></div>
<div class="line"><a name="l00806"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b"> 806</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b">mi_option_eager_commit</a>, </div>
<div class="line"><a name="l00807"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca32ce97ece29f69e82579679cf8a307ad"> 807</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca32ce97ece29f69e82579679cf8a307ad">mi_option_eager_region_commit</a>, </div>
<div class="line"><a name="l00808"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4192d491200d0055df0554d4cf65054e"> 808</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4192d491200d0055df0554d4cf65054e">mi_option_large_os_pages</a>, </div>
<div class="line"><a name="l00809"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2"> 809</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2">mi_option_reserve_huge_os_pages</a>, </div>
<div class="line"><a name="l00810"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c"> 810</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c">mi_option_reserve_huge_os_pages_at</a>, </div>
<div class="line"><a name="l00811"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca2ecbe7ef32f5c84de3739aa4f0b805a1"> 811</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca2ecbe7ef32f5c84de3739aa4f0b805a1">mi_option_segment_cache</a>, </div>
<div class="line"><a name="l00812"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cada854dd272c66342f18a93ee254a2968"> 812</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cada854dd272c66342f18a93ee254a2968">mi_option_page_reset</a>, </div>
<div class="line"><a name="l00813"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafb121d30d87591850d5410ccc3a95c6d"> 813</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafb121d30d87591850d5410ccc3a95c6d">mi_option_segment_reset</a>, </div>
<div class="line"><a name="l00814"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca154fe170131d5212cff57e22b99523c5"> 814</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca154fe170131d5212cff57e22b99523c5">mi_option_reset_delay</a>, </div>
<div class="line"><a name="l00815"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74"> 815</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74">mi_option_use_numa_nodes</a>, </div>
<div class="line"><a name="l00816"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cac81ee965b130fa81238913a3c239d536"> 816</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cac81ee965b130fa81238913a3c239d536">mi_option_reset_decommits</a>, </div>
<div class="line"><a name="l00817"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c"> 817</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c">mi_option_eager_commit_delay</a>, </div>
<div class="line"><a name="l00818"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf"> 818</a></span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf">mi_option_os_tag</a>, </div>
<div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <a class="code" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a">_mi_option_last</a></div>
<div class="line"><a name="l00820"></a><span class="lineno"><a class="line" href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a"> 820</a></span>&#160;} <a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a>;</div>
<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; </div>
<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; </div>
<div class="line"><a name="l00823"></a><span class="lineno"><a class="line" href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188"> 823</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188">mi_option_is_enabled</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a name="l00824"></a><span class="lineno"><a class="line" href="group__options.html#ga04180ae41b0d601421dd62ced40ca050"> 824</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#ga04180ae41b0d601421dd62ced40ca050">mi_option_enable</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a name="l00825"></a><span class="lineno"><a class="line" href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054"> 825</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054">mi_option_disable</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a name="l00826"></a><span class="lineno"><a class="line" href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed"> 826</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed">mi_option_set_enabled</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a name="l00827"></a><span class="lineno"><a class="line" href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629"> 827</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629">mi_option_set_enabled_default</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">bool</span> enable);</div>
<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; </div>
<div class="line"><a name="l00829"></a><span class="lineno"><a class="line" href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a"> 829</a></span>&#160;<span class="keywordtype">long</span> <a class="code" href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a">mi_option_get</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option);</div>
<div class="line"><a name="l00830"></a><span class="lineno"><a class="line" href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60"> 830</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60">mi_option_set</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">long</span> value);</div>
<div class="line"><a name="l00831"></a><span class="lineno"><a class="line" href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90"> 831</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90">mi_option_set_default</a>(<a class="code" href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a> option, <span class="keywordtype">long</span> value);</div>
<div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; </div>
<div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; </div>
<div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; </div>
<div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; </div>
<div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00844"></a><span class="lineno"><a class="line" href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de"> 844</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de">mi_malloc_size</a>(<span class="keyword">const</span> <span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00845"></a><span class="lineno"><a class="line" href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17"> 845</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17">mi_malloc_usable_size</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *p);</div>
<div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; </div>
<div class="line"><a name="l00848"></a><span class="lineno"><a class="line" href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7"> 848</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7">mi_cfree</a>(<span class="keywordtype">void</span>* p);</div>
<div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; </div>
<div class="line"><a name="l00850"></a><span class="lineno"><a class="line" href="group__posix.html#gacff84f226ba9feb2031b8992e5579447"> 850</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__posix.html#gacff84f226ba9feb2031b8992e5579447">mi_posix_memalign</a>(<span class="keywordtype">void</span>** p, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00851"></a><span class="lineno"><a class="line" href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a"> 851</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a">mi__posix_memalign</a>(<span class="keywordtype">void</span>** p, <span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00852"></a><span class="lineno"><a class="line" href="group__posix.html#gaab7fa71ea93b96873f5d9883db57d40e"> 852</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__posix.html#gaab7fa71ea93b96873f5d9883db57d40e">mi_memalign</a>(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00853"></a><span class="lineno"><a class="line" href="group__posix.html#ga73baaf5951f5165ba0763d0c06b6a93b"> 853</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__posix.html#ga73baaf5951f5165ba0763d0c06b6a93b">mi_valloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; </div>
<div class="line"><a name="l00855"></a><span class="lineno"><a class="line" href="group__posix.html#gaeb325c39b887d3b90d85d1eb1712fb1e"> 855</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__posix.html#gaeb325c39b887d3b90d85d1eb1712fb1e">mi_pvalloc</a>(<span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00856"></a><span class="lineno"><a class="line" href="group__posix.html#ga1326d2e4388630b5f81ca7206318b8e5"> 856</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__posix.html#ga1326d2e4388630b5f81ca7206318b8e5">mi_aligned_alloc</a>(<span class="keywordtype">size_t</span> alignment, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; </div>
<div class="line"><a name="l00860"></a><span class="lineno"><a class="line" href="group__posix.html#ga48fad8648a2f1dab9c87ea9448a52088"> 860</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__posix.html#ga48fad8648a2f1dab9c87ea9448a52088">mi_reallocarray</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; </div>
<div class="line"><a name="l00863"></a><span class="lineno"><a class="line" href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5"> 863</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5">mi_reallocarr</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; </div>
<div class="line"><a name="l00865"></a><span class="lineno"><a class="line" href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb"> 865</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb">mi_free_size</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00866"></a><span class="lineno"><a class="line" href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc"> 866</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc">mi_free_size_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00867"></a><span class="lineno"><a class="line" href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9"> 867</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9">mi_free_aligned</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; </div>
<div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; </div>
<div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; </div>
<div class="line"><a name="l00885"></a><span class="lineno"><a class="line" href="group__cpp.html#gaad048a9fce3d02c5909cd05c6ec24545"> 885</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gaad048a9fce3d02c5909cd05c6ec24545">mi_new</a>(std::size_t n) noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; </div>
<div class="line"><a name="l00888"></a><span class="lineno"><a class="line" href="group__cpp.html#gae7bc4f56cd57ed3359060ff4f38bda81"> 888</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gae7bc4f56cd57ed3359060ff4f38bda81">mi_new_n</a>(<span class="keywordtype">size_t</span> count, <span class="keywordtype">size_t</span> size) noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; </div>
<div class="line"><a name="l00891"></a><span class="lineno"><a class="line" href="group__cpp.html#gaef2c2bdb4f70857902d3c8903ac095f3"> 891</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gaef2c2bdb4f70857902d3c8903ac095f3">mi_new_aligned</a>(std::size_t n, std::align_val_t alignment) noexcept(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; </div>
<div class="line"><a name="l00894"></a><span class="lineno"><a class="line" href="group__cpp.html#gaeaded64eda71ed6b1d569d3e723abc4a"> 894</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gaeaded64eda71ed6b1d569d3e723abc4a">mi_new_nothrow</a>(<span class="keywordtype">size_t</span> n);</div>
<div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; </div>
<div class="line"><a name="l00897"></a><span class="lineno"><a class="line" href="group__cpp.html#gab5e29558926d934c3f1cae8c815f942c"> 897</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gab5e29558926d934c3f1cae8c815f942c">mi_new_aligned_nothrow</a>(<span class="keywordtype">size_t</span> n, <span class="keywordtype">size_t</span> alignment);</div>
<div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; </div>
<div class="line"><a name="l00900"></a><span class="lineno"><a class="line" href="group__cpp.html#gaab78a32f55149e9fbf432d5288e38e1e"> 900</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#gaab78a32f55149e9fbf432d5288e38e1e">mi_new_realloc</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newsize);</div>
<div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; </div>
<div class="line"><a name="l00903"></a><span class="lineno"><a class="line" href="group__cpp.html#ga756f4b2bc6a7ecd0a90baea8e90c7907"> 903</a></span>&#160;<span class="keywordtype">void</span>* <a class="code" href="group__cpp.html#ga756f4b2bc6a7ecd0a90baea8e90c7907">mi_new_reallocn</a>(<span class="keywordtype">void</span>* p, <span class="keywordtype">size_t</span> newcount, <span class="keywordtype">size_t</span> size);</div>
<div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; </div>
<div class="line"><a name="l00912"></a><span class="lineno"><a class="line" href="group__cpp.html"> 912</a></span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span><a class="code" href="group__cpp.html#structmi__stl__allocator">mi_stl_allocator</a> { }</div>
<div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; </div>
<div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; </div>
<div class="ttc" id="agroup__aligned_html_ga08647c4593f3b2eef24a919a73eba3a3"><div class="ttname"><a href="group__aligned.html#ga08647c4593f3b2eef24a919a73eba3a3">mi_calloc_aligned_at</a></div><div class="ttdeci">void * mi_calloc_aligned_at(size_t count, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__aligned_html_ga0cadbcf5b89a7b6fb171bc8df8734819"><div class="ttname"><a href="group__aligned.html#ga0cadbcf5b89a7b6fb171bc8df8734819">mi_zalloc_aligned</a></div><div class="ttdeci">void * mi_zalloc_aligned(size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_ga4028d1cf4aa4c87c880747044a8322ae"><div class="ttname"><a href="group__aligned.html#ga4028d1cf4aa4c87c880747044a8322ae">mi_realloc_aligned</a></div><div class="ttdeci">void * mi_realloc_aligned(void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_ga53dddb4724042a90315b94bc268fb4c9"><div class="ttname"><a href="group__aligned.html#ga53dddb4724042a90315b94bc268fb4c9">mi_calloc_aligned</a></div><div class="ttdeci">void * mi_calloc_aligned(size_t count, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__aligned_html_ga5850da130c936bd77db039dcfbc8295d"><div class="ttname"><a href="group__aligned.html#ga5850da130c936bd77db039dcfbc8295d">mi_malloc_aligned_at</a></div><div class="ttdeci">void * mi_malloc_aligned_at(size_t size, size_t alignment, size_t offset)</div><div class="ttdoc">Allocate size bytes aligned by alignment at a specified offset.</div></div>
<div class="ttc" id="agroup__aligned_html_ga5f8c2353766db522565e642fafd8a3f8"><div class="ttname"><a href="group__aligned.html#ga5f8c2353766db522565e642fafd8a3f8">mi_zalloc_aligned_at</a></div><div class="ttdeci">void * mi_zalloc_aligned_at(size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__aligned_html_ga68930196751fa2cca9e1fd0d71bade56"><div class="ttname"><a href="group__aligned.html#ga68930196751fa2cca9e1fd0d71bade56">mi_malloc_aligned</a></div><div class="ttdeci">void * mi_malloc_aligned(size_t size, size_t alignment)</div><div class="ttdoc">Allocate size bytes aligned by alignment.</div></div>
<div class="ttc" id="agroup__aligned_html_gaf66a9ae6c6f08bd6be6fb6ea771faffb"><div class="ttname"><a href="group__aligned.html#gaf66a9ae6c6f08bd6be6fb6ea771faffb">mi_realloc_aligned_at</a></div><div class="ttdeci">void * mi_realloc_aligned_at(void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__analysis_html_a332a6c14d736a99699d5453a1cb04b41"><div class="ttname"><a href="group__analysis.html#a332a6c14d736a99699d5453a1cb04b41">mi_heap_area_t::block_size</a></div><div class="ttdeci">size_t block_size</div><div class="ttdoc">size in bytes of one block</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:766</div></div>
<div class="ttc" id="agroup__analysis_html_ab47526df656d8837ec3e97f11b83f835"><div class="ttname"><a href="group__analysis.html#ab47526df656d8837ec3e97f11b83f835">mi_heap_area_t::committed</a></div><div class="ttdeci">size_t committed</div><div class="ttdoc">current committed bytes of this area</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:764</div></div>
<div class="ttc" id="agroup__analysis_html_ab820302c5cd0df133eb8e51650a008b4"><div class="ttname"><a href="group__analysis.html#ab820302c5cd0df133eb8e51650a008b4">mi_heap_area_t::used</a></div><div class="ttdeci">size_t used</div><div class="ttdoc">bytes in use by allocated blocks</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:765</div></div>
<div class="ttc" id="agroup__analysis_html_ae0085e6e1cf059a4eb7767e30e9991b8"><div class="ttname"><a href="group__analysis.html#ae0085e6e1cf059a4eb7767e30e9991b8">mi_heap_area_t::blocks</a></div><div class="ttdeci">void * blocks</div><div class="ttdoc">start of the area containing heap blocks</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:762</div></div>
<div class="ttc" id="agroup__analysis_html_ae848a3e6840414891035423948ca0383"><div class="ttname"><a href="group__analysis.html#ae848a3e6840414891035423948ca0383">mi_heap_area_t::reserved</a></div><div class="ttdeci">size_t reserved</div><div class="ttdoc">bytes reserved for this area</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:763</div></div>
<div class="ttc" id="agroup__analysis_html_ga0d67c1789faaa15ff366c024fcaf6377"><div class="ttname"><a href="group__analysis.html#ga0d67c1789faaa15ff366c024fcaf6377">mi_heap_check_owned</a></div><div class="ttdeci">bool mi_heap_check_owned(mi_heap_t *heap, const void *p)</div><div class="ttdoc">Check safely if any pointer is part of a heap.</div></div>
<div class="ttc" id="agroup__analysis_html_ga628c237489c2679af84a4d0d143b3dd5"><div class="ttname"><a href="group__analysis.html#ga628c237489c2679af84a4d0d143b3dd5">mi_check_owned</a></div><div class="ttdeci">bool mi_check_owned(const void *p)</div><div class="ttdoc">Check safely if any pointer is part of the default heap of this thread.</div></div>
<div class="ttc" id="agroup__analysis_html_ga70c46687dc6e9dc98b232b02646f8bed"><div class="ttname"><a href="group__analysis.html#ga70c46687dc6e9dc98b232b02646f8bed">mi_heap_visit_blocks</a></div><div class="ttdeci">bool mi_heap_visit_blocks(const mi_heap_t *heap, bool visit_all_blocks, mi_block_visit_fun *visitor, void *arg)</div><div class="ttdoc">Visit all areas and blocks in a heap.</div></div>
<div class="ttc" id="agroup__analysis_html_gaa862aa8ed8d57d84cae41fc1022d71af"><div class="ttname"><a href="group__analysis.html#gaa862aa8ed8d57d84cae41fc1022d71af">mi_heap_contains_block</a></div><div class="ttdeci">bool mi_heap_contains_block(mi_heap_t *heap, const void *p)</div><div class="ttdoc">Does a heap contain a pointer to a previously allocated block?</div></div>
<div class="ttc" id="agroup__analysis_html_gadfa01e2900f0e5d515ad5506b26f6d65"><div class="ttname"><a href="group__analysis.html#gadfa01e2900f0e5d515ad5506b26f6d65">mi_block_visit_fun</a></div><div class="ttdeci">bool() mi_block_visit_fun(const mi_heap_t *heap, const mi_heap_area_t *area, void *block, size_t block_size, void *arg)</div><div class="ttdoc">Visitor function passed to mi_heap_visit_blocks()</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:776</div></div>
<div class="ttc" id="agroup__analysis_html_structmi__heap__area__t"><div class="ttname"><a href="group__analysis.html#structmi__heap__area__t">mi_heap_area_t</a></div><div class="ttdoc">An area of heap space contains blocks of a single size.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:761</div></div>
<div class="ttc" id="agroup__cpp_html_ga756f4b2bc6a7ecd0a90baea8e90c7907"><div class="ttname"><a href="group__cpp.html#ga756f4b2bc6a7ecd0a90baea8e90c7907">mi_new_reallocn</a></div><div class="ttdeci">void * mi_new_reallocn(void *p, size_t newcount, size_t size)</div><div class="ttdoc">like mi_reallocn(), but when out of memory, use std::get_new_handler and raise std::bad_alloc excepti...</div></div>
<div class="ttc" id="agroup__cpp_html_gaab78a32f55149e9fbf432d5288e38e1e"><div class="ttname"><a href="group__cpp.html#gaab78a32f55149e9fbf432d5288e38e1e">mi_new_realloc</a></div><div class="ttdeci">void * mi_new_realloc(void *p, size_t newsize)</div><div class="ttdoc">like mi_realloc(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exceptio...</div></div>
<div class="ttc" id="agroup__cpp_html_gaad048a9fce3d02c5909cd05c6ec24545"><div class="ttname"><a href="group__cpp.html#gaad048a9fce3d02c5909cd05c6ec24545">mi_new</a></div><div class="ttdeci">void * mi_new(std::size_t n) noexcept(false)</div><div class="ttdoc">like mi_malloc(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exception...</div></div>
<div class="ttc" id="agroup__cpp_html_gab5e29558926d934c3f1cae8c815f942c"><div class="ttname"><a href="group__cpp.html#gab5e29558926d934c3f1cae8c815f942c">mi_new_aligned_nothrow</a></div><div class="ttdeci">void * mi_new_aligned_nothrow(size_t n, size_t alignment)</div><div class="ttdoc">like mi_malloc_aligned, but when out of memory, use std::get_new_handler but return NULL on failure.</div></div>
<div class="ttc" id="agroup__cpp_html_gae7bc4f56cd57ed3359060ff4f38bda81"><div class="ttname"><a href="group__cpp.html#gae7bc4f56cd57ed3359060ff4f38bda81">mi_new_n</a></div><div class="ttdeci">void * mi_new_n(size_t count, size_t size) noexcept(false)</div><div class="ttdoc">like mi_mallocn(), but when out of memory, use std::get_new_handler and raise std::bad_alloc exceptio...</div></div>
<div class="ttc" id="agroup__cpp_html_gaeaded64eda71ed6b1d569d3e723abc4a"><div class="ttname"><a href="group__cpp.html#gaeaded64eda71ed6b1d569d3e723abc4a">mi_new_nothrow</a></div><div class="ttdeci">void * mi_new_nothrow(size_t n)</div><div class="ttdoc">like mi_malloc, but when out of memory, use std::get_new_handler but return NULL on failure.</div></div>
<div class="ttc" id="agroup__cpp_html_gaef2c2bdb4f70857902d3c8903ac095f3"><div class="ttname"><a href="group__cpp.html#gaef2c2bdb4f70857902d3c8903ac095f3">mi_new_aligned</a></div><div class="ttdeci">void * mi_new_aligned(std::size_t n, std::align_val_t alignment) noexcept(false)</div><div class="ttdoc">like mi_malloc_aligned(), but when out of memory, use std::get_new_handler and raise std::bad_alloc e...</div></div>
<div class="ttc" id="agroup__cpp_html_structmi__stl__allocator"><div class="ttname"><a href="group__cpp.html#structmi__stl__allocator">mi_stl_allocator</a></div><div class="ttdoc">std::allocator implementation for mimalloc for use in STL containers.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:912</div></div>
<div class="ttc" id="agroup__extended_html_ga00ec3324b6b2591c7fe3677baa30a767"><div class="ttname"><a href="group__extended.html#ga00ec3324b6b2591c7fe3677baa30a767">mi_reserve_os_memory</a></div><div class="ttdeci">int mi_reserve_os_memory(size_t size, bool commit, bool allow_large)</div><div class="ttdoc">Reserve OS memory for use by mimalloc.</div></div>
<div class="ttc" id="agroup__extended_html_ga089c859d9eddc5f9b4bd946cd53cebee"><div class="ttname"><a href="group__extended.html#ga089c859d9eddc5f9b4bd946cd53cebee">mi_usable_size</a></div><div class="ttdeci">size_t mi_usable_size(void *p)</div><div class="ttdoc">Return the available bytes in a memory block.</div></div>
<div class="ttc" id="agroup__extended_html_ga0ae4581e85453456a0d658b2b98bf7bf"><div class="ttname"><a href="group__extended.html#ga0ae4581e85453456a0d658b2b98bf7bf">mi_thread_done</a></div><div class="ttdeci">void mi_thread_done(void)</div><div class="ttdoc">Uninitialize mimalloc on a thread.</div></div>
<div class="ttc" id="agroup__extended_html_ga220f29f40a44404b0061c15bc1c31152"><div class="ttname"><a href="group__extended.html#ga220f29f40a44404b0061c15bc1c31152">mi_zalloc_small</a></div><div class="ttdeci">void * mi_zalloc_small(size_t size)</div><div class="ttdoc">Allocate a zero initialized small object.</div></div>
<div class="ttc" id="agroup__extended_html_ga251d369cda3f1c2a955c555486ed90e5"><div class="ttname"><a href="group__extended.html#ga251d369cda3f1c2a955c555486ed90e5">mi_error_fun</a></div><div class="ttdeci">void() mi_error_fun(int err, void *arg)</div><div class="ttdoc">Type of error callback functions.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:391</div></div>
<div class="ttc" id="agroup__extended_html_ga299dae78d25ce112e384a98b7309c5be"><div class="ttname"><a href="group__extended.html#ga299dae78d25ce112e384a98b7309c5be">mi_deferred_free_fun</a></div><div class="ttdeci">void() mi_deferred_free_fun(bool force, unsigned long long heartbeat, void *arg)</div><div class="ttdoc">Type of deferred free functions.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:352</div></div>
<div class="ttc" id="agroup__extended_html_ga2d126e5c62d3badc35445e5d84166df2"><div class="ttname"><a href="group__extended.html#ga2d126e5c62d3badc35445e5d84166df2">mi_stats_print</a></div><div class="ttdeci">void mi_stats_print(void *out)</div><div class="ttdoc">Deprecated.</div></div>
<div class="ttc" id="agroup__extended_html_ga3132f521fb756fc0e8ec0b74fb58df50"><div class="ttname"><a href="group__extended.html#ga3132f521fb756fc0e8ec0b74fb58df50">mi_reserve_huge_os_pages_interleave</a></div><div class="ttdeci">int mi_reserve_huge_os_pages_interleave(size_t pages, size_t numa_nodes, size_t timeout_msecs)</div><div class="ttdoc">Reserve pages of huge OS pages (1GiB) evenly divided over numa_nodes nodes, but stops after at most t...</div></div>
<div class="ttc" id="agroup__extended_html_ga3460a6ca91af97be4058f523d3cb8ece"><div class="ttname"><a href="group__extended.html#ga3460a6ca91af97be4058f523d3cb8ece">mi_register_deferred_free</a></div><div class="ttdeci">void mi_register_deferred_free(mi_deferred_free_fun *deferred_free, void *arg)</div><div class="ttdoc">Register a deferred free function.</div></div>
<div class="ttc" id="agroup__extended_html_ga3bb8468b8cfcc6e2a61d98aee85c5f99"><div class="ttname"><a href="group__extended.html#ga3bb8468b8cfcc6e2a61d98aee85c5f99">mi_stats_reset</a></div><div class="ttdeci">void mi_stats_reset(void)</div><div class="ttdoc">Reset statistics.</div></div>
<div class="ttc" id="agroup__extended_html_ga421430e2226d7d468529cec457396756"><div class="ttname"><a href="group__extended.html#ga421430e2226d7d468529cec457396756">mi_collect</a></div><div class="ttdeci">void mi_collect(bool force)</div><div class="ttdoc">Eagerly free memory.</div></div>
<div class="ttc" id="agroup__extended_html_ga4c6486a1fdcd7a423b5f25fe4be8e0cf"><div class="ttname"><a href="group__extended.html#ga4c6486a1fdcd7a423b5f25fe4be8e0cf">mi_manage_os_memory</a></div><div class="ttdeci">bool mi_manage_os_memory(void *start, size_t size, bool is_committed, bool is_large, bool is_zero, int numa_node)</div><div class="ttdoc">Manage a particular memory area for use by mimalloc.</div></div>
<div class="ttc" id="agroup__extended_html_ga537f13b299ddf801e49a5a94fde02c79"><div class="ttname"><a href="group__extended.html#ga537f13b299ddf801e49a5a94fde02c79">mi_stats_print_out</a></div><div class="ttdeci">void mi_stats_print_out(mi_output_fun *out, void *arg)</div><div class="ttdoc">Print the main statistics.</div></div>
<div class="ttc" id="agroup__extended_html_ga5f071b10d4df1c3658e04e7fd67a94e6"><div class="ttname"><a href="group__extended.html#ga5f071b10d4df1c3658e04e7fd67a94e6">mi_is_in_heap_region</a></div><div class="ttdeci">bool mi_is_in_heap_region(const void *p)</div><div class="ttdoc">Is a pointer part of our heap?</div></div>
<div class="ttc" id="agroup__extended_html_ga7136c2e55cb22c98ecf95d08d6debb99"><div class="ttname"><a href="group__extended.html#ga7136c2e55cb22c98ecf95d08d6debb99">mi_malloc_small</a></div><div class="ttdeci">void * mi_malloc_small(size_t size)</div><div class="ttdoc">Allocate a small object.</div></div>
<div class="ttc" id="agroup__extended_html_ga7795a13d20087447281858d2c771cca1"><div class="ttname"><a href="group__extended.html#ga7795a13d20087447281858d2c771cca1">mi_reserve_huge_os_pages_at</a></div><div class="ttdeci">int mi_reserve_huge_os_pages_at(size_t pages, int numa_node, size_t timeout_msecs)</div><div class="ttdoc">Reserve pages of huge OS pages (1GiB) at a specific numa_node, but stops after at most timeout_msecs ...</div></div>
<div class="ttc" id="agroup__extended_html_ga7d862c2affd5790381da14eb102a364d"><div class="ttname"><a href="group__extended.html#ga7d862c2affd5790381da14eb102a364d">mi_process_info</a></div><div class="ttdeci">void mi_process_info(size_t *elapsed_msecs, size_t *user_msecs, size_t *system_msecs, size_t *current_rss, size_t *peak_rss, size_t *current_commit, size_t *peak_commit, size_t *page_faults)</div><div class="ttdoc">Return process information (time and memory usage).</div></div>
<div class="ttc" id="agroup__extended_html_ga854b1de8cb067c7316286c28b2fcd3d1"><div class="ttname"><a href="group__extended.html#ga854b1de8cb067c7316286c28b2fcd3d1">mi_stats_merge</a></div><div class="ttdeci">void mi_stats_merge(void)</div><div class="ttdoc">Merge thread local statistics with the main statistics and reset.</div></div>
<div class="ttc" id="agroup__extended_html_gaa1d55e0e894be240827e5d87ec3a1f45"><div class="ttname"><a href="group__extended.html#gaa1d55e0e894be240827e5d87ec3a1f45">mi_register_error</a></div><div class="ttdeci">void mi_register_error(mi_error_fun *errfun, void *arg)</div><div class="ttdoc">Register an error callback function.</div></div>
<div class="ttc" id="agroup__extended_html_gaad25050b19f30cd79397b227e0157a3f"><div class="ttname"><a href="group__extended.html#gaad25050b19f30cd79397b227e0157a3f">mi_is_redirected</a></div><div class="ttdeci">bool mi_is_redirected()</div><div class="ttdoc">Is the C runtime malloc API redirected?</div></div>
<div class="ttc" id="agroup__extended_html_gab1dac8476c46cb9eecab767eb40c1525"><div class="ttname"><a href="group__extended.html#gab1dac8476c46cb9eecab767eb40c1525">mi_thread_stats_print_out</a></div><div class="ttdeci">void mi_thread_stats_print_out(mi_output_fun *out, void *arg)</div><div class="ttdoc">Print out heap statistics for this thread.</div></div>
<div class="ttc" id="agroup__extended_html_gac057927cd06c854b45fe7847e921bd47"><div class="ttname"><a href="group__extended.html#gac057927cd06c854b45fe7847e921bd47">mi_good_size</a></div><div class="ttdeci">size_t mi_good_size(size_t size)</div><div class="ttdoc">Return the used allocation size.</div></div>
<div class="ttc" id="agroup__extended_html_gad823d23444a4b77a40f66bf075a98a0c"><div class="ttname"><a href="group__extended.html#gad823d23444a4b77a40f66bf075a98a0c">mi_output_fun</a></div><div class="ttdeci">void() mi_output_fun(const char *msg, void *arg)</div><div class="ttdoc">Type of output functions.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:376</div></div>
<div class="ttc" id="agroup__extended_html_gae5b17ff027cd2150b43a33040250cf3f"><div class="ttname"><a href="group__extended.html#gae5b17ff027cd2150b43a33040250cf3f">mi_register_output</a></div><div class="ttdeci">void mi_register_output(mi_output_fun *out, void *arg)</div><div class="ttdoc">Register an output function.</div></div>
<div class="ttc" id="agroup__extended_html_gaf8e73efc2cbca9ebfdfb166983a04c17"><div class="ttname"><a href="group__extended.html#gaf8e73efc2cbca9ebfdfb166983a04c17">mi_thread_init</a></div><div class="ttdeci">void mi_thread_init(void)</div><div class="ttdoc">Initialize mimalloc on a thread.</div></div>
<div class="ttc" id="agroup__heap_html_ga00e95ba1e01acac3cfd95bb7a357a6f0"><div class="ttname"><a href="group__heap.html#ga00e95ba1e01acac3cfd95bb7a357a6f0">mi_heap_realpath</a></div><div class="ttdeci">char * mi_heap_realpath(mi_heap_t *heap, const char *fname, char *resolved_name)</div><div class="ttdoc">Resolve a file path name using a specific heap to allocate the result.</div></div>
<div class="ttc" id="agroup__heap_html_ga08ca6419a5c057a4d965868998eef487"><div class="ttname"><a href="group__heap.html#ga08ca6419a5c057a4d965868998eef487">mi_heap_calloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_calloc_aligned_at(mi_heap_t *heap, size_t count, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_ga139d6b09dbf50c3c2523d0f4d1cfdeb5"><div class="ttname"><a href="group__heap.html#ga139d6b09dbf50c3c2523d0f4d1cfdeb5">mi_heap_strdup</a></div><div class="ttdeci">char * mi_heap_strdup(mi_heap_t *heap, const char *s)</div><div class="ttdoc">Duplicate a string in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga23acd7680fb0976dde3783254c6c874b"><div class="ttname"><a href="group__heap.html#ga23acd7680fb0976dde3783254c6c874b">mi_heap_malloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_malloc_aligned_at(mi_heap_t *heap, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_ga2ab1af8d438819b55319c7ef51d1e409"><div class="ttname"><a href="group__heap.html#ga2ab1af8d438819b55319c7ef51d1e409">mi_heap_delete</a></div><div class="ttdeci">void mi_heap_delete(mi_heap_t *heap)</div><div class="ttdoc">Delete a previously allocated heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga34a47cde5a5b38c29f1aa3c5e76943c2"><div class="ttname"><a href="group__heap.html#ga34a47cde5a5b38c29f1aa3c5e76943c2">mi_heap_t</a></div><div class="ttdeci">struct mi_heap_s mi_heap_t</div><div class="ttdoc">Type of first-class heaps.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:554</div></div>
<div class="ttc" id="agroup__heap_html_ga45fb43a62776fbebbdf1edd99b527954"><div class="ttname"><a href="group__heap.html#ga45fb43a62776fbebbdf1edd99b527954">mi_heap_zalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_zalloc_aligned_at(mi_heap_t *heap, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_ga4a21070eb4e7cce018133c8d5f4b0527"><div class="ttname"><a href="group__heap.html#ga4a21070eb4e7cce018133c8d5f4b0527">mi_heap_reallocf</a></div><div class="ttdeci">void * mi_heap_reallocf(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__heap_html_ga4af03a6e2b93fae77424d93f889705c3"><div class="ttname"><a href="group__heap.html#ga4af03a6e2b93fae77424d93f889705c3">mi_heap_calloc_aligned</a></div><div class="ttdeci">void * mi_heap_calloc_aligned(mi_heap_t *heap, size_t count, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_ga5d03fbe062ffcf38f0f417fd968357fc"><div class="ttname"><a href="group__heap.html#ga5d03fbe062ffcf38f0f417fd968357fc">mi_heap_get_backing</a></div><div class="ttdeci">mi_heap_t * mi_heap_get_backing()</div><div class="ttdoc">Get the backing heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga766f672ba56f2fbfeb9d9dbb0b7f6b11"><div class="ttname"><a href="group__heap.html#ga766f672ba56f2fbfeb9d9dbb0b7f6b11">mi_heap_new</a></div><div class="ttdeci">mi_heap_t * mi_heap_new()</div><div class="ttdoc">Create a new heap that can be used for allocation.</div></div>
<div class="ttc" id="agroup__heap_html_ga7922f7495cde30b1984d0e6072419298"><div class="ttname"><a href="group__heap.html#ga7922f7495cde30b1984d0e6072419298">mi_heap_collect</a></div><div class="ttdeci">void mi_heap_collect(mi_heap_t *heap, bool force)</div><div class="ttdoc">Release outstanding resources in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga851da6c43fe0b71c1376cee8aef90db0"><div class="ttname"><a href="group__heap.html#ga851da6c43fe0b71c1376cee8aef90db0">mi_heap_mallocn</a></div><div class="ttdeci">void * mi_heap_mallocn(mi_heap_t *heap, size_t count, size_t size)</div><div class="ttdoc">Allocate count elements in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga8db4cbb87314a989a9a187464d6b5e05"><div class="ttname"><a href="group__heap.html#ga8db4cbb87314a989a9a187464d6b5e05">mi_heap_get_default</a></div><div class="ttdeci">mi_heap_t * mi_heap_get_default()</div><div class="ttdoc">Get the default heap that is used for mi_malloc() et al.</div></div>
<div class="ttc" id="agroup__heap_html_ga8e3dbd46650dd26573cf307a2c8f1f5a"><div class="ttname"><a href="group__heap.html#ga8e3dbd46650dd26573cf307a2c8f1f5a">mi_heap_strndup</a></div><div class="ttdeci">char * mi_heap_strndup(mi_heap_t *heap, const char *s, size_t n)</div><div class="ttdoc">Duplicate a string of at most length n in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga903104592c8ed53417a3762da6241133"><div class="ttname"><a href="group__heap.html#ga903104592c8ed53417a3762da6241133">mi_heap_zalloc</a></div><div class="ttdeci">void * mi_heap_zalloc(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate zero-initialized in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga9cbed01e42c0647907295de92c3fa296"><div class="ttname"><a href="group__heap.html#ga9cbed01e42c0647907295de92c3fa296">mi_heap_malloc</a></div><div class="ttdeci">void * mi_heap_malloc(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_ga9f9c0844edb9717f4feacd79116b8e0d"><div class="ttname"><a href="group__heap.html#ga9f9c0844edb9717f4feacd79116b8e0d">mi_heap_destroy</a></div><div class="ttdeci">void mi_heap_destroy(mi_heap_t *heap)</div><div class="ttdoc">Destroy a heap, freeing all its still allocated blocks.</div></div>
<div class="ttc" id="agroup__heap_html_gaa1a1c7a1f4da6826b5a25b70ef878368"><div class="ttname"><a href="group__heap.html#gaa1a1c7a1f4da6826b5a25b70ef878368">mi_heap_malloc_small</a></div><div class="ttdeci">void * mi_heap_malloc_small(mi_heap_t *heap, size_t size)</div><div class="ttdoc">Allocate a small object in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gaa450a59c6c7ae5fdbd1c2b80a8329ef0"><div class="ttname"><a href="group__heap.html#gaa450a59c6c7ae5fdbd1c2b80a8329ef0">mi_heap_zalloc_aligned</a></div><div class="ttdeci">void * mi_heap_zalloc_aligned(mi_heap_t *heap, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_gaa6702b3c48e9e53e50e81b36f5011d55"><div class="ttname"><a href="group__heap.html#gaa6702b3c48e9e53e50e81b36f5011d55">mi_heap_calloc</a></div><div class="ttdeci">void * mi_heap_calloc(mi_heap_t *heap, size_t count, size_t size)</div><div class="ttdoc">Allocate count zero-initialized elements in a specific heap.</div></div>
<div class="ttc" id="agroup__heap_html_gaaef3395f66be48f37bdc8322509c5d81"><div class="ttname"><a href="group__heap.html#gaaef3395f66be48f37bdc8322509c5d81">mi_heap_realloc</a></div><div class="ttdeci">void * mi_heap_realloc(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__heap_html_gab5b87e1805306f70df38789fcfcf6653"><div class="ttname"><a href="group__heap.html#gab5b87e1805306f70df38789fcfcf6653">mi_heap_malloc_aligned</a></div><div class="ttdeci">void * mi_heap_malloc_aligned(mi_heap_t *heap, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__heap_html_gab8631ec88c8d26641b68b5d25dcd4422"><div class="ttname"><a href="group__heap.html#gab8631ec88c8d26641b68b5d25dcd4422">mi_heap_set_default</a></div><div class="ttdeci">mi_heap_t * mi_heap_set_default(mi_heap_t *heap)</div><div class="ttdoc">Set the default heap to use for mi_malloc() et al.</div></div>
<div class="ttc" id="agroup__heap_html_gac74e94ad9b0c9b57c1c4d88b8825b7a8"><div class="ttname"><a href="group__heap.html#gac74e94ad9b0c9b57c1c4d88b8825b7a8">mi_heap_reallocn</a></div><div class="ttdeci">void * mi_heap_reallocn(mi_heap_t *heap, void *p, size_t count, size_t size)</div></div>
<div class="ttc" id="agroup__heap_html_gaf96c788a1bf553fe2d371de9365e047c"><div class="ttname"><a href="group__heap.html#gaf96c788a1bf553fe2d371de9365e047c">mi_heap_realloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_realloc_aligned_at(mi_heap_t *heap, void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__heap_html_gafc603b696bd14cae6da28658f950d98c"><div class="ttname"><a href="group__heap.html#gafc603b696bd14cae6da28658f950d98c">mi_heap_realloc_aligned</a></div><div class="ttdeci">void * mi_heap_realloc_aligned(mi_heap_t *heap, void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__malloc_html_ga08cec32dd5bbe7da91c78d19f1b5bebe"><div class="ttname"><a href="group__malloc.html#ga08cec32dd5bbe7da91c78d19f1b5bebe">mi_realpath</a></div><div class="ttdeci">char * mi_realpath(const char *fname, char *resolved_name)</div><div class="ttdoc">Resolve a file path name.</div></div>
<div class="ttc" id="agroup__malloc_html_ga0b05e2bf0f73e7401ae08597ff782ac6"><div class="ttname"><a href="group__malloc.html#ga0b05e2bf0f73e7401ae08597ff782ac6">mi_mallocn</a></div><div class="ttdeci">void * mi_mallocn(size_t count, size_t size)</div><div class="ttdoc">Allocate count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga23a0fbb452b5dce8e31fab1a1958cacc"><div class="ttname"><a href="group__malloc.html#ga23a0fbb452b5dce8e31fab1a1958cacc">mi_recalloc</a></div><div class="ttdeci">void * mi_recalloc(void *p, size_t count, size_t size)</div><div class="ttdoc">Re-allocate memory to count elements of size bytes, with extra memory initialized to zero.</div></div>
<div class="ttc" id="agroup__malloc_html_ga3406e8b168bc74c8637b11571a6da83a"><div class="ttname"><a href="group__malloc.html#ga3406e8b168bc74c8637b11571a6da83a">mi_malloc</a></div><div class="ttdeci">void * mi_malloc(size_t size)</div><div class="ttdoc">Allocate size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga61d57b4144ba24fba5c1e9b956d13853"><div class="ttname"><a href="group__malloc.html#ga61d57b4144ba24fba5c1e9b956d13853">mi_reallocn</a></div><div class="ttdeci">void * mi_reallocn(void *p, size_t count, size_t size)</div><div class="ttdoc">Re-allocate memory to count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_ga97fedb4f7107c592fd7f0f0a8949a57d"><div class="ttname"><a href="group__malloc.html#ga97fedb4f7107c592fd7f0f0a8949a57d">mi_calloc</a></div><div class="ttdeci">void * mi_calloc(size_t count, size_t size)</div><div class="ttdoc">Allocate zero-initialized count elements of size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gaaabf971c2571891433477e2d21a35266"><div class="ttname"><a href="group__malloc.html#gaaabf971c2571891433477e2d21a35266">mi_strndup</a></div><div class="ttdeci">char * mi_strndup(const char *s, size_t n)</div><div class="ttdoc">Allocate and duplicate a string up to n bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gaaee66a1d483c3e28f585525fb96707e4"><div class="ttname"><a href="group__malloc.html#gaaee66a1d483c3e28f585525fb96707e4">mi_expand</a></div><div class="ttdeci">void * mi_expand(void *p, size_t newsize)</div><div class="ttdoc">Try to re-allocate memory to newsize bytes in place.</div></div>
<div class="ttc" id="agroup__malloc_html_gac7cffe13f1f458ed16789488bf92b9b2"><div class="ttname"><a href="group__malloc.html#gac7cffe13f1f458ed16789488bf92b9b2">mi_strdup</a></div><div class="ttdeci">char * mi_strdup(const char *s)</div><div class="ttdoc">Allocate and duplicate a string.</div></div>
<div class="ttc" id="agroup__malloc_html_gaf11eb497da57bdfb2de65eb191c69db6"><div class="ttname"><a href="group__malloc.html#gaf11eb497da57bdfb2de65eb191c69db6">mi_realloc</a></div><div class="ttdeci">void * mi_realloc(void *p, size_t newsize)</div><div class="ttdoc">Re-allocate memory to newsize bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gaf2c7b89c327d1f60f59e68b9ea644d95"><div class="ttname"><a href="group__malloc.html#gaf2c7b89c327d1f60f59e68b9ea644d95">mi_free</a></div><div class="ttdeci">void mi_free(void *p)</div><div class="ttdoc">Free previously allocated memory.</div></div>
<div class="ttc" id="agroup__malloc_html_gafdd9d8bb2986e668ba9884f28af38000"><div class="ttname"><a href="group__malloc.html#gafdd9d8bb2986e668ba9884f28af38000">mi_zalloc</a></div><div class="ttdeci">void * mi_zalloc(size_t size)</div><div class="ttdoc">Allocate zero-initialized size bytes.</div></div>
<div class="ttc" id="agroup__malloc_html_gafe68ac7c5e24a65cd55c9d6b152211a0"><div class="ttname"><a href="group__malloc.html#gafe68ac7c5e24a65cd55c9d6b152211a0">mi_reallocf</a></div><div class="ttdeci">void * mi_reallocf(void *p, size_t newsize)</div><div class="ttdoc">Re-allocate memory to newsize bytes,.</div></div>
<div class="ttc" id="agroup__options_html_ga04180ae41b0d601421dd62ced40ca050"><div class="ttname"><a href="group__options.html#ga04180ae41b0d601421dd62ced40ca050">mi_option_enable</a></div><div class="ttdeci">void mi_option_enable(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga459ad98f18b3fc9275474807fe0ca188"><div class="ttname"><a href="group__options.html#ga459ad98f18b3fc9275474807fe0ca188">mi_option_is_enabled</a></div><div class="ttdeci">bool mi_option_is_enabled(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga65518b69ec5d32336b50e07f74b3f629"><div class="ttname"><a href="group__options.html#ga65518b69ec5d32336b50e07f74b3f629">mi_option_set_enabled_default</a></div><div class="ttdeci">void mi_option_set_enabled_default(mi_option_t option, bool enable)</div></div>
<div class="ttc" id="agroup__options_html_ga7e8af195cc81d3fa64ccf2662caa565a"><div class="ttname"><a href="group__options.html#ga7e8af195cc81d3fa64ccf2662caa565a">mi_option_get</a></div><div class="ttdeci">long mi_option_get(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_ga7ef623e440e6e5545cb08c94e71e4b90"><div class="ttname"><a href="group__options.html#ga7ef623e440e6e5545cb08c94e71e4b90">mi_option_set_default</a></div><div class="ttdeci">void mi_option_set_default(mi_option_t option, long value)</div></div>
<div class="ttc" id="agroup__options_html_ga9a13d05fcb77489cb06d4d017ebd8bed"><div class="ttname"><a href="group__options.html#ga9a13d05fcb77489cb06d4d017ebd8bed">mi_option_set_enabled</a></div><div class="ttdeci">void mi_option_set_enabled(mi_option_t option, bool enable)</div></div>
<div class="ttc" id="agroup__options_html_gaebf6ff707a2e688ebb1a2296ca564054"><div class="ttname"><a href="group__options.html#gaebf6ff707a2e688ebb1a2296ca564054">mi_option_disable</a></div><div class="ttdeci">void mi_option_disable(mi_option_t option)</div></div>
<div class="ttc" id="agroup__options_html_gaf84921c32375e25754dc2ee6a911fa60"><div class="ttname"><a href="group__options.html#gaf84921c32375e25754dc2ee6a911fa60">mi_option_set</a></div><div class="ttdeci">void mi_option_set(mi_option_t option, long value)</div></div>
<div class="ttc" id="agroup__options_html_gafebf7ed116adb38ae5218bc3ce06884c"><div class="ttname"><a href="group__options.html#gafebf7ed116adb38ae5218bc3ce06884c">mi_option_t</a></div><div class="ttdeci">mi_option_t</div><div class="ttdoc">Runtime options.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:800</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0957ef73b2550764b4840edf48422fda">mi_option_show_stats</a></div><div class="ttdeci">@ mi_option_show_stats</div><div class="ttdoc">Print statistics to stderr when the program is done.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:803</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca0ac33a18f6b659fcfaf44efb0bab1b74">mi_option_use_numa_nodes</a></div><div class="ttdeci">@ mi_option_use_numa_nodes</div><div class="ttdoc">Pretend there are at most N NUMA nodes.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:815</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca154fe170131d5212cff57e22b99523c5"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca154fe170131d5212cff57e22b99523c5">mi_option_reset_delay</a></div><div class="ttdeci">@ mi_option_reset_delay</div><div class="ttdoc">Delay in milli-seconds before resetting a page (100ms by default)</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:814</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca17a190c25be381142d87e0468c4c068c">mi_option_eager_commit_delay</a></div><div class="ttdeci">@ mi_option_eager_commit_delay</div><div class="ttdoc">Experimental.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:817</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca1e8de72c93da7ff22d91e1e27b52ac2b">mi_option_eager_commit</a></div><div class="ttdeci">@ mi_option_eager_commit</div><div class="ttdoc">Eagerly commit segments (4MiB) (enabled by default).</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:806</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca2ecbe7ef32f5c84de3739aa4f0b805a1"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca2ecbe7ef32f5c84de3739aa4f0b805a1">mi_option_segment_cache</a></div><div class="ttdeci">@ mi_option_segment_cache</div><div class="ttdoc">The number of segments per thread to keep cached.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:811</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca32ce97ece29f69e82579679cf8a307ad"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca32ce97ece29f69e82579679cf8a307ad">mi_option_eager_region_commit</a></div><div class="ttdeci">@ mi_option_eager_region_commit</div><div class="ttdoc">Eagerly commit large (256MiB) memory regions (enabled by default, except on Windows)</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:807</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca4192d491200d0055df0554d4cf65054e"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4192d491200d0055df0554d4cf65054e">mi_option_large_os_pages</a></div><div class="ttdeci">@ mi_option_large_os_pages</div><div class="ttdoc">Use large OS pages (2MiB in size) if possible.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:808</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca4b74ae2a69e445de6c2361b73c1d14bf">mi_option_os_tag</a></div><div class="ttdeci">@ mi_option_os_tag</div><div class="ttdoc">OS tag to assign to mimalloc'd memory.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:818</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca5b4357b74be0d87568036c32eb1a2e4a">_mi_option_last</a></div><div class="ttdeci">@ _mi_option_last</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:819</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884ca7c8b7bf5281c581bad64f5daa6442777">mi_option_verbose</a></div><div class="ttdeci">@ mi_option_verbose</div><div class="ttdoc">Print verbose messages to stderr.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:804</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caa13e7926d4339d2aa6fbf61d4473fd5c">mi_option_reserve_huge_os_pages_at</a></div><div class="ttdeci">@ mi_option_reserve_huge_os_pages_at</div><div class="ttdoc">Reserve huge OS pages at node N.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:810</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cac81ee965b130fa81238913a3c239d536"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cac81ee965b130fa81238913a3c239d536">mi_option_reset_decommits</a></div><div class="ttdeci">@ mi_option_reset_decommits</div><div class="ttdoc">Experimental.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:816</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884caca7ed041be3b0b9d0b82432c7bf41af2">mi_option_reserve_huge_os_pages</a></div><div class="ttdeci">@ mi_option_reserve_huge_os_pages</div><div class="ttdoc">The number of huge OS pages (1GiB in size) to reserve at the start of the program.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:809</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cada854dd272c66342f18a93ee254a2968"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cada854dd272c66342f18a93ee254a2968">mi_option_page_reset</a></div><div class="ttdeci">@ mi_option_page_reset</div><div class="ttdoc">Reset page memory after mi_option_reset_delay milliseconds when it becomes free.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:812</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cafb121d30d87591850d5410ccc3a95c6d"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafb121d30d87591850d5410ccc3a95c6d">mi_option_segment_reset</a></div><div class="ttdeci">@ mi_option_segment_reset</div><div class="ttdoc">Experimental.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:813</div></div>
<div class="ttc" id="agroup__options_html_ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0"><div class="ttname"><a href="group__options.html#ggafebf7ed116adb38ae5218bc3ce06884cafbf4822e5c00732c5984b32a032837f0">mi_option_show_errors</a></div><div class="ttdeci">@ mi_option_show_errors</div><div class="ttdoc">Print error messages to stderr.</div><div class="ttdef"><b>Definition:</b> mimalloc-doc.h:802</div></div>
<div class="ttc" id="agroup__posix_html_ga06d07cf357bbac5c73ba5d0c0c421e17"><div class="ttname"><a href="group__posix.html#ga06d07cf357bbac5c73ba5d0c0c421e17">mi_malloc_usable_size</a></div><div class="ttdeci">size_t mi_malloc_usable_size(const void *p)</div></div>
<div class="ttc" id="agroup__posix_html_ga0d28d5cf61e6bfbb18c63092939fe5c9"><div class="ttname"><a href="group__posix.html#ga0d28d5cf61e6bfbb18c63092939fe5c9">mi_free_aligned</a></div><div class="ttdeci">void mi_free_aligned(void *p, size_t alignment)</div></div>
<div class="ttc" id="agroup__posix_html_ga1326d2e4388630b5f81ca7206318b8e5"><div class="ttname"><a href="group__posix.html#ga1326d2e4388630b5f81ca7206318b8e5">mi_aligned_alloc</a></div><div class="ttdeci">void * mi_aligned_alloc(size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga4531c9e775bb3ae12db57c1ba8a5d7de"><div class="ttname"><a href="group__posix.html#ga4531c9e775bb3ae12db57c1ba8a5d7de">mi_malloc_size</a></div><div class="ttdeci">size_t mi_malloc_size(const void *p)</div></div>
<div class="ttc" id="agroup__posix_html_ga48fad8648a2f1dab9c87ea9448a52088"><div class="ttname"><a href="group__posix.html#ga48fad8648a2f1dab9c87ea9448a52088">mi_reallocarray</a></div><div class="ttdeci">void * mi_reallocarray(void *p, size_t count, size_t size)</div><div class="ttdoc">Correspond s to reallocarray in FreeBSD.</div></div>
<div class="ttc" id="agroup__posix_html_ga705dc7a64bffacfeeb0141501a5c35d7"><div class="ttname"><a href="group__posix.html#ga705dc7a64bffacfeeb0141501a5c35d7">mi_cfree</a></div><div class="ttdeci">void mi_cfree(void *p)</div><div class="ttdoc">Just as free but also checks if the pointer p belongs to our heap.</div></div>
<div class="ttc" id="agroup__posix_html_ga72e9d7ffb5fe94d69bc722c8506e27bc"><div class="ttname"><a href="group__posix.html#ga72e9d7ffb5fe94d69bc722c8506e27bc">mi_free_size_aligned</a></div><div class="ttdeci">void mi_free_size_aligned(void *p, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__posix_html_ga73baaf5951f5165ba0763d0c06b6a93b"><div class="ttname"><a href="group__posix.html#ga73baaf5951f5165ba0763d0c06b6a93b">mi_valloc</a></div><div class="ttdeci">void * mi_valloc(size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_ga7e1934d60a3e697950eeb48e042bfad5"><div class="ttname"><a href="group__posix.html#ga7e1934d60a3e697950eeb48e042bfad5">mi_reallocarr</a></div><div class="ttdeci">int mi_reallocarr(void *p, size_t count, size_t size)</div><div class="ttdoc">Corresponds to reallocarr in NetBSD.</div></div>
<div class="ttc" id="agroup__posix_html_gaab7fa71ea93b96873f5d9883db57d40e"><div class="ttname"><a href="group__posix.html#gaab7fa71ea93b96873f5d9883db57d40e">mi_memalign</a></div><div class="ttdeci">void * mi_memalign(size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gacff84f226ba9feb2031b8992e5579447"><div class="ttname"><a href="group__posix.html#gacff84f226ba9feb2031b8992e5579447">mi_posix_memalign</a></div><div class="ttdeci">int mi_posix_memalign(void **p, size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gad5a69c8fea96aa2b7a7c818c2130090a"><div class="ttname"><a href="group__posix.html#gad5a69c8fea96aa2b7a7c818c2130090a">mi__posix_memalign</a></div><div class="ttdeci">int mi__posix_memalign(void **p, size_t alignment, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gae01389eedab8d67341ff52e2aad80ebb"><div class="ttname"><a href="group__posix.html#gae01389eedab8d67341ff52e2aad80ebb">mi_free_size</a></div><div class="ttdeci">void mi_free_size(void *p, size_t size)</div></div>
<div class="ttc" id="agroup__posix_html_gaeb325c39b887d3b90d85d1eb1712fb1e"><div class="ttname"><a href="group__posix.html#gaeb325c39b887d3b90d85d1eb1712fb1e">mi_pvalloc</a></div><div class="ttdeci">void * mi_pvalloc(size_t size)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga375fa8a611c51905e592d5d467c49664"><div class="ttname"><a href="group__zeroinit.html#ga375fa8a611c51905e592d5d467c49664">mi_heap_rezalloc_aligned</a></div><div class="ttdeci">void * mi_heap_rezalloc_aligned(mi_heap_t *heap, void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga3e7e5c291acf1c7fd7ffd9914a9f945f"><div class="ttname"><a href="group__zeroinit.html#ga3e7e5c291acf1c7fd7ffd9914a9f945f">mi_recalloc_aligned</a></div><div class="ttdeci">void * mi_recalloc_aligned(void *p, size_t newcount, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga496452c96f1de8c500be9fddf52edaf7"><div class="ttname"><a href="group__zeroinit.html#ga496452c96f1de8c500be9fddf52edaf7">mi_heap_recalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_recalloc_aligned_at(mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga4ff5e92ad73585418a072c9d059e5cf9"><div class="ttname"><a href="group__zeroinit.html#ga4ff5e92ad73585418a072c9d059e5cf9">mi_recalloc_aligned_at</a></div><div class="ttdeci">void * mi_recalloc_aligned_at(void *p, size_t newcount, size_t size, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga8648c5fbb22a80f0262859099f06dfbd"><div class="ttname"><a href="group__zeroinit.html#ga8648c5fbb22a80f0262859099f06dfbd">mi_heap_recalloc</a></div><div class="ttdeci">void * mi_heap_recalloc(mi_heap_t *heap, void *p, size_t newcount, size_t size)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga8c292e142110229a2980b37ab036dbc6"><div class="ttname"><a href="group__zeroinit.html#ga8c292e142110229a2980b37ab036dbc6">mi_rezalloc</a></div><div class="ttdeci">void * mi_rezalloc(void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__zeroinit_html_ga9f3f999396c8f77ca5e80e7b40ac29e3"><div class="ttname"><a href="group__zeroinit.html#ga9f3f999396c8f77ca5e80e7b40ac29e3">mi_heap_recalloc_aligned</a></div><div class="ttdeci">void * mi_heap_recalloc_aligned(mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gac90da54fa7e5d10bdc97ce0b51dce2eb"><div class="ttname"><a href="group__zeroinit.html#gac90da54fa7e5d10bdc97ce0b51dce2eb">mi_heap_rezalloc_aligned_at</a></div><div class="ttdeci">void * mi_heap_rezalloc_aligned_at(mi_heap_t *heap, void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gacd71a7bce96aab38ae6de17af2eb2cf0"><div class="ttname"><a href="group__zeroinit.html#gacd71a7bce96aab38ae6de17af2eb2cf0">mi_rezalloc_aligned</a></div><div class="ttdeci">void * mi_rezalloc_aligned(void *p, size_t newsize, size_t alignment)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gacfad83f14eb5d6a42a497a898e19fc76"><div class="ttname"><a href="group__zeroinit.html#gacfad83f14eb5d6a42a497a898e19fc76">mi_heap_rezalloc</a></div><div class="ttdeci">void * mi_heap_rezalloc(mi_heap_t *heap, void *p, size_t newsize)</div></div>
<div class="ttc" id="agroup__zeroinit_html_gae8b358c417e61d5307da002702b0a8e1"><div class="ttname"><a href="group__zeroinit.html#gae8b358c417e61d5307da002702b0a8e1">mi_rezalloc_aligned_at</a></div><div class="ttdeci">void * mi_rezalloc_aligned_at(void *p, size_t newsize, size_t alignment, size_t offset)</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>mimalloc-doc.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
</ul>
</div>
</body>
</html>