alexcrichton opened PR #13533 from alexcrichton:async-nostd to bytecodealliance:main:
This commit goes through the remaining bits of Wasmtime's
component-model-asyncfeature and gets everything compiling with
no_stdtargets. The notable changes here are:
Two
Mutexes were replaced with a new customTryMutextype. Usage
panics on contention because contention should not be possible in the
current architecture.TLS has been extended in the
customAPI to take an index of which
TLS slot to access. Notably Wasmtime now requires two TLS slots
instead of one.Note: this is currently rebased on https://github.com/bytecodealliance/wasmtime/pull/13532
alexcrichton requested pchickey for a review on PR #13533.
alexcrichton requested wasmtime-wasi-reviewers for a review on PR #13533.
alexcrichton requested wasmtime-core-reviewers for a review on PR #13533.
alexcrichton requested fitzgen for a review on PR #13533.
alexcrichton requested wasmtime-default-reviewers for a review on PR #13533.
github-actions[bot] added the label wasi on PR #13533.
github-actions[bot] added the label wasmtime:api on PR #13533.
alexcrichton updated PR #13533.
alexcrichton updated PR #13533.
alexcrichton updated PR #13533.
alexcrichton edited PR #13533:
This commit goes through the remaining bits of Wasmtime's
component-model-asyncfeature and gets everything compiling with
no_stdtargets. The notable changes here are:
Two
Mutexes were replaced with a new customTryMutextype. Usage
panics on contention because contention should not be possible in the
current architecture.TLS has been extended in the
customAPI to take an index of which
TLS slot to access. Notably Wasmtime now requires two TLS slots
instead of one.~~Note: this is currently rebased on https://github.com/bytecodealliance/wasmtime/pull/13532~~
:thumbs_up: fitzgen submitted PR review.
:speech_balloon: fitzgen created PR review comment:
Maybe this should return a
Result<TryMutexGuard>andbail_bug!on contention?
alexcrichton updated PR #13533.
:memo: alexcrichton submitted PR review.
:speech_balloon: alexcrichton created PR review comment:
I liked this idea, then realized I should also be adding at least a simple smoke test for this type, then realized that
bail_bug!would make this more difficult to test. Given that I think this'll stay as-is as I think it might still be a useful primitive elsewhere for "just make this thingSyncand/or `"just make this thing mutable" in cases where contention may or may not be fatal.
alexcrichton has enabled auto merge for PR #13533.
alexcrichton added PR #13533 Make component-model-async feature no_std-compatible to the merge queue.
:check: alexcrichton merged PR #13533.
alexcrichton removed PR #13533 Make component-model-async feature no_std-compatible from the merge queue.
Last updated: Jul 29 2026 at 05:03 UTC