mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-05-12 12:41:25 +00:00
Add API wasm_runtime_set_module_inst (#1286)
Add API wasm_runtime_set_module_inst, per request from #1275
This commit is contained in:
parent
d08e13c5ad
commit
0ec27af9df
|
@ -178,6 +178,13 @@ wasm_exec_env_get_module_inst(WASMExecEnv *exec_env)
|
||||||
return exec_env->module_inst;
|
return exec_env->module_inst;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
wasm_exec_env_set_module_inst(WASMExecEnv *exec_env,
|
||||||
|
WASMModuleInstanceCommon *const module_inst)
|
||||||
|
{
|
||||||
|
exec_env->module_inst = module_inst;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
wasm_exec_env_set_thread_info(WASMExecEnv *exec_env)
|
wasm_exec_env_set_thread_info(WASMExecEnv *exec_env)
|
||||||
{
|
{
|
||||||
|
|
|
@ -255,6 +255,10 @@ wasm_exec_env_get_cur_frame(WASMExecEnv *exec_env)
|
||||||
struct WASMModuleInstanceCommon *
|
struct WASMModuleInstanceCommon *
|
||||||
wasm_exec_env_get_module_inst(WASMExecEnv *exec_env);
|
wasm_exec_env_get_module_inst(WASMExecEnv *exec_env);
|
||||||
|
|
||||||
|
void
|
||||||
|
wasm_exec_env_set_module_inst(
|
||||||
|
WASMExecEnv *exec_env, struct WASMModuleInstanceCommon *const module_inst);
|
||||||
|
|
||||||
void
|
void
|
||||||
wasm_exec_env_set_thread_info(WASMExecEnv *exec_env);
|
wasm_exec_env_set_thread_info(WASMExecEnv *exec_env);
|
||||||
|
|
||||||
|
|
|
@ -1180,6 +1180,13 @@ wasm_runtime_get_module_inst(WASMExecEnv *exec_env)
|
||||||
return wasm_exec_env_get_module_inst(exec_env);
|
return wasm_exec_env_get_module_inst(exec_env);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
wasm_runtime_set_module_inst(WASMExecEnv *exec_env,
|
||||||
|
WASMModuleInstanceCommon *const module_inst)
|
||||||
|
{
|
||||||
|
wasm_exec_env_set_module_inst(exec_env, module_inst);
|
||||||
|
}
|
||||||
|
|
||||||
void *
|
void *
|
||||||
wasm_runtime_get_function_attachment(WASMExecEnv *exec_env)
|
wasm_runtime_get_function_attachment(WASMExecEnv *exec_env)
|
||||||
{
|
{
|
||||||
|
|
|
@ -507,6 +507,11 @@ wasm_runtime_destroy_exec_env(WASMExecEnv *exec_env);
|
||||||
WASM_RUNTIME_API_EXTERN WASMModuleInstanceCommon *
|
WASM_RUNTIME_API_EXTERN WASMModuleInstanceCommon *
|
||||||
wasm_runtime_get_module_inst(WASMExecEnv *exec_env);
|
wasm_runtime_get_module_inst(WASMExecEnv *exec_env);
|
||||||
|
|
||||||
|
/* See wasm_export.h for description */
|
||||||
|
WASM_RUNTIME_API_EXTERN void
|
||||||
|
wasm_runtime_set_module_inst(WASMExecEnv *exec_env,
|
||||||
|
WASMModuleInstanceCommon *const module_inst);
|
||||||
|
|
||||||
/* See wasm_export.h for description */
|
/* See wasm_export.h for description */
|
||||||
WASM_RUNTIME_API_EXTERN void *
|
WASM_RUNTIME_API_EXTERN void *
|
||||||
wasm_runtime_get_function_attachment(WASMExecEnv *exec_env);
|
wasm_runtime_get_function_attachment(WASMExecEnv *exec_env);
|
||||||
|
|
|
@ -539,6 +539,21 @@ wasm_runtime_thread_env_inited(void);
|
||||||
WASM_RUNTIME_API_EXTERN wasm_module_inst_t
|
WASM_RUNTIME_API_EXTERN wasm_module_inst_t
|
||||||
wasm_runtime_get_module_inst(wasm_exec_env_t exec_env);
|
wasm_runtime_get_module_inst(wasm_exec_env_t exec_env);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set WASM module instance of execution environment
|
||||||
|
* Caution:
|
||||||
|
* normally the module instance is bound with the execution
|
||||||
|
* environment one by one, if multiple module instances want
|
||||||
|
* to share to the same execution environment, developer should
|
||||||
|
* be responsible for the backup and restore of module instance
|
||||||
|
*
|
||||||
|
* @param exec_env the execution environment
|
||||||
|
* @param module_inst the WASM module instance to set
|
||||||
|
*/
|
||||||
|
WASM_RUNTIME_API_EXTERN void
|
||||||
|
wasm_runtime_set_module_inst(wasm_exec_env_t exec_env,
|
||||||
|
const wasm_module_inst_t module_inst);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Call the given WASM function of a WASM module instance with
|
* Call the given WASM function of a WASM module instance with
|
||||||
* arguments (bytecode and AoT).
|
* arguments (bytecode and AoT).
|
||||||
|
|
Loading…
Reference in New Issue
Block a user