diff options
author | Jay Phelps <hello@jayphelps.com> | 2018-09-01 10:58:11 -0400 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2018-09-01 07:58:11 -0700 |
commit | 9750c18faba7be48f9e086fd2d00838ca4ae9d0f (patch) | |
tree | 2610f3c7fb2613804ba649083cd838703a569150 /test/binaryen.js | |
parent | 480acf06144a056ee3569823e7cb65fea42cf808 (diff) | |
download | binaryen-9750c18faba7be48f9e086fd2d00838ca4ae9d0f.tar.gz binaryen-9750c18faba7be48f9e086fd2d00838ca4ae9d0f.tar.bz2 binaryen-9750c18faba7be48f9e086fd2d00838ca4ae9d0f.zip |
BinaryenSetFunctionTable now accepts array of func names not funcs. (#1650)
This allows using imports in the table.
Fixes #1645
Diffstat (limited to 'test/binaryen.js')
-rw-r--r-- | test/binaryen.js/emit_asmjs.js.txt | 3 | ||||
-rw-r--r-- | test/binaryen.js/kitchen-sink.js | 2 | ||||
-rw-r--r-- | test/binaryen.js/kitchen-sink.js.txt | 17 |
3 files changed, 18 insertions, 4 deletions
diff --git a/test/binaryen.js/emit_asmjs.js.txt b/test/binaryen.js/emit_asmjs.js.txt index b4fff8fe0..0bff3896c 100644 --- a/test/binaryen.js/emit_asmjs.js.txt +++ b/test/binaryen.js/emit_asmjs.js.txt @@ -31,3 +31,6 @@ function asmFunc(global, env, buffer) { }; } +const memasmFunc = new ArrayBuffer(65536); +const retasmFunc = asmFunc({Math,Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,NaN,Infinity}, {abort:function() { throw new Error('abort'); }},memasmFunc); + diff --git a/test/binaryen.js/kitchen-sink.js b/test/binaryen.js/kitchen-sink.js index c5f1f059a..1e1d29033 100644 --- a/test/binaryen.js/kitchen-sink.js +++ b/test/binaryen.js/kitchen-sink.js @@ -250,7 +250,7 @@ function test_core() { // Function table. One per module - module.setFunctionTable([ sinker ]); + module.setFunctionTable([ Binaryen.getFunctionInfo(sinker).name ]); // Memory. One per module diff --git a/test/binaryen.js/kitchen-sink.js.txt b/test/binaryen.js/kitchen-sink.js.txt index 5eed6c26f..5edad3d88 100644 --- a/test/binaryen.js/kitchen-sink.js.txt +++ b/test/binaryen.js/kitchen-sink.js.txt @@ -1456,9 +1456,20 @@ getExpressionInfo(f64.const)={"id":15,"type":4,"value":9.5} } imports[0] = BinaryenAddFunctionImport(the_module, "an-imported", "module", "base", functionTypes[1]); exports[0] = BinaryenAddFunctionExport(the_module, "kitchen()sinker", "kitchen_sinker"); - { - BinaryenFunctionRef funcs[] = { functions[0] }; - BinaryenSetFunctionTable(the_module, funcs, 1); + BinaryenFunctionGetName(functions[0]); + BinaryenFunctionGetType(functions[0]); + BinaryenFunctionGetNumParams(functions[0]); + BinaryenFunctionGetParam(functions[0], 0); + BinaryenFunctionGetParam(functions[0], 1); + BinaryenFunctionGetParam(functions[0], 2); + BinaryenFunctionGetParam(functions[0], 3); + BinaryenFunctionGetResult(functions[0]); + BinaryenFunctionGetNumVars(functions[0]); + BinaryenFunctionGetVar(functions[0], 0); + BinaryenFunctionGetBody(functions[0]); + { + const char* funcNames[] = { "kitchen()sinker" }; + BinaryenSetFunctionTable(the_module, funcNames, 1); } expressions[256] = BinaryenConst(the_module, BinaryenLiteralInt32(10)); { |