threads: add feature flag for threads (#1932)

Signed-off-by: Anuraag Agrawal <anuraaga@gmail.com>
This commit is contained in:
Anuraag Agrawal
2024-01-22 14:12:18 +09:00
committed by GitHub
parent 38fee45418
commit 4fe86b283d
17 changed files with 258 additions and 22 deletions

17
experimental/features.go Normal file
View File

@@ -0,0 +1,17 @@
package experimental
import "github.com/tetratelabs/wazero/api"
// CoreFeaturesThreads enables threads instructions ("threads").
//
// # Notes
//
// - This is not yet implemented by default, so you will need to use
// wazero.NewRuntimeConfigInterpreter
// - The instruction list is too long to enumerate in godoc.
// See https://github.com/WebAssembly/threads/blob/main/proposals/threads/Overview.md
// - Atomic operations are guest-only until api.Memory or otherwise expose them to host functions.
// - On systems without mmap available, the memory will pre-allocate to the maximum size. Many
// binaries will use a theroetical maximum like 4GB, so if using such a binary on a system
// without mmap, consider editing the binary to reduce the max size setting of memory.
const CoreFeaturesThreads = api.CoreFeatureSIMD << 1