tinygo/tests/wasm
Nia Waldvogel 641dcd7c16 internal/task: use asyncify on webassembly
This change implements a new "scheduler" for WebAssembly using binaryen's asyncify transform.
This is more reliable than the current "coroutines" transform, and works with non-Go code in the call stack.

runtime (js/wasm): handle scheduler nesting

If WASM calls into JS which calls back into WASM, it is possible for the scheduler to nest.
The event from the callback must be handled immediately, so the task cannot simply be deferred to the outer scheduler.
This creates a minimal scheduler loop which is used to handle such nesting.
2021-11-14 10:49:28 +01:00
..
testdata added test for wasm log output 2020-05-27 08:43:29 +02:00
chan_test.go internal/task: use asyncify on webassembly 2021-11-14 10:49:28 +01:00
event_test.go all: use new testing features of Go 1.14 and 1.15 2021-08-16 21:19:26 +02:00
fmt_test.go all: use new testing features of Go 1.14 and 1.15 2021-08-16 21:19:26 +02:00
fmtprint_test.go all: use new testing features of Go 1.14 and 1.15 2021-08-16 21:19:26 +02:00
log_test.go all: use new testing features of Go 1.14 and 1.15 2021-08-16 21:19:26 +02:00
setup_test.go all: use new testing features of Go 1.14 and 1.15 2021-08-16 21:19:26 +02:00