mirror of
https://github.com/bytecodealliance/wasm-micro-runtime.git
synced 2025-10-29 20:31:17 +00:00
Implement the shared heap feature for interpreter, aot and llvm jit.
Add below runtime APIs:
```C
wasm_shared_heap_t
wasm_runtime_create_shared_heap(SharedHeapInitArgs *init_args);
bool
wasm_runtime_attach_shared_heap(wasm_module_inst_t module_inst,
wasm_shared_heap_t shared_heap);
void
wasm_runtime_detach_shared_heap(wasm_module_inst_t module_inst);
uint64_t
wasm_runtime_shared_heap_malloc(wasm_module_inst_t module_inst, uint64_t size,
void **p_native_addr);
void
wasm_runtime_shared_heap_free(wasm_module_inst_t module_inst, uint64_t ptr);
```
And allow wasm app to call API shared_heap_malloc and shared_heap_free:
```C
void *shared_heap_malloc(uint32_t size);
void shared_heap_free(void *ptr);
```
|
||
|---|---|---|
| .. | ||
| debug-engine | ||
| lib-pthread | ||
| lib-rats | ||
| lib-socket | ||
| lib-wasi-threads | ||
| libc-builtin | ||
| libc-emcc | ||
| libc-uvwasi | ||
| libc-wasi | ||
| shared-heap | ||
| thread-mgr | ||
| wasi-nn | ||