diff options
author | Daniel Wirtz <dcode@dcode.io> | 2017-11-21 21:43:12 +0100 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2017-11-21 12:43:12 -0800 |
commit | eedcc291164a46474116e0e54ede3133214a7621 (patch) | |
tree | 6350e315b74464f48c4f02c6c77a1338b630e144 /test/binaryen.js/functions.js | |
parent | 07c54750eb626ea7434341e439f6cee75efbf4b5 (diff) | |
download | binaryen-eedcc291164a46474116e0e54ede3133214a7621.tar.gz binaryen-eedcc291164a46474116e0e54ede3133214a7621.tar.bz2 binaryen-eedcc291164a46474116e0e54ede3133214a7621.zip |
Running passes on a single function in binaryen-c/.js (#1295)
* Also other function utilities in C and JS APIs
Diffstat (limited to 'test/binaryen.js/functions.js')
-rw-r--r-- | test/binaryen.js/functions.js | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/binaryen.js/functions.js b/test/binaryen.js/functions.js new file mode 100644 index 000000000..34142941c --- /dev/null +++ b/test/binaryen.js/functions.js @@ -0,0 +1,28 @@ +var module = new Binaryen.Module(); + +var signature = module.addFunctionType("i", Binaryen.i32, []); + +var func = module.addFunction("a-function", signature, [], + module.i32.add( + module.i32.const(1), + module.i32.const(2) + ) +); + +console.log("GetFunction is equal: " + (func === module.getFunction("a-function"))); + +module.runPassesOnFunction(func, ["precompute"]); + +var body = Binaryen.getFunctionBody(func); + +console.log("ExpressionId=" + Binaryen.getExpressionId(body)); +console.log("ExpressionType=" + Binaryen.getExpressionType(body)); +console.log(Binaryen.emitText(body)); + +module.removeFunction("a-function"); + +module.addGlobal("a-global", Binaryen.i32, false, body); + +module.validate(); + +console.log(module.emitText()); |