diff --git a/embed/build.sh b/embed/build.sh index f461b26..6e15d2b 100755 --- a/embed/build.sh +++ b/embed/build.sh @@ -11,9 +11,10 @@ WASI_SDK="$ROOT/tools/wasi-sdk-20.0/bin" -o sqlite3.wasm "$ROOT/sqlite3/main.c" \ -I"$ROOT/sqlite3" \ -mexec-model=reactor \ - -mmutable-globals \ + -msimd128 -mmutable-globals \ -mbulk-memory -mreference-types \ -mnontrapping-fptoint -msign-ext \ + -fno-stack-protector -fno-stack-clash-protection \ -Wl,--initial-memory=327680 \ -Wl,--stack-first \ -Wl,--import-undefined \ @@ -21,7 +22,8 @@ WASI_SDK="$ROOT/tools/wasi-sdk-20.0/bin" trap 'rm -f sqlite3.tmp' EXIT "$BINARYEN/wasm-ctor-eval" -g -c _initialize sqlite3.wasm -o sqlite3.tmp -"$BINARYEN/wasm-opt" -g -O2 sqlite3.tmp -o sqlite3.wasm \ - --enable-multivalue --enable-mutable-globals \ +"$BINARYEN/wasm-opt" -g --strip -c -O3 \ + sqlite3.tmp -o sqlite3.wasm \ + --enable-simd --enable-mutable-globals --enable-multivalue \ --enable-bulk-memory --enable-reference-types \ --enable-nontrapping-float-to-int --enable-sign-ext \ No newline at end of file diff --git a/embed/sqlite3.wasm b/embed/sqlite3.wasm index be6574a..f37c9f6 100755 Binary files a/embed/sqlite3.wasm and b/embed/sqlite3.wasm differ diff --git a/module.go b/module.go index 68d3e14..e279601 100644 --- a/module.go +++ b/module.go @@ -23,7 +23,6 @@ import ( var ( Binary []byte // WASM binary to load. Path string // Path to load the binary from. - Debug bool // Whether to enable SQLite debug stack traces. ) var sqlite3 struct { @@ -52,7 +51,7 @@ func instantiateModule() (*module, error) { func compileModule() { ctx := context.Background() - sqlite3.runtime = wazero.NewRuntimeWithConfig(ctx, wazero.NewRuntimeConfig().WithDebugInfoEnabled(Debug)) + sqlite3.runtime = wazero.NewRuntime(ctx) env := vfs.ExportHostFunctions(sqlite3.runtime.NewHostModuleBuilder("env")) _, sqlite3.err = env.Instantiate(ctx) diff --git a/vfs/tests/mptest/mptest_test.go b/vfs/tests/mptest/mptest_test.go index 769e021..fb538a8 100644 --- a/vfs/tests/mptest/mptest_test.go +++ b/vfs/tests/mptest/mptest_test.go @@ -37,7 +37,7 @@ var ( func TestMain(m *testing.M) { ctx := context.Background() - rt = wazero.NewRuntimeWithConfig(ctx, wazero.NewRuntimeConfig().WithDebugInfoEnabled(false)) + rt = wazero.NewRuntime(ctx) wasi_snapshot_preview1.MustInstantiate(ctx, rt) env := vfs.ExportHostFunctions(rt.NewHostModuleBuilder("env")) diff --git a/vfs/tests/mptest/testdata/build.sh b/vfs/tests/mptest/testdata/build.sh index 6566f43..19e1d55 100755 --- a/vfs/tests/mptest/testdata/build.sh +++ b/vfs/tests/mptest/testdata/build.sh @@ -10,9 +10,10 @@ WASI_SDK="$ROOT/tools/wasi-sdk-20.0/bin" "$WASI_SDK/clang" --target=wasm32-wasi -flto -g0 -O2 \ -o mptest.wasm main.c \ -I"$ROOT/sqlite3" \ - -mmutable-globals \ + -msimd128 -mmutable-globals \ -mbulk-memory -mreference-types \ -mnontrapping-fptoint -msign-ext \ + -fno-stack-protector -fno-stack-clash-protection \ -Wl,--stack-first \ -Wl,--import-undefined \ -DSQLITE_DEFAULT_SYNCHRONOUS=0 \ @@ -21,8 +22,9 @@ WASI_SDK="$ROOT/tools/wasi-sdk-20.0/bin" -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \ -D_WASI_EMULATED_GETPID -lwasi-emulated-getpid -"$BINARYEN/wasm-opt" -g -O2 mptest.wasm -o mptest.tmp \ - --enable-multivalue --enable-mutable-globals \ +"$BINARYEN/wasm-opt" -g --strip -c -O3 \ + mptest.wasm -o mptest.tmp \ + --enable-simd --enable-mutable-globals --enable-multivalue \ --enable-bulk-memory --enable-reference-types \ --enable-nontrapping-float-to-int --enable-sign-ext mv mptest.tmp mptest.wasm \ No newline at end of file diff --git a/vfs/tests/mptest/testdata/mptest.wasm b/vfs/tests/mptest/testdata/mptest.wasm index 661e7ba..06f9ed5 100644 --- a/vfs/tests/mptest/testdata/mptest.wasm +++ b/vfs/tests/mptest/testdata/mptest.wasm @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53bb204be0ddd312c23976e7b627ad62fb384d220557f4e3f723d89273d78a01 -size 1477009 +oid sha256:26d10a9ba084caf25512803607466bb7224515f616af9e1eb3bf5d234898597e +size 1417255 diff --git a/vfs/tests/speedtest1/speedtest1_test.go b/vfs/tests/speedtest1/speedtest1_test.go index 396c8a4..6c12348 100644 --- a/vfs/tests/speedtest1/speedtest1_test.go +++ b/vfs/tests/speedtest1/speedtest1_test.go @@ -36,7 +36,7 @@ func TestMain(m *testing.M) { initFlags() ctx := context.Background() - rt = wazero.NewRuntimeWithConfig(ctx, wazero.NewRuntimeConfig().WithDebugInfoEnabled(false)) + rt = wazero.NewRuntime(ctx) wasi_snapshot_preview1.MustInstantiate(ctx, rt) env := vfs.ExportHostFunctions(rt.NewHostModuleBuilder("env")) _, err := env.Instantiate(ctx) diff --git a/vfs/tests/speedtest1/testdata/build.sh b/vfs/tests/speedtest1/testdata/build.sh index 5a25e1b..60e06e5 100755 --- a/vfs/tests/speedtest1/testdata/build.sh +++ b/vfs/tests/speedtest1/testdata/build.sh @@ -10,14 +10,16 @@ WASI_SDK="$ROOT/tools/wasi-sdk-20.0/bin" "$WASI_SDK/clang" --target=wasm32-wasi -flto -g0 -O2 \ -o speedtest1.wasm main.c \ -I"$ROOT/sqlite3" \ - -mmutable-globals \ + -msimd128 -mmutable-globals \ -mbulk-memory -mreference-types \ -mnontrapping-fptoint -msign-ext \ + -fno-stack-protector -fno-stack-clash-protection \ -Wl,--stack-first \ -Wl,--import-undefined -"$BINARYEN/wasm-opt" -g -O2 speedtest1.wasm -o speedtest1.tmp \ - --enable-multivalue --enable-mutable-globals \ +"$BINARYEN/wasm-opt" -g --strip -c -O3 \ + speedtest1.wasm -o speedtest1.tmp \ + --enable-simd --enable-mutable-globals --enable-multivalue \ --enable-bulk-memory --enable-reference-types \ --enable-nontrapping-float-to-int --enable-sign-ext mv speedtest1.tmp speedtest1.wasm \ No newline at end of file diff --git a/vfs/tests/speedtest1/testdata/speedtest1.wasm b/vfs/tests/speedtest1/testdata/speedtest1.wasm index 18a1196..0eca77f 100644 --- a/vfs/tests/speedtest1/testdata/speedtest1.wasm +++ b/vfs/tests/speedtest1/testdata/speedtest1.wasm @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:23ac5877bc34cf5ff06ed2cf1c5ac148e5d364d6d01c85bd0f99d14f0a681830 -size 1513516 +oid sha256:e7b58aeeecd691b546c1da531bfea0a67bb33e1c835f06a94d3bd8723ab275d2 +size 1457505