binaryen
binaryen copied to clipboard
Optimizer and compiler/toolchain library for WebAssembly
Trying to debug some code today with `-sWASM=0 -pthread -sSAFE_HEAP`, and I get ``` Assertion failed: (!curr->isAtomic && "64-bit atomic load not implemented"), function visitLoad, file /Users/clb/emsdk/binaryen/main/src/passes/I64ToI32Lowering.cpp, line 375. ```...
Instead of reimplementing type printing in Print.cpp, use the new type printing API provided by wasm-type.h. Also change from generating complicated type names that try to convey type structure but...
This is the list of things that need to be done to finish evaluating the performance of the new type system compared to nominal types. - [ ] Implement the...
I was reading @kripken slides and blog post about asyncify and I gave a shot on trying to implement a minimal coroutine system in pure C for WASM using it,...
It's continue of #4272 ```rust (signed)x < s_min + 1 ==> x == s_min (signed)x >= s_min + 1 ==> x != s_min (signed)x > s_max - 1 ==> x...
@kripken suggested creating a list of PRs [here](https://github.com/WebAssembly/binaryen/pull/4265#issuecomment-951283160), sorted in order of priority (the most important first): - #4272 - #4307 - #4282 - #4145 - #4291 - #4266 -...
The GlobalTypeOptimization pass will remove fields from GC types when they are never used. @askeksa-google noticed that this can break code where JS reads a struct from the outside -...
The changelog section for [104](https://github.com/WebAssembly/binaryen/blob/main/CHANGELOG.md?plain=1#L18) contains just one entry while the [list of commits](https://github.com/WebAssembly/binaryen/compare/version_103...version_104) is much longer. Would it be possible to list the high-level changes and mention the [fix](https://github.com/WebAssembly/binaryen/commit/b1f6298ed8756bdc3336429c04b92ba58d000b49)...
The fixed storage there is a `std::array` which constructs the items immediately. We could instead use a different approach that only calls the constructor when the size actually increases. This...
If I were to try working on a `wasm-opt` pass doing what's written in the title, would it be accepted? Gated behind the `bulk-memory` extension/feature of course. The rationale I...