-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Open
Labels
craneliftIssues related to the Cranelift code generatorIssues related to the Cranelift code generatorcranelift:wasmperformancewasmtimeIssues about wasmtime that don't fall into another labelIssues about wasmtime that don't fall into another label
Description
Ideas from a brainstorming session with some Cranelift folks:
- Typed funcrefs can statically remove null checks and sig checks; but how do we use?
- In
cranelift-wasm, need to feed type info from validator to say “non-null”
- In
- Catch calls to null via signal rather than explicit check
- Inline
VMFuncRefs into table, instead of having table be a vec of pointers toVMFuncRefs - Store defined tables directly in the vmctx, rather than indirectly
- Only works for max size tables
- Helps with allocating multiple tables inside pooling allocator
- If min and max are equal then table size is constant, don’t load table size from memory, just use the constant
- If table index is constant and less than minimum, skip bounds check
And, of course, it would be nice to have some (micro) benchmarks to measure all of this.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
craneliftIssues related to the Cranelift code generatorIssues related to the Cranelift code generatorcranelift:wasmperformancewasmtimeIssues about wasmtime that don't fall into another labelIssues about wasmtime that don't fall into another label