diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/binaryen.js/test.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/test/binaryen.js/test.js b/test/binaryen.js/test.js new file mode 100644 index 000000000..c090d94b2 --- /dev/null +++ b/test/binaryen.js/test.js @@ -0,0 +1,27 @@ + +var input = + '(module\n' + + ' (export "add" $add)\n' + + ' (func $add (param $x f64) (param $y f64) (result f64)\n' + + ' (f64.add\n' + + ' (get_local $x)\n' + + ' (get_local $y)\n' + + ' )\n' + + ' )\n' + + ')\n'; + +var module = new Binaryen.AllocatingModule(); +var parser = new Binaryen.SExpressionParser(input); +var builder = new Binaryen.SExpressionWasmBuilder(module, parser.get_root(), false); + +var interface_ = new Binaryen.ShellExternalInterface(); +var instance = new Binaryen.ModuleInstance(module, interface_); + +var name = Binaryen.Name('add'); + +var args = new Binaryen.LiteralList(); +args.push_back(new Binaryen.Literal(40)); +args.push_back(new Binaryen.Literal(2)); + +console.log('answer is ' + instance.callExport(name, args).getf64() + '.'); + |