From 0c5cdcb1613a13f65e5b825edbb67052920fa199 Mon Sep 17 00:00:00 2001 From: ObserverOfTime Date: Sat, 30 Aug 2025 15:51:57 +0300 Subject: [PATCH] fix(xtask): add heap symbols to emscripten exported methods --- crates/loader/emscripten-version | 2 +- crates/xtask/src/build_wasm.rs | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/crates/loader/emscripten-version b/crates/loader/emscripten-version index d13e837c..a2cec7af 100644 --- a/crates/loader/emscripten-version +++ b/crates/loader/emscripten-version @@ -1 +1 @@ -4.0.6 +4.0.8 diff --git a/crates/xtask/src/build_wasm.rs b/crates/xtask/src/build_wasm.rs index 4da817c9..534c87f6 100644 --- a/crates/xtask/src/build_wasm.rs +++ b/crates/xtask/src/build_wasm.rs @@ -24,7 +24,7 @@ enum EmccSource { Podman, } -const EXPORTED_RUNTIME_METHODS: [&str; 8] = [ +const EXPORTED_RUNTIME_METHODS: [&str; 19] = [ "AsciiToString", "stringToUTF8", "UTF8ToString", @@ -33,6 +33,17 @@ const EXPORTED_RUNTIME_METHODS: [&str; 8] = [ "loadWebAssemblyModule", "getValue", "setValue", + "HEAPF32", + "HEAPF64", + "HEAP_DATA_VIEW", + "HEAP8", + "HEAPU8", + "HEAP16", + "HEAPU16", + "HEAP32", + "HEAPU32", + "HEAP64", + "HEAPU64", ]; pub fn run_wasm(args: &BuildWasm) -> Result<()> { @@ -158,6 +169,7 @@ pub fn run_wasm(args: &BuildWasm) -> Result<()> { "-s", "INITIAL_MEMORY=33554432", "-s", "ALLOW_MEMORY_GROWTH=1", "-s", "SUPPORT_BIG_ENDIAN=1", + "-s", "WASM_BIGINT=1", "-s", "MAIN_MODULE=2", "-s", "FILESYSTEM=0", "-s", "NODEJS_CATCH_EXIT=0", @@ -165,6 +177,7 @@ pub fn run_wasm(args: &BuildWasm) -> Result<()> { "-s", &exported_functions, "-s", &exported_runtime_methods, "-D", "fprintf(...)=", + "-D", "printf(...)=", "-D", "NDEBUG=", "-D", "_POSIX_C_SOURCE=200112L", "-D", "_DEFAULT_SOURCE=",