esoterra / component-opt Goto Github PK
View Code? Open in Web Editor NEWA Wasm component optimizer (mostly a wrapper around wasm-opt)
License: Apache License 2.0
A Wasm component optimizer (mostly a wrapper around wasm-opt)
License: Apache License 2.0
Sometimes we can tell that a given Canonical Option doesn't affect the behavior of the component and can be removed.
The most obvious case is that neither a memory
nor realloc
option is needed if
MAX_FLAT_PARAMS
,MAX_FLAT_RESULTS
,list<T>
, string
).A more subtle case that may be too niche but could be considered is detecting that the post-return
function has no side effects (likely due to other optimizations) and can be removed.
Any item in a section which introduces an unused index can be removed.
e.g. aliases, types
For any module which is not exported by the containing component, nothing can observe its imports and exports but that component.
So if an export of that module is not aliased in any instance of the module, that export can be removed from the module potentially enabling further module-level optimizations.
It's possible combine together modules whose instances have export-alias-import relationships.
Benefits:
Considerations:
If there are multiple items that are redundant, the redundant copies can be removed.
e.g. two definitions of the same function type
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.