binaryen icon indicating copy to clipboard operation
binaryen copied to clipboard

Multi-Memory Only Wasm-Split

Open ashleynh opened this issue 3 years ago • 3 comments

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.

ashleynh avatar Dec 18 '22 03:12 ashleynh

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.

ashleynh avatar Dec 31 '22 07:12 ashleynh

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

ashleynh avatar Jan 02 '23 22:01 ashleynh

Codecov Report

Merging #5362 (00b77e8) into main (c37bda1) will decrease coverage by 0.04%. The diff coverage is 98.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:

... and 6 files with indirect coverage changes

codecov[bot] avatar Aug 16 '23 18:08 codecov[bot]