wasm-micro-runtime/core/iwasm/include
Marcin Kolny cbc2078898
AOT call stack optimizations (#3773)
- Implement TINY / STANDARD frame modes - tiny mode is only able to keep track on the IP
  and func idx, STANDARD mode provides more capabilities (parameters, stack pointer etc.).
- Implement FRAME_PER_FUNCTION / FRAME_PER_CALL modes - frame per function adds
  code at the beginning and at the end of each function for allocating / deallocating stack frame,
  whereas in per-call mode the frame is allocated before each call. The exception is call to
  the imported function, where frame-per-function mode also allocates the stack before the
  `call` instruction (as it can't instrument the imported function).

At the moment TINY + FRAME_PER_FUNCTION is automatically enabled in case GC and perf
profiling are disabled and `values` call stack feature is not requested. In all the other cases
STANDARD + FRAME_PER_CALL is used.

STANDARD + FRAME_PER_FUNCTION and TINY + FRAME_PER_CALL are currently not
implemented but possible, and might be enabled in the future.

ps. https://github.com/bytecodealliance/wasm-micro-runtime/issues/3758
2024-09-10 09:05:23 +08:00
..
aot_comp_option.h AOT call stack optimizations (#3773) 2024-09-10 09:05:23 +08:00
aot_export.h Expose more functions related to emitting AOT files (#3520) 2024-06-14 15:57:45 +08:00
gc_export.h Add WASM_V128 in wasm_valkind_enum (#3412) 2024-05-14 10:22:42 +08:00
lib_export.h Add necessary comments for doxygen (#3299) 2024-04-11 07:50:08 +08:00
wasm_c_api.h Add APIs into wasm_c_api.h to summary wasm function execution duration (#3639) 2024-07-23 16:34:47 +08:00
wasm_export.h Add apis to get package version (#3601) 2024-07-16 08:15:59 +08:00