Clone data segments when specified with load args (#3463)
Follow-up on https://github.com/bytecodealliance/wasm-micro-runtime/pull/3389, specifically: https://github.com/bytecodealliance/wasm-micro-runtime/pull/3389#discussion_r1600872451 If we want to free the wasm binary buffer early, we need to clone the data segments into the module. That's because, in case of [passive data segments](https://webassembly.github.io/threads/core/syntax/modules.html#syntax-data), they can be referred during wasm execution.
This commit is contained in:
@ -1918,12 +1918,11 @@ wasm_runtime_detect_native_stack_overflow_size(wasm_exec_env_t exec_env,
|
||||
/**
|
||||
* Query whether the wasm binary buffer used to create the module can be freed
|
||||
*
|
||||
* @param module_inst the target module instance
|
||||
* @param module the target module
|
||||
* @return true if the wasm binary buffer can be freed
|
||||
*/
|
||||
WASM_RUNTIME_API_EXTERN bool
|
||||
wasm_runtime_is_underlying_binary_freeable(
|
||||
const wasm_module_inst_t module_inst);
|
||||
wasm_runtime_is_underlying_binary_freeable(const wasm_module_t module);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user