Currently, to prevent the number of memory mappings from growing, WASM code is parsed twice.
This PR parses WASM code only once for JIT. The solution is that after the first parsing, data required by JIT execution is saved in regular C++ vectors for later use, and the memory (acquired by mmap) used by the first parsing is released. This is made possible by https://github.com/AntelopeIO/eos-vm/pull/16, which moves globals out from the mmapped memory.
Currently, to prevent the number of memory mappings from growing, WASM code is parsed twice.
This PR parses WASM code only once for JIT. The solution is that after the first parsing, data required by JIT execution is saved in regular C++ vectors for later use, and the memory (acquired by
mmap
) used by the first parsing is released. This is made possible by https://github.com/AntelopeIO/eos-vm/pull/16, which moves globals out from the mmapped memory.Resolve https://github.com/AntelopeIO/eos-vm/issues/17
Change Description
API Changes
Documentation Additions