This completes the implementation of arm64 backend for SIMD instructions. Notably, now the arm64 compiler passes 100% of WebAssemby 2.0 draft specification tests. Combined with the completion of the interpreter and amd64 backend (#624), this finally resolves #484. Therefore, this also documents that wazero is 100% compatible with WebAssembly 1.0 and 2.0. Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io>
34 lines
821 B
Go
34 lines
821 B
Go
package spectest
|
|
|
|
import (
|
|
"embed"
|
|
"testing"
|
|
|
|
"github.com/tetratelabs/wazero/internal/engine/compiler"
|
|
"github.com/tetratelabs/wazero/internal/engine/interpreter"
|
|
"github.com/tetratelabs/wazero/internal/integration_test/spectest"
|
|
"github.com/tetratelabs/wazero/internal/platform"
|
|
"github.com/tetratelabs/wazero/internal/wasm"
|
|
)
|
|
|
|
//go:embed testdata/*.wasm
|
|
//go:embed testdata/*.json
|
|
var testcases embed.FS
|
|
|
|
const enabledFeatures = wasm.Features20191205
|
|
|
|
func TestCompiler(t *testing.T) {
|
|
if !platform.CompilerSupported() {
|
|
t.Skip()
|
|
}
|
|
spectest.Run(t, testcases, compiler.NewEngine, enabledFeatures)
|
|
}
|
|
|
|
func TestInterpreter(t *testing.T) {
|
|
spectest.Run(t, testcases, interpreter.NewEngine, enabledFeatures)
|
|
}
|
|
|
|
func TestBinaryEncoder(t *testing.T) {
|
|
spectest.TestBinaryEncoder(t, testcases, enabledFeatures)
|
|
}
|