diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-04-05 09:49:37 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2016-04-05 09:49:37 -0700 |
commit | 155223a2a0dd222817881dab85fa11166cc5bbb3 (patch) | |
tree | 7f10e15b941474c2b23c741e20ee2657c54026ca /test/binaryen.js | |
parent | b243bf42bf89bee18ece60fb0607cf1fb70ce702 (diff) | |
parent | ea448f35ada45647c200019cc34b4315cb16cdd9 (diff) | |
download | binaryen-155223a2a0dd222817881dab85fa11166cc5bbb3.tar.gz binaryen-155223a2a0dd222817881dab85fa11166cc5bbb3.tar.bz2 binaryen-155223a2a0dd222817881dab85fa11166cc5bbb3.zip |
Merge pull request #312 from WebAssembly/webidl
WebIDL bindings
Diffstat (limited to 'test/binaryen.js')
-rw-r--r-- | test/binaryen.js/test.js | 44 | ||||
-rw-r--r-- | test/binaryen.js/test.js.txt | 1 |
2 files changed, 45 insertions, 0 deletions
diff --git a/test/binaryen.js/test.js b/test/binaryen.js/test.js new file mode 100644 index 000000000..7c27223de --- /dev/null +++ b/test/binaryen.js/test.js @@ -0,0 +1,44 @@ + +Binaryen = Binaryen(); // instantiate the module + +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'; + +console.log('input:'); +console.log(input); +console.log('================'); + +var module = new Binaryen.AllocatingModule(); +var parser = new Binaryen.SExpressionParser(input); + +console.log('s-expr dump:'); +parser.get_root().dump(); +var s_module = parser.get_root().getChild(0); +console.log('================'); + +var builder = new Binaryen.SExpressionWasmBuilder(module, s_module); + +console.log('module:'); +Binaryen.WasmPrinter.prototype.printModule(module); +console.log('================'); + +var interface_ = new Binaryen.ShellExternalInterface(); +var instance = new Binaryen.ModuleInstance(module, interface_); + +var name = new Binaryen.Name('add'); +console.log('name: ' + name.c_str()); + +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() + '.'); + diff --git a/test/binaryen.js/test.js.txt b/test/binaryen.js/test.js.txt new file mode 100644 index 000000000..048c72b14 --- /dev/null +++ b/test/binaryen.js/test.js.txt @@ -0,0 +1 @@ +answer is 42. |