diff options
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()); |