From 5a2d9fc3d0d05e9ef820031e0598a4ebc4104ea4 Mon Sep 17 00:00:00 2001 From: Andrea Peruffo Date: Mon, 9 Sep 2024 16:45:44 +0100 Subject: [PATCH] [chore] Add a simple sum function to the corpus --- .../com/dylibso/chicory/runtime/ModuleTest.java | 8 ++++++++ .../src/main/resources/compiled/add.wat.wasm | Bin 0 -> 41 bytes wasm-corpus/src/main/resources/wat/add.wat | 6 ++++++ 3 files changed, 14 insertions(+) create mode 100644 wasm-corpus/src/main/resources/compiled/add.wat.wasm create mode 100644 wasm-corpus/src/main/resources/wat/add.wat diff --git a/runtime/src/test/java/com/dylibso/chicory/runtime/ModuleTest.java b/runtime/src/test/java/com/dylibso/chicory/runtime/ModuleTest.java index a52ae8e36..267d9d8ac 100644 --- a/runtime/src/test/java/com/dylibso/chicory/runtime/ModuleTest.java +++ b/runtime/src/test/java/com/dylibso/chicory/runtime/ModuleTest.java @@ -32,6 +32,14 @@ public void shouldWorkFactorial() { assertEquals(120, result.asInt()); } + @Test + public void shouldRunABasicAdd() { + var instance = Instance.builder(loadModule("compiled/add.wat.wasm")).build(); + var add = instance.export("add"); + var result = add.apply(Value.i32(5), Value.i32(6))[0]; + assertEquals(11, result.asInt()); + } + @Test public void shouldSupportBrTable() { var instance = Instance.builder(loadModule("compiled/br_table.wat.wasm")).build(); diff --git a/wasm-corpus/src/main/resources/compiled/add.wat.wasm b/wasm-corpus/src/main/resources/compiled/add.wat.wasm new file mode 100644 index 0000000000000000000000000000000000000000..357f72da7a0db8add83699082fd51d46bf3352fb GIT binary patch literal 41 wcmZQbEY4+QU|?WmXG~zKuV<`hW@2PuXJ=$iOi5v2;NoOtXHZ~JV9eqM0DJxgJ^%m! literal 0 HcmV?d00001 diff --git a/wasm-corpus/src/main/resources/wat/add.wat b/wasm-corpus/src/main/resources/wat/add.wat new file mode 100644 index 000000000..dd1556993 --- /dev/null +++ b/wasm-corpus/src/main/resources/wat/add.wat @@ -0,0 +1,6 @@ +(module + ;; add(a, b) returns a+b + (func $add (export "add") (param $a i32) (param $b i32) (result i32) + (i32.add (local.get $a) (local.get $b)) + ) +)