This repository was archived by the owner on Sep 8, 2025. It is now read-only.
Commit e4b5756
committed
update
This updates `wasmtime-environ`, `wasmtime-cranelift`, and `wasmtime` to to use
(some of) the new ABI defined in
WebAssembly/component-model#524. It covers everything
in that PR _except_ the lifting and lowering changes to `future.{read,write}`,
which we decided are more trouble than they're worth.
Still to do: add tests for the following items (Luke has volunteered to do this):
> * When a `future` is "done" (by a `COMPLETED` read/write or by the writable end receiving `DROPPED`), the only valid operation is `future.drop-{readable,writable}`. `future.{read,write}` or lifting traps.
> * Because there's no great reason for streams to be more permissive than futures in this regard, streams are also given a "done" state with the same trapping rules as futures, but the stream "done" state is only set when `DROPPED` is received.
Signed-off-by: Joel Dice <joel.dice@fermyon.com>future/stream ABIs and names1 parent 40aceb3 commit e4b5756
25 files changed
Lines changed: 437 additions & 536 deletions
File tree
- crates
- cranelift/src/compiler
- environ/src
- component
- translate
- test-programs/src
- bin
- wasmtime/src/runtime
- component
- concurrent
- futures_and_streams
- vm/component
- tests/misc_testsuite/component-model-async
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments