binaryen icon indicating copy to clipboard operation
binaryen copied to clipboard

Optimizer and compiler/toolchain library for WebAssembly

Results 496 binaryen issues
Sort by recently updated
recently updated
newest added

In attempting to use `wasm-reduce` to identify test cases for a WASM file that GraalWasm is unable to parse, the reducer is unable to proceed because the error disappears after...

As noted in https://github.com/emscripten-core/emscripten/issues/15768#issuecomment-1183705109, an emscripten-compiled WASM file fails with `-O1` or above. Reducing the `emcc-10-postclean.wasm` using `wasm-reduce` yields the following WASM ([r.zip](https://github.com/WebAssembly/binaryen/files/9115203/r.zip)): ``` $ wasm-dis r.wasm (module (type $i32_i32_=>_none...

Issue #4739 Hi @kripken I've made some changes as per the suggestions. I searched for nan in the entire codebase and found alot of instances of the same code. I've...

This begins to add dead store elimination to the optimizer. It provides the basic infrastructure, and implements simple and local DSE on top. All that can do so far is...

The sample example `input.wat` from [@kripken 's blog](https://kripken.github.io/blog/wasm/2019/07/16/asyncify.html) fails to compile for me, so maybe I'm using the wrong tool: ``` $ wat2wasm input.wat > input.wasm input.wat:3:4: error: imports must...

When working on getting this emscripten test to pass (` ./tests/runner wasm64l.test_stack_placement_pic`) I ran into this binaryen crash. ``` $ gdb --args wasm-opt --strip-dwarf --memory64-lowering --strip-debug --strip-producers test_stack_placement.wasm -o test_stack_placement.wasm...

https://github.com/WebAssembly/binaryen/pull/4758 updated a bunch of GC-specific optimization passes to exit early if run on modules without GC enabled, but in the long run it might make more sense to add...

It looks like we have `getLeastUpperBound` which computes a union over types (or more specifically, the smallest union: it finds the type which can contain all the values of two...

I have written a Binaryen pass that emits `unreachable`s into the wasm tree. That produces something like this: ```wast (func $17 (param $0 i32) (param $1 i32) (block $label$1 (br_if...

The page https://github.com/WebAssembly/binaryen/wiki/Compiling-to-WebAssembly-with-Binaryen says: > If, instead, you have a more "flat" representation of simple instructions in lists in basic blocks, then you can pass that in as well, just...