Multi-Memory Only Wasm-Split
This PR removes the "global" and "in-memory" options from the wasm-split tool's instrumenter, leaving secondary memory as the only option for profile-data collection. After the instrumenter creates and uses the secondary memory, the multi-memory lowering pass will be run to lower the memories into a single combined memory.
8 tests are failing because updated imports/exports are missing. The changes in https://github.com/WebAssembly/binaryen/pull/5363 need to be submitted first.
One emscripten wasm-split test is failing, other.test_split_main_module:
failed to asynchronously prepare wasm: LinkError: WebAssembly.instantiate(): memory import 14 is smaller than initial 257, got 256
Codecov Report
Merging #5362 (00b77e8) into main (c37bda1) will decrease coverage by
0.04%. The diff coverage is98.30%.
@@ Coverage Diff @@
## main #5362 +/- ##
==========================================
- Coverage 42.46% 42.43% -0.04%
==========================================
Files 482 481 -1
Lines 74727 74663 -64
Branches 11929 11925 -4
==========================================
- Hits 31735 31685 -50
+ Misses 39786 39774 -12
+ Partials 3206 3204 -2
| Files Changed | Coverage Δ | |
|---|---|---|
| src/tools/wasm-split/split-options.cpp | 80.71% <ø> (-1.48%) |
:arrow_down: |
| src/tools/wasm-split/instrumenter.cpp | 98.82% <98.24%> (+3.26%) |
:arrow_up: |
| src/tools/wasm-split/wasm-split.cpp | 77.57% <100.00%> (-0.59%) |
:arrow_down: |