This repository has been archived by the owner on Jan 24, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
401 changed files
with
33,177 additions
and
10,669 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,3 @@ | ||
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners | ||
|
||
/internal/asm/ @mathetake | ||
/internal/engine/compiler/ @mathetake | ||
|
||
* @codefromthecrypt @mathetake | ||
* @codefromthecrypt @mathetake @evacchi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
package experimental | ||
|
||
// Snapshot holds the execution state at the time of a Snapshotter.Snapshot call. | ||
type Snapshot interface { | ||
// Restore sets the Wasm execution state to the capture. Because a host function | ||
// calling this is resetting the pointer to the executation stack, the host function | ||
// will not be able to return values in the normal way. ret is a slice of values the | ||
// host function intends to return from the restored function. | ||
Restore(ret []uint64) | ||
} | ||
|
||
// Snapshotter allows host functions to snapshot the WebAssembly execution environment. | ||
// Currently, only the Wasm stack is captured, but in the future, this may be expanded | ||
// to things like globals. | ||
type Snapshotter interface { | ||
// Snapshot captures the current execution state. | ||
Snapshot() Snapshot | ||
} | ||
|
||
// EnableSnapshotterKey is a context key to indicate that snapshotting should be enabled. | ||
// The context.Context passed to a exported function invocation should have this key set | ||
// to a non-nil value, and host functions will be able to retrieve it using SnapshotterKey. | ||
type EnableSnapshotterKey struct{} | ||
|
||
// SnapshotterKey is a context key to access a Snapshotter from a host function. | ||
// It is only present if EnableSnapshotter was set in the function invocation context. | ||
type SnapshotterKey struct{} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
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. | ||
const CoreFeaturesThreads = api.CoreFeatureSIMD << 1 // TODO: Implement the compiler engine |
Oops, something went wrong.