wasm-micro-runtime/core/iwasm/compilation
TianlongLiang 8a55a1e7a1
Shared heap enhancements for Interpreter and AOT (#4400)
Propose two enhancements:

- Shared heap created from preallocated memory buffer: The user can create a shared heap from a pre-allocated buffer and see that memory region as one large chunk; there's no need to dynamically manage it(malloc/free). The user needs to make sure the native address and size of that memory region are valid.
- Introduce shared heap chain: The user can create a shared heap chain, from the wasm app point of view, it's still a continuous memory region in wasm app's point of view while in the native it can consist of multiple shared heaps (each of which is a continuous memory region). For example, one 500MB shared heap 1 and one 500 MB shared heap 2 form a chain, in Wasm's point of view, it's one 1GB shared heap.

After these enhancements, the data sharing between wasm apps, and between hosts can be more efficient and flexible. Admittedly shared heap management can be more complex for users, but it's similar to the zero-overhead principle. No overhead will be imposed for the users who don't use the shared heap enhancement or don't use the shared heap at all.
2025-07-04 10:44:51 +08:00
..
debug dwarf_extractor.cpp: use macro control to be compatible with lower version toolchain (#4169) 2025-04-01 12:05:13 +08:00
simd fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00
aot_compiler.c Add select 128 (#4236) 2025-05-14 12:35:56 +08:00
aot_compiler.h fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00
aot_emit_aot_file.c Fix potential integer overflow issues (#4429) 2025-07-01 13:39:30 +08:00
aot_emit_aot_file.h Expose more functions related to emitting AOT files (#3520) 2024-06-14 15:57:45 +08:00
aot_emit_compare.c Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_compare.h Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_const.c aot compiler: Fix NaN handling for opcode f32/f64.const in XIP mode (#3721) 2024-08-16 14:04:41 +08:00
aot_emit_const.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_emit_control.c fix(aot): ensure value_cmp does not exceed br_count in branch table compilation (#4065) 2025-02-06 20:05:33 +08:00
aot_emit_control.h Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_conversion.c Remove indirect-load for constants on Xtensa Target to improve performance (#4162) 2025-04-02 14:39:03 +08:00
aot_emit_conversion.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_emit_exception.c Add wamrc parameter to configure stack frame features (#3763) 2024-09-05 21:44:06 +08:00
aot_emit_exception.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_emit_function.c Fix potential integer overflow issues (#4429) 2025-07-01 13:39:30 +08:00
aot_emit_function.h Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_gc.c Fix some more spelling issues (#3393) 2024-05-08 09:30:29 +08:00
aot_emit_gc.h Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_memory.c Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
aot_emit_memory.h aot compiler: Use larger alignment for load/store when possible (#3552) 2024-06-22 10:32:52 +08:00
aot_emit_numberic.c aot: add new u64 intrinsics (#4168) 2025-04-09 15:19:48 +08:00
aot_emit_numberic.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_emit_parametric.c Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_parametric.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_emit_stringref.c Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_stringref.h Implement GC (Garbage Collection) feature for interpreter, AOT and LLVM-JIT (#3125) 2024-02-06 20:47:11 +08:00
aot_emit_table.c Fix some compile warnings and typos (#3854) 2024-10-15 16:04:58 +08:00
aot_emit_table.h Refine AOT/JIT code call wasm-c-api import process (#2982) 2024-01-10 18:37:02 +08:00
aot_emit_variable.c Add wasm module global type information APIs (#3406) 2024-05-10 09:15:58 +08:00
aot_emit_variable.h Apply clang-format for core/iwasm compilation and libraries (#784) 2021-10-13 15:13:00 +08:00
aot_llvm_extra.cpp LLVM: don't verify instcombine fixpoint (#4219) 2025-04-27 11:30:35 +08:00
aot_llvm_extra2.cpp LLVMCreateTargetMachineWithOpts: disable large data (#4220) 2025-04-27 11:48:57 +08:00
aot_llvm_extra2.h aot: Fix LLVMSetTailCallKind check (#3099) 2024-01-30 20:50:33 +08:00
aot_llvm.c Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
aot_llvm.h Shared heap enhancements for Interpreter and AOT (#4400) 2025-07-04 10:44:51 +08:00
aot_orc_extra.cpp GlobalValueSet was moved to IRPartitionLayer recently, but we have a local definition anyway (#3899) 2024-11-13 15:11:33 +08:00
aot_orc_extra.h Fix some more spelling issues (#3393) 2024-05-08 09:30:29 +08:00
aot_orc_extra2.cpp Fix some more spelling issues (#3393) 2024-05-08 09:30:29 +08:00
aot_stack_frame_comp.c Implement option for skipping function index in the callstack (#3785) 2024-09-11 16:08:37 +08:00
aot_stack_frame_comp.h AOT call stack optimizations (#3773) 2024-09-10 09:05:23 +08:00
aot_stack_frame.h AOT call stack optimizations (#3773) 2024-09-10 09:05:23 +08:00
aot.c Merge pull request #3987 from no1wudi/fix 2024-12-28 20:25:19 +08:00
aot.h Optimize memory initialization handling in AOT loader (#3983) 2024-12-26 15:15:25 +08:00
iwasm_compl.cmake fix: correct typos and improve comments across multiple files by codespell (#4116) 2025-03-07 08:21:54 +08:00