perf(core): typed calling convention for words with a known stack effect

Such a word now compiles to a fast entry (i32 x p) -> (i32 x q) carrying
its stack items as WASM values, plus the usual ( -- ) wrapper that keeps
the table slot, so EXECUTE / interpreter / host words / CATCH see the
unchanged memory ABI. Fib(25) 1035 -> 366 us, 4.3x slower than sf64 ->
1.2x; the default guards-on config 1740 -> 361 us. WS-006.
This commit is contained in:
Oleksandr Kozachuk
2026-08-09 09:20:10 +02:00
parent e6c10a6fa1
commit fc34bd9b24
9 changed files with 1024 additions and 114 deletions
+1
View File
@@ -126,6 +126,7 @@ pub fn export_module(
table_size,
&export_sections,
vm.stack_guard_param(),
vm.typed_calls(),
)
.map_err(|e| anyhow::anyhow!("export codegen error: {e}"))?;