summaryrefslogtreecommitdiff
path: root/inter/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'inter/main.go')
-rw-r--r--inter/main.go16
1 files changed, 15 insertions, 1 deletions
diff --git a/inter/main.go b/inter/main.go
index e0dd0a7..ee0d463 100644
--- a/inter/main.go
+++ b/inter/main.go
@@ -3,6 +3,7 @@ package main
import (
"context"
"fmt"
+ "log"
"os"
"github.com/tetratelabs/wazero"
@@ -17,6 +18,15 @@ func main() {
var runtime = wazero.NewRuntime(ctx)
defer runtime.Close(ctx)
+ var _, hostErr = runtime.NewHostModuleBuilder("env").
+ NewFunctionBuilder().
+ WithFunc(xdx).
+ Export("xdx").
+ Instantiate(ctx);
+ if hostErr != nil {
+ panic(fmt.Sprintf("Failed to create host module: %s", hostErr.Error()))
+ }
+
wasi_snapshot_preview1.MustInstantiate(ctx, runtime)
var wasm, wasmErr = LoadWasm()
@@ -30,7 +40,7 @@ func main() {
}
var add = mod.ExportedFunction("Add")
- var result, callErr = add.Call(ctx, 25, 25)
+ var result, callErr = add.Call(ctx, 9, 10)
if callErr != nil {
panic(fmt.Sprintf("Failed to call WASM finction: %s", callErr.Error()))
}
@@ -40,3 +50,7 @@ func main() {
func LoadWasm() ([]byte, error) {
return os.ReadFile(wasmLocation)
}
+
+func xdx() {
+ log.Printf("xdx (called from WASM)")
+}